由于操作过于频繁,请点击下方按钮进行验证!

文末有礼 | AutoCAD 2021 for Mac 新功能介绍(中)

大家好啊,有没有去下载我们最新的包含了简体中文语言的 AutoCAD  2021 for Mac  来试用呢?没有的话,就赶快去我们的官网试试吧!

微信图片_20200421090536.png

长按识别或扫描二维码进入官网

今天我们要讲的功能主要是对那些从事 AutoCAD 二次开发的 AutoCAD 用户非常重要的部分。

在讲解新功能之前,我要先用一个以前用户问我的问题来引出今天的内容:

AutoCAD for Mac 为什么没有那么多的第三方插件可以用?

这个问题其实原因有几个:

  • 大部分用户只是知道怎么用插件,而不知道怎么去调试插件。当然,也有的插件是封装好的没法调试;

  • Mac 上没有特别好用的针对 LISP 的专门的 IDE 类工具,想调试比较困难;

  • AutoCAD for Mac 中,APPLOAD 命令支持的文件类型略少,比如 fas 文件格式;

  • LISP 中,支持的函数略少,缺失部分主要是 vlax 类型的,而这部分函数如果要用其他函数来重写,需要比较扎实的 LISP 知识,而大部分 AutoCAD 的使用者其实是不具备这样的能力;

  • 之前版本的 AutoCAD for Mac 中,针对 AutoLISP,无法调用*.dcl 文件来创建对话框,若要改成纯命令行模式的话也需要很强的编程能力;

那么,我们就来看一下 AutoCAD 2021 for Mac 中,着力解决了哪些问题吧。

二次开发 - AutoLISP 扩展应用

作为一个曾经的 AutoCAD 二次开发人员,老柴我对 AutoCAD 二次开发的印象还停留在一个上古时期的界面,名叫 Visual LISP IDE 的玩意:

微信图片_20200421090541.png

这个玩意真的好多年没有更新了,并且它是一个 AutoCAD Windows 独有的功能,Mac 上并没有这个组件。而且看着上面这个玩意,我只想说一句:你已经 OUT 了啊!

所以,在今年 AutoCAD Windows 和 Mac 就同时借助了 Visual Studio Code(以下简称 VSCODE)这款跨平台 IDE 来研发了针对 LISP 语言的扩展应用。

当然,由于老柴我的编程能力实在抓瞎,所以以下内容都是请了我们组的唐老师来讲解的。

在 VSCODE 中安装完我们的扩展应用后,利用 VSCODE 打开一个 LISP  文件,就能得到这样的页面: 不仅有高亮关键词来提高阅读舒适度,还有联想关键词来提升编辑效率。

微信图片_20200421090544.png

在编辑完 LISP 文件后,还支持调试。只需要启动 AutoCAD,然后在 VSCODE 菜单栏中选择运行>>启动调试,点选附着模式,选择正在运行的 AutoCAD 就可以开始调试了。

微信图片_20200421090547.png

1.png

调试过程中,可以通过增加断点、实时的变量值、当前调用堆栈等来帮助调试。还可以在调试中点击下方“加载 LISP”按钮来加载其他需要的 LISP 文件。

微信图片_20200421090550.png

接下来就可以在左边分别添加需要监视的函数对象,以及在程序中添加的断点了:

微信图片_20200421090602.png

随着程序的运行,可以看到程序的中指定函数的值是否随着你的预期进行变化了(可以对比上图):

微信图片_20200421090606.png

至于如何下载到这个扩展应用呢?非常简单,只需要在 VSCODE 的扩展中搜索 AutoLISP 就能找到了:

微信图片_20200421090609.png

DCL – 在 LISP 中绘制对话框

在讲完了 AutoLISP 扩展应用之后,我们来看看 AutoCAD 的二次开发中非常重要的一个环节,也就是对话框的部分。

众所周知,对一般用户来说,对话框对于新用户的友善程度要好很多,所以不少二次开发都喜欢把 LISP 外挂一个对话框来展示,甚至有 AutoCAD 的垂直产品整个都是。而这个外挂的对话框就是 DCL:

DCL= Dialog Control Language

对话框控制语

DCL 的表现形式是一个后缀名为.dcl 的文本文件,需要在 LISP 程序中调用:

微信图片_20200421090613.png

并且启动:

微信图片_20200421090616.png

而这个 DCL 文件的本体可以是这样的:

微信图片_20200421090620.png

当这个 DCL 文件置于 AutoCAD 2021 for Mac 的 Support Search Path,也就是【支持文件搜索路径】的时候:

微信图片_20200421090624.png

运行 LISP 程序就能显示对应的对话框:

微信图片_20200421090627.png

在 AutoCAD 2021 for Mac 中,几乎所有 DCL 中的控件(Tile)类型都支持了,我这里列个简单的列表,具体的大家可以查询。

