收藏 分销(赏)

基于CASS平台的快捷命令定制方法研究.pdf

上传人:自信****多点 文档编号:2557340 上传时间:2024-05-31 格式:PDF 页数:4 大小:1.06MB
下载 相关 举报
基于CASS平台的快捷命令定制方法研究.pdf_第1页
第1页 / 共4页
基于CASS平台的快捷命令定制方法研究.pdf_第2页
第2页 / 共4页
基于CASS平台的快捷命令定制方法研究.pdf_第3页
第3页 / 共4页
亲,该文档总共4页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第4 6卷第5期2 0 2 3年9月现 代 测 绘M o d e r nS u r v e y i n ga n dM a p p i n gV o l.4 6,S e p t.,2 0 2 3 第一作者简介:张泳,工程师,研究方向为测绘工程与地理信息数据处理。基于C A S S平台的快捷命令定制方法研究张 泳,于婷婷(江苏省地质测绘院,江苏 南京2 1 1 1 0 2)摘 要 C A S S是基于A u t o C A D开发的一款商用数字化绘图平台,仍然保留着与A u t o C A D相同的命令式绘图方式。在C A S S平台上,每一类要素都有一个6位数的C A S S码,用户在命令行执

2、行根绘图命令D D 后输入C A S S码即可绘制相应的要素。通过对C A S S平台绘图方式、A u t o C A D命令重定义机制及A u t o L I S P语言的深入研究,使用A u t o C A D提供的A R X.N E T二次开发接口,开发了新的快捷命令定制工具,能够对C A S S绘图代码或已有的命令进行重新封装,解决了C A S S码输入不便及记忆量较大的问题,对提升绘图效率具有明显效果。关键词 A u t o C A D;C A S S;快捷命令;A u t o L I S P中图分类号:T P 3 9 1.7 2 文献标志码:A 文章编号:1 6 7 2-4 0 9

3、 7(2 0 2 3)0 5-0 0 5 3-0 40 引 言C A S S地形地籍成图软件(简称C A S S)是由广东南方数码科技股份有限公司基于A u t o C A D开发的一款商用数字化绘图平台,广泛应用于测绘、国土、规划、市政、环保、地质、交通、水利、电力、矿山等行业。A u t o C A D是一种通过命令驱动的计算机辅助设计平台,C A S S继承了这个特点,绘制所有要素或 进 行 相 关 数 据 处 理 都 可 通 过 命 令 来 实 现。C A S S系统内部有一个要素代码表,保存于I N D E X.I N I文件,为每一类要素都分配了一个代码(习惯上称为C A S S码

4、),可以通过C A S S码的不同来区分各类要素1。为便于使用,C A S S定制了专用的绘图菜单,用户通过点击菜单中相应的按钮来完成图形绘制。但这一操作本质是调用了C A S S的根绘图命令D D,然后再自动输入的C A S S码来完成这一操作。用户如果能记住C A S S码的话,就可以在命令行中直接键入D D(注:在实际操作时,不需要输入 ,此符号只用于标识命令,下同),然后 再输 入C A S S码。通过点击工具面板上的绘图菜单绘图时,简单方便,但绘图效率较低。通过输入根绘图命令D D 来绘图时,C A S S码的记忆量较大,且输入6位C A S S码也比较耗时。为提高绘图效率,方便用户

5、使用,需要基于现有的绘图机制,研究一个新的命令输入方法。1 A u t o C A D命令别名机制介绍A u t o C A D平台自身也提供了一个定制快捷命令的方法,即命令别名机制。快捷命令对照表保存于A C A D.P G P中。如图1所示,每个定义为一行,具体格式为:别名,*原命令。这种命令别名机制本质上没有新增命令,而只是为命令定制了一个新的别名,以达到快速输入的效果。新的别名定制好了后,需要在命令行中输入R E I N I T 命令或重新启动A u t o C A D来启用此别名。如绘制圆要素时,正常情况下需要输入C I R C L E,如果为此命令定制了别名C,*C I R C L

