- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AutoLISP与AutoCAD的通信
AutoLISP与AutoCAD的通信 3.1 command函数 调用格式: (command: [命令][参数]…) 3.1.1 参数及规则 1). 调用AutoCAD的命令及其子命令和选择项都用字符串表示, 其中字符大小写均可。 2). 数值变量可以写成数本身,也可以写成字符串的形式。 3). 对于点常数有两种表示方法,即:‘(0.4 5)和 “0.4,5”;如果点的坐标x、y为变量,则必须表为: (list x y)。 4). Command调用参数中的空串“”,等效于在键盘上按了一次回车 键或空格键。 5). 如果调用(command)时不带任何参数,则等效于Ctrl-C. 6). Get族函数不能用作command函数的参数。 3.1.2 应用举例1). 编程绘制任意倾斜的矩形 (defun boxa (l w ang) (setq bp (getpoint \nEnter an base point:)) (command ucs o bp ucs z ang) (command rectangle 0,0 (list l w)) (command ucs w) );end 2). 编程绘制给定图号的图幅 (defun tk () (initget 5 5 4 3 2 1 0) (setq n (getint \nEnter No.5 4 3 2 1 0:)) (cond ((= n 5) (setq l 210 w 148 a 25 c 5)) ((= n 4) (setq l 297 w 210 a 25 c 5)) ((= n 3) (setq l 420 w 297 a 25 c 5)) ((= n 2) (setq l 594 w 420 a 25 c 10)) ((= n 1) (setq l 841 w 594 a 25 c 10)) ((= n 0) (setq l 1189 w 841 a 25 c 10)) );cond (command rectangle 0,0 (list l w)) (command rectangle (list a c) (list (- l c) (- w c))) );end 3). 编程绘制五角星 (defun star_5 (r) (command color 1) (setq cp (getpoint \nCenter point:)) (setq pt1 (polar cp (* 0.017453 18) r) pt2 (polar cp (* 0.017453 54) r) p2 (polar cp (* 0.5 pi) r)) (setq p1 (inters cp pt2 pt1 (polar pt1 pi r)) p3 (polar cp (* 0.017453 126) (distance cp p1))) (command pline cp p1 p2 p3 cp p2 ) (command bhatch p s (polar cp (* 0.017453 70) 10) ) (command color 2) (command bhatch p s (polar cp (* 0.017453 95) 10) ) (command array all p cp 5 ) (princ) );end 程序运行结果: 3.1.3 应用command函数的注意事项 Command函数调用中的参数类型、个数与顺序必须与AutoCAD命令严格对应; 在command函数中允许使用PAUSE,以暂停接受数据。 如:(command “line” pause pause “”),除少数几个命令外几乎所有的AutoCAD命令均可用于command函数的调用; Command函数调用中的命令及其选项等字符串参数中不能包含有空格,因为字符串中空格也是有效的; 需要回车才能结束AutoCAD命令时,可在command函数的最后一个参数位置设为空串,即:“”。 为使AutoLISP编程定义的命令函数执行时其执行过程不显示出来,可把系统变量cmdecho的值设置为零。 3.2. 用户输入函数3.2.1 交互输入函数(get族函数) 3.2.2 字符串输入函数 3.2.3 输入控制函数initget调用格式:(initget [位值] [关键字])功能:为随后的get族函数(getstring除外)确立关键字,并控制输入值的范围。 举例: Command:(setq a (getint “\n Enter an integer:
您可能关注的文档
最近下载
- 劳动教育论文:依托学校种植园培养小学生劳技素养的实践研究.docx VIP
- 《斯特林制冷机》课件.ppt VIP
- 2024北京清华附中初二(上)期中物理(教师版).docx
- 2025领导干部任前廉政法规知识竞赛题库及参考答案.docx VIP
- 三个女性文本和一种帝国主义批评.pdf
- 2023学年新教材高中英语Unit3Festivalsandcustoms写作指导介绍传统节日课件牛津译林版必修第二册.pptx VIP
- 技术要素市场化配置水平测度及区域差异分析.pdf
- 统计预测与决策教材.pdf VIP
- 17J008 挡土墙(重力式、衡重式、悬臂式)(最新).pdf VIP
- Prayer X钢琴谱五线谱 完整版原版.pdf
文档评论(0)