QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
请教:
  \; |, s, `* ~: r- _9 `0 B+ gLISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解4 ]7 h) p2 f+ H1 [/ R; z, X( }# p

: H; @7 B  a# A7 f3 l: f3 C7 q[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚. r3 f0 R% W0 b5 p0 d% }' E
如:(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 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.
+ O4 N( S7 ^  V, X- w6 F& ~( N0 r; f! V5 j3 U
我的意思是 命令后的内容,* I2 n8 w; j5 X, n
如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif
4 p: r! i$ ]0 H# O- K) s4 A- E2 P* ~可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号

" {8 h/ A% N; ~1 P, \! C0 Z. s: }) r
2 N8 f! X3 m: I" y, `" f1 B4 j8 C, y# D5 e: F8 u, [7 }
想知道对应每重命令后参数的具体内容
7 T9 X7 Z; x! F, t+ o# _( `6 u( D. H& i! x

; n, I/ d4 u. g# X  B( ucommand " _extend"   格式内容
* x$ ~  G; p6 Pcommand "_fillet " XXXXXX  s# k* W0 F* h% L0 p& ~8 H, W4 s
command  倒角  XXXXXXX
5 n- E7 }3 K+ L: {, K) O7 P
, b3 b5 F; v5 ]7 C1 h1 C  R# {等等7 l3 `" m# w  m+ T& j( V' Y8 s6 V* o
! S  d4 E, f4 E5 k7 U. _: ]" V
[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!
* W+ Y3 K& k6 r$ }这个是圆角的程序! }$ q# B, y* E3 u" s3 {+ t: E
(defun c:aaaa()
" B- z* V; O* t  (setq p1(list 0 0))3 G4 O1 A* ~. \3 n3 U# t
  (setq p2(list 10 10))
. P1 B0 ?/ P& P) D8 E, X6 G  (setq p3(list 11 10))
2 G" }$ w) f3 D( g/ R* z# k: }9 R  (setq p4(list 21 0))
7 L3 ]5 {* }" x7 E  (command "line" p1 p2 "")2 w4 [9 B# i3 |% s) e& N# B  O! \1 V
  (setq l1(entlast))
. k" z- w7 o3 a4 X- D) N$ z  (command "line" p3 p4 ""); _% b1 o' Q; W3 w9 f
  (setq l2(entlast))  W* y8 f; ?4 s1 S7 c- Y
  (command "fillet" "t" "t" "r" 2)
4 s+ q/ n: Y5 @0 N) R8 T0 Y) V  (command "fillet" l1 l2)
' H5 S. M8 b# a+ \5 p1 b: i  (princ)
2 M5 x+ N. |5 o6 t4 t; u )
% f$ B( b0 `  f, ]  Y
% d0 z7 C( R+ a' K其实调用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 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:6 x# s7 j# r; g+ K/ J/ j
(defun c:mi( )
+ V2 q7 N4 v( j* ~* C (initget 7)& U# K! M' N; b; ^1 g3 p3 H. X
(setq pc1 (getpoint "\n pc1"))
9 q# O& m3 W$ Y0 `* @/ O! Z- v' K' F. U  (initget 7)
0 o( O2 F) {9 k! D(setq pc2 (getpoint "\n pc2")): @. e. z3 Z* l* C2 M: u
(initget 7); \4 r$ i4 a8 m1 u: z3 W% p3 @6 t9 d
(setq p3 (getpoint "\n p3"))' T; w+ K, a! `0 |4 O
  (initget 7)
9 w( m% n4 |# L2 i8 [(setq p4 (getpoint "\n p4"))
: }; Z8 M+ E: X$ q (command "line" pc1 pc2"")
# d/ |! B6 S+ e" h (command "line" p3 p4"")
5 v$ n$ d4 v  F1 e (setq ss (entlast)), x4 `+ N# U% Q
(command "mirror" ss  pc1 pc2 "")
4 q7 A5 H, G9 i3 C' W$ d/ 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 )

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