6、 E,那么只需要在命令行中输入C 即可完成。显然输入1个字符的效率要比输入6个字符的效率要高。基于此命令别名定义机制,用户可以根据自己绘图习惯,定制一套属于自己的快捷命令2。图1 A u t o C A D快捷命令对照表(部分)2 C A S S平台快捷命令原理分析虽然A u t o C A D提供了一个实现快捷命令的机制,通过这种机制仅能对C A S S平台中的根绘图命令D D 进行重新定制,但不能满足于C A S S平台中通过快捷命令实现D D+C A S S码进行绘图的要求。A u t o L I S P是 由A u t o d e s k公 司 开 发 的 一 种L I S P程序语言

7、,嵌入在A u t o C A D内部,可以通过此语言对A u t o C A D的功能进行扩展3-4。通过以下代码就可以实现一个新的命令C,此命令用于对原命令C I R C L E 进行重新封装,如图2所示。图2 A u t o C A D命令封装示例基于此思路,就可以对C A S S平台中绘图根命令进行重新封装,如通过D D+C A S S码的绘图模式绘一个“一般房屋”时,需要输入D D+1 4 1 1 0 1(注:实际操作时需要输入D D后回车再输入1 4 1 1 0 1,下同),通过以下定制后,直接输入F 就可以实现此功能,定制的代码如图3所示。图3 C A S S绘图代码封装示例定制

8、快捷命令的目的就是为了实现:快捷命令=D D+C A S S码。如果快捷码定义的字符越少,那么在绘图时输入的字符就越少,这样就容易提升绘图的 效 率。但 在 实 际 绘 图 过 程 中,由 于 地 物 的C A S S码较多,单字符快捷命令就不能满足定制需求,容易产生重复。虽然可以通过增加快捷命令的字符个数来解决此问题,但如果快捷命令的字符过多,也就失去了定制快捷命令的意义,因此在定制快捷命令时,还必须要解决快捷命令重复的问题。A u t o L I S P提供了i n i t g e t与g e t k w o r d两个组合函数,i n i t g e t用于控制关键字输入,而g e t

9、k w o r d用于获取关键字。对于快捷命令出现重复时,就可以通过如图4所示方法解决此问题。图4 重复快捷命令封装示例3 设计思路通过C A S S平台快捷命令的原理分析可知,快捷命令的本质是通过A u t o L I S P语言用较短的命令对原命令进行重新封装。因此,实现此功能需要做到以下两点:配置文件应方便用户编辑,能够自由交互;所有重新封装的代码应通过配置文件自动生成,无须人工干预。3.1 定制配置文件配置文件基于XML(E X t e n s i b l eM a r k u pL a n-g u a g e)格式保存,配置中包含一个或多个快捷命令定制信息,每个快捷命令定制信息主要由

10、名称、代码或命令、是否为代码等属性项构成,各属性项的详细说明如表1所示。表1 快捷命令属性项属性名类型功能说明名称字符型快捷命令的名称,即在A u t o C A D命令行中直接输入的命令代码或命令字符型如果此处输入代码,则通过根绘图命令执行C A S S代码;如果此处输入命令,则是对原命令进行重新封装是否代码布尔型标识“代码或命令”、代码、命令。定义配置文件的代码如图5所示。图5 配置文件定义代码3.2 配置文件的读取与保存读取配置文件时,配置文件中的配置信息写入到配置对象中,是一种XML反序列化行为。保存配置文件时,配置对象中的配置信息写入到配置文件 中,是 一 种XML序 列 化 行 为

11、。在.N e tF r a m e w o r k编程框架下,可以通过S y s t e m.Xm l.S e-r i a l i z a t i o n命 名 空 间 下 的Xm l S e r i a l i z e r类 实 现XML文件的序列化与反序列化。Xm l S e r i a l i z e r对象中的S e r i a l i z e方法用于将配置对象通过文件流写入文件,即保存配置文件。Xm l S e r i a l i z e r对象中的D e s e r i a l i z e方法用于将配置文件读取到配置对象中,即读取配置文件5。3.3 配置文件转A u t o L I

