QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
请教:
3 F% R8 }' W8 j' i0 I" ~" mLISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解# w: a5 J3 d( v

) N) `  Z4 `9 j' J- b; f$ \: P[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚2 H8 ?- J- b; ~) Q' c0 B
如:(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 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.
/ O3 j: ]$ h$ I# Z0 S! Y( [. M  Z
% `/ y; o- B9 C8 {我的意思是 命令后的内容,7 g" z, d% y& C0 u4 S
如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif7 t% b: X! p2 q; {, C
可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号
2 S' r; q" v: b( o0 X/ {! k

. g1 D' l( v) L3 g6 k+ |2 y# s# X" I+ |8 i& J* i7 l* w9 o+ @6 V
想知道对应每重命令后参数的具体内容
/ f' i: A( z8 D9 o
5 {/ o! e& m, x& E: }- W" ], a
* Z2 g2 S/ }7 jcommand " _extend"   格式内容
0 `( F5 O$ \) k% ]( B- Acommand "_fillet " XXXXXX% e, _6 D$ [  w" u+ y1 B
command  倒角  XXXXXXX* H2 y0 y0 u$ G: \/ w; P

4 M+ l" Z0 C7 f8 H7 P. i  k等等( J4 o2 {. Z2 D+ K$ i# `: A

  {" v3 K. d  j7 Z& L$ r8 g9 X2 |[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!8 B; J9 c0 ~* n7 R. W- A5 O
这个是圆角的程序; b8 \2 y9 q; M' D' j: G0 B0 Q
(defun c:aaaa()& O$ S' K7 [4 o3 ~% `
  (setq p1(list 0 0))7 C/ N$ |; K6 ~- m2 d
  (setq p2(list 10 10))2 V9 E% k1 }* m
  (setq p3(list 11 10))" P2 |' n1 v, `
  (setq p4(list 21 0))
4 w1 Y$ Y, `+ ~; Y/ A  (command "line" p1 p2 "")
4 r$ S& {1 c% M  (setq l1(entlast))6 `8 _" x1 Z& b! n! ]  H) T
  (command "line" p3 p4 "")
  z5 }& e# [/ @7 P2 }9 w. M2 \  (setq l2(entlast))
8 c8 q9 t' Y. a* F& E) g+ D( O9 H) n  (command "fillet" "t" "t" "r" 2)* ]3 I  k+ b3 \
  (command "fillet" l1 l2)" I7 \- t5 g' R3 T8 R5 \3 P( ]" N
  (princ)9 {$ \- [: |! `: }* B
)* m6 w# D7 ~- {+ S

# V2 _& p2 w- G. q( f其实调用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 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:
0 J& i. L% d9 m8 E9 u! U(defun c:mi( )/ S4 I" `1 v+ i
(initget 7)
9 w5 ?- o. n: e: Q5 v$ | (setq pc1 (getpoint "\n pc1"))
: `0 k' k/ H. W1 W. y  (initget 7)
% R) s6 h; c) W(setq pc2 (getpoint "\n pc2")): }  g0 G* q! h1 ?
(initget 7)
, A- s3 W2 B, \0 A  n; t( ~! D (setq p3 (getpoint "\n p3"))
+ Z- y1 k5 o& w; c/ n3 s' s  (initget 7)
4 A0 P( e# M0 H3 w' `2 H(setq p4 (getpoint "\n p4"))
* [" v, p' B. w; O8 K6 E" h (command "line" pc1 pc2"")
9 t0 J4 o8 ~. f$ @8 k( Y (command "line" p3 p4"")
" R: D$ t5 s6 E1 |: N (setq ss (entlast))" B; l# i, G9 Q4 o! F- z
(command "mirror" ss  pc1 pc2 "")# F7 v* u$ R; @( [! R
)
发表于 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 )

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