QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 6036|回复: 10
收起左侧

[已解决] LISP如何调用CAD命令

[复制链接]
发表于 2008-5-15 20:46:44 | 显示全部楼层 |阅读模式 来自: 中国山西太原

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
请教:
/ w0 Y& J0 b3 M! n3 O: G9 wLISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解
: ?+ S  ?, v8 s8 J2 X7 c; ]
# N, v9 }1 o0 s1 ?, c3 [$ X+ `5 Z[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚; j5 k, L5 c0 r( G
如:(command “mirror”  下面该如何?)
发表于 2008-5-15 21:08:58 | 显示全部楼层 来自: 中国浙江绍兴
先设定一个选择集A:(command "mirror" A "" 第一点 第二点 Y或N),请注意引号是英文状态下的。
发表于 2008-5-15 21:13:32 | 显示全部楼层 来自: 中国辽宁鞍山
可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号
 楼主| 发表于 2008-5-15 21:15:08 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.
% ~! {0 z% q$ L+ Y# K# S3 w9 z
8 ^& {) d& {, E5 h: D0 R我的意思是 命令后的内容,/ z0 e1 Q- M0 P( U9 C, l
如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif- G0 q2 M. V* r9 ^. g5 @& Q8 }
可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号

6 Z9 y- C( ^% V' I
+ f, d7 O! M$ @( F9 ?! k# C
$ T5 F* J8 X2 j想知道对应每重命令后参数的具体内容
( h! Y5 F2 D. C; F- r) Z/ H( j3 N& D" E3 N/ |
2 D/ T" D; }8 }# R5 u8 x7 p
command " _extend"   格式内容
+ V9 O  o; h  M5 J: Z: w4 R9 Vcommand "_fillet " XXXXXX
4 @7 l7 p) ~- P4 }command  倒角  XXXXXXX
+ B/ {" u+ ?0 S$ k" u" u' Z0 u* i7 {7 G2 I. W" q9 U
等等
6 }# r6 u8 N3 }; E
  d/ B, O; c2 p0 |; O% f& L  t[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!
$ W( T0 v3 U) l2 J这个是圆角的程序/ |3 m! |3 {5 `# f- j
(defun c:aaaa()" X# j" T( q4 o. g% a* T  i
  (setq p1(list 0 0))
# A! r( t+ E$ P+ U  (setq p2(list 10 10)): b  `( J+ S9 ]/ l3 Y! Q
  (setq p3(list 11 10))! q* N4 S7 |  R; Y4 I3 S
  (setq p4(list 21 0))
8 _; l8 x. [+ h9 }. W  (command "line" p1 p2 "")
) g- X7 Z; N% Y. n" C' Z; w  (setq l1(entlast))
% L4 k6 d/ ~) H" ]7 J  (command "line" p3 p4 "")) c3 y2 z6 P( i  l6 t8 G' P: \5 o
  (setq l2(entlast))4 g1 C4 A# t2 \: _# l; k% u. b
  (command "fillet" "t" "t" "r" 2)
4 M1 u6 S* j- [, F  (command "fillet" l1 l2)
* u5 p# B7 Y3 R" J  (princ)" k) ]% [1 g$ i3 y: M
)
; A4 A" s4 R/ _* u# C. i1 m. q
8 C1 e# q; x7 _! `( `. W( [( Y其实调用CAD命令和你自己在命令行输入差不多,在命令行输入相应的命令、参数,基本就可以把LISP需要的东西试出来,如果输入命令后会弹出对话框,就在命令前面加个减号,比如阵列,我记得在CAD2000没有对话框,就可以直接用“ARRAY”,在2002有了对话框了,LISP中就应该用“-ARRAY”。

评分

参与人数 1三维币 +5 收起 理由
wsj249201 + 5 应助

查看全部评分

发表于 2008-9-6 15:54:43 | 显示全部楼层 来自: 中国浙江宁波
方法7#楼都讲了,对于要使用实体选择集的命令,要先构建选择集然后把变量直接传给命令即可,由程序创建的实体可以通过程序直接创建选择集,已有实体可以先通过交互选择实体构建选择集;

评分

参与人数 1三维币 +5 收起 理由
woaishuijia + 5 应助

查看全部评分

发表于 2009-11-17 19:18:21 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:
" `7 |5 r0 t, V0 B" f8 a(defun c:mi( )+ W* D  f, u' }6 m/ s* z( c2 I
(initget 7)* _3 o7 `! T  R5 N2 e
(setq pc1 (getpoint "\n pc1"))
" v3 C- ^* b1 Y5 y  (initget 7)
4 S) {+ M' v& q0 V. x9 F5 p(setq pc2 (getpoint "\n pc2"))
# b! k8 N- J: O/ W% z$ Q (initget 7)# B8 q" I% p2 O
(setq p3 (getpoint "\n p3"))
+ {8 X- g' G( e1 R( F. P0 D1 C5 Q  (initget 7)
/ y% }9 N5 Y7 }, s0 z(setq p4 (getpoint "\n p4"))3 B. ]7 d( [" \& P/ k
(command "line" pc1 pc2"")5 V2 b% S5 v+ z5 V& B  w1 X
(command "line" p3 p4"")
0 ?! a- K+ V# v7 {+ m( [; E (setq ss (entlast))+ v5 W; _+ {" x+ O$ t% f
(command "mirror" ss  pc1 pc2 "")# m' w% x# n$ t9 |5 t
)
发表于 2010-10-14 15:43:45 | 显示全部楼层 来自: 中国广东深圳
正在学习,请多指点!
头像被屏蔽
发表于 2010-10-16 23:11:10 | 显示全部楼层 来自: 中国北京
提示: 作者被禁止或删除 内容自动屏蔽
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表