12、 S P代码快捷命令的实现,本质上是通过A u t o L I S P语45现 代 测 绘 第4 6卷言编写新的命令从而实现对A u t o C A D功能的扩展。配置文件设置完毕后,需要通过程序化的方法将配置信息自动转为A u t o L I S P程序代码。主要步骤如下:(1)读取配置文件:通过Xm l S e r i a l i z e r.D e s e r i a l i z e方法将配置文件读取到内存,即生成一个Q u i c k CMD C o n f i g类型的对象(以下简称Q u i c k-CMD C o n f i g对象)。(2)检查配置文件:Q u i c k CM

13、D C o n f i g对象中的C a n D u p l i c a t e属性用于标识快捷命令是否允许重复,如果C a n D u p l i c a t e属性为F a l s e时,应对Q u i c k-CMD C o n f i g对象中Q u i c k CMD L i s t属性中的各个快捷命令的名称进行重复值检查。(3)Q u i c k CMD I t e m对象转A u t o L I S P代码:假设Q u i c k CMD I t e m对象的变量名为CMD,主要转换代码如图6所示。图6 转换代码(4)保存A u t o L I S P代码:使用S y s t e

14、 m.I O命名空间 下 的F i l e对 象W r i t e A l l T e x t方 法 将 所 有 的A u t o L I S P代码写入一个以.l s p为 扩 展名 的文 件(如:Q u i c k C o mm a n d.l s p)。3.4 L I S P程序加载为立即使用转出的A u t o L I S P代码,应对代码文件Q u i c k C o mm a n d.l s p进行加载操作。在A u t o-C A D中加载A u t o L I S P文件可以使用v l-l o a d-a l l函数来实现,此函数只有一个参数,参数的内容为A u-t o L I

15、 S P文件的路径,加载方法如下6-7:A c a d A p p l i c a t i o n.A c t i v e D o c u m e n t.S e n d C o m-m a n d(v l-l o a d-a l l c:/Q u i c k C o mm a n d.l s p )上面的方法用于将配置生成A u t o L I S P代码文件后立即加载,如果配置没有发生变化,就不需要进行转换操作,此时可以A u t o C A D提供的a p p l o a d命令 将Q u i c k C o mm a n d.l s p添 加 到 启 动 组 中(图7),A u t o

16、 C A D启动时会自动加载此文件。4 应用示例在A u t o C A D(C A S S)平台上,通过V B.N e t编程语言编写了一个新的命令C a s s_Q u i c k CMD。此命令主要有两个功能:设置参数(S):用户通过窗图7 添加到启动组口化或导入X L S文件的方式定制快捷命令;加载(D):将 设 置 好 的 参 数 转 为A u t o L I S P文 件 并加载。4.1 设置参数通过窗 口 方式 设置 参 数时,需要 通 过C a s s_Q u i c k CMD命令的S选项打开参数设置主窗口,然后对“快捷命令对照”展开设置(图8)。图8 快捷命令配置主窗口用户

17、根据作业需要和个人的使用习惯定义对工作中需要用到的每个C A S S代码或现有的命令进行重新定义(图9)。图9 快捷命令详细定义窗口为便于用户快速定义快捷命令,在参数配置窗口中同时提供了通过X L S文件的方法定义各个快捷命令(图1 0)。4.2 加载快捷命令定义完成后,使用C a s s_Q u i c k CMD55第5期张 泳等:基于C A S S平台的快捷命令定制方法研究图1 0 在X L S文件中定义快捷命令命令的D选项将参数转为A u t o L I S P文件并加载到当前A u t o C A D(C A S S)中。5 结 语本文基于C A S S平台的绘图特性并结合A u t