1587431640474090271.png

长按识别或扫描二维码进行查询

button = 按钮

edit_box = 文本框

list_box = 列表框

popup_list = 下拉框

slider = 滑动条

radio = 单选项

toggle = 勾选框

text = 文本

image = 图片

image_button = 图片按钮

当然,如果只是支持大部分的控件(Tile)还是不够的,每个 Tile 下面都有不同的属性位,还是请大家查询上面具体的帮助文件来获得相关的信息。

如果各位对 DCL 有兴趣的,那我以后可以专门讲讲怎么用 DCL 来创建你需要的对话框和控件,以及怎样把 LISP 和 DCL 之间的数据联动起来。

应用程序首选项 – 受信任的位置

在之前有一篇关于 LISP 病毒防治的文章里面,我给大家提到过为了避免用户的 AutoCAD 被恶意 LISP 程序的自动加载拖垮,我们新加了一个【受信任的位置】,只有在这个位置下的程序,才不会在加载的时候弹出加载警告框。

而之前的 AutoCAD for Mac 虽然有相关的系统参数可以设置,但是缺少了用户界面的操作的话,操作起来还是非常麻烦的,所以在 AutoCAD 2021 for Mac 中,我们在用户界面中把它实现了出来,具体的不说了,放张截图跑路:

微信图片_20200421090636.png

现在让我们看看最早的那几个问题,我们究竟解决掉了几个呢?

  • 大部分用户只是知道怎么用插件,而不知道怎么去调试插件。当然,也有的插件是封装好的没法调试;

  • Mac 上没有特别好用的针对 LISP 的专门的 IDE 类工具,想调试比较困难;

  • AutoCAD for Mac 中,APPLOAD 命令支持的文件类型略少,比如 fas 文件格式;

  • LISP 中,支持的函数略少,缺失部分主要是 vlax 类型的,而这部分函数如果要用其他函数来重写,需要比较扎实的 LISP 知识,而大部分 AutoCAD 的使用者其实是不具备这样的能力;

  • 之前版本的 AutoCAD for Mac 中,针对 AutoLISP,无法调用*.dcl 文件来创建对话框,若要改成纯命令行模式的话也需要很强的编程能力;

这次的内容呢,主要是二次开发相关的,我们也非常希望 AutoCAD for Mac 也能像他的 Windows 大哥那样,能有更多的开发者开发出更多的组件和插件。如果您发现您的 Windows 插件在 Mac 上不能使用,那么欢迎您和我们联系,一起进行调研活动。

参加研讨会赢好礼

4月28日上午 10 点 AutoCAD 2021 新功能在线研讨会在火热报名中,由李剑、陈昱、柴立峰等欧特克金牌讲师团队和 AutoCAD 金牌用户刘凯老师共同为大家带来的  AutoCAD 2021 新功能介绍;现在报名参加会议并好友助力还可以获得礼品。

微信图片_20200421090643.jpg

活动介绍

活动规则

1、点击文内海报识别二维码或“阅读原文”报名参加 AutoCAD 2021 新功能线上研讨会,并公众号回复:“2021”参与活动获得专属海报。

2、分享您的专属海报至朋友圈、微信群、微信好友,邀一位好友助力即可获得 AutoCAD 定制踏春背包一个,奖品有限,先到先得。

活动时间

活动时间:4月15日-4月28日兑奖时间:4月29日-5月10日

活动奖品

AutoCAD 定制踏春背包


微信图片_20200421090650.png


限量 70

柴立峰(Leaf)老师Autodesk 资深软件测试工程师 在知乎 CAD 专栏拥有众多拥趸,曾从事多年 AutoCAD 教学工作,2005 年投入到AutoCAD 2007 测试工作。参与 AutoCAD for Mac 所有版本的研发工作。在欧特克授权培训中心(ATC)中负责教授 AutoCAD 的中级/高级课程。作为一个行走的表情包,二次元段子手和有颜的内涵帝,柴老师教学风格轻松幽默,言简意赅,颇受学员青睐。
点击“阅读原文”,报名 4月 28 日 AutoCAD 2021 线上发布会,跟着专家及金牌用户学新功能!

如果在看请点这里↓↓

阅读原文


声明:本网站所收集的部分公开资料来源于互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。本站部分作品是由网友自主投稿和发布、编辑整理上传,对此类作品本站仅提供交流平台,不为其版权负责。如果您发现网站上所用视频、图片、文字如涉及作品版权问题,请第一时间告知,我们将根据您提供的证明材料确认版权并按国家标准支付稿酬或立即删除内容,以保证您的权益!联系电话:010-58612588 或 Email:editor@mmsonline.com.cn。

网友评论 匿名:

分享到

相关主题