18、 o-C A D平台提供的二次开发接口,开发了一个新的工具,用于对C A S S绘图代码进行重新包装,能够简化用户的绘图流程,减轻用户记忆C A S S绘图代码的负担,从而提升生产效率。C A S S作为测绘专业通用的绘图平台,提供了丰富的绘图及数据功能,本工具只是对其绘图功能的进一步优化,对在C A S S平台或A u t o C A D平台进行其他功能的二次开发有一定的借鉴意义。参考文献1 南方测绘仪器有限公司.数字化地形地籍成图系统C A S S 9.1参考手册G.广州:南方测绘仪器有限公司,2 0 1 1.2 A u t o d e s k.A u t o C A D2 0 1 0中文

19、版用户使用手册M.北京:中国标准出版,2 0 1 0.3 康博.中文版A u t oC A D2 0 0 2/2 0 0 0V i s u a lL I S P开发指南M.北京:清华大学出版社,2 0 0 1.4 陈伯雄,冯伟.V i s u a l L I S P程序设计:技巧与范例M.北京:人民邮电出版社,2 0 0 2.5 伊夫杰,郝利斯.V i s u a 1 B a s i c 2 0 0 8高级编程M.5版.张敏,丁饰,译.北京:清华大学出版社,2 0 0 9.6 张帆.A u t o C A D V B A二次开发教程M.北京:清华大学出版社,2 0 0 6.7 曾洪飞,卢择临,

20、张帆.A u t o C A DV B A&V B.N E T开发基础与 实例教程 M.2版.北 京:中 国 电 力 出 版社,2 0 1 3.R e s e a r c ho nS h o r t c u tC o mm a n dC u s t o m i z a t i o nM e t h o dB a s e do nC A S SP l a t f o r mZ H A N GY o n g,Y UT i n g-t i n g(J i a n g s uG e o l o g i cS u r v e y i n ga n dM a p p i n gI n s t i t u

21、t e,N a n j i n gJ i a n g s u2 1 1 1 0 2,C h i n a)A b s t r a c t C A S S i s a c o mm e r c i a l d i g i t a l d r a w i n gp l a t f o r md e v e l o p e db a s e do nA u t o C A D,w h i c hs t i l l r e t a i n s t h e s a m e c o mm a n d-b a s e dd r a w i n gm e t h o da sA u t o C A D.O nt

22、 h eC A S Sp l a t f o r m,e a c he l e m e n th a sa6-d i g i tC A S Sc o d e.U s e r sc a nd r a wt h ec o r r e s p o n d i n ge l e m e n tb ye n t e r i n gt h eC A S Sc o d ea f t e re x e c u t i n gt h er o o td r a w i n gc o mm a n dD Di nt h ec o mm a n dl i n e.T h r o u g h i n-d e p t

23、hr e s e a r c ho nt h ed r a w i n g m e t h o do fC A S Sp l a t f o r m,A u t o C A Dc o mm a n dr e d e f i n i t i o n m e c h a n i s m a n dA u t o L I S Pl a n g u a g e,u s i n gt h eA R X.N E Ts e c o n d a r yd e v e l o p m e n t i n t e r f a c ep r o v i d e db yA u t o C A D,an e ws h

24、 o r t c u tc o mm a n dc u s t o m i z a t i o nt o o lw a sd e v e l o p e d,w h i c hc a n m o d i f yC A S Sd r a w i n gc o d eo re x i s t i n gc o mm a n d s.R e p a c k a g i n gs o l v e st h ep r o b l e mo fi n c o n v e n i e n tC A S Sc o d ei n p u ta n dl a r g e m e m o r yc a p a c i t y,a n dh a sas i g n i f i c a n te f f e c to ni m p r o v i n gd r a w i n ge f f i c i e n c y.K e yw o r d s A u t o C A D;C A S S;s h o r t c u t c o mm a n d;A u t o L I S P65现 代 测 绘 第4 6卷

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 论文指导/设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服