QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
9天前
查看: 5960|回复: 10
收起左侧

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

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

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

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

x
请教:
6 g5 u, A8 a5 Z+ i& p. \LISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解; L8 @7 U, o/ C

  a9 L# u6 a/ a4 N7 S6 W. K- L; j[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚. _" K( \% C4 @4 i
如:(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 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.8 u" B- W% Z/ k' \8 A
. V8 V4 a' F  y8 Z' G
我的意思是 命令后的内容,
3 l7 z1 `5 {+ O4 [如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif
5 T2 G) g6 f4 O, U) a, W/ C- N6 f+ D可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号
4 w4 m& ^% O( r/ J, u
- D5 E8 |+ h) I6 D  j7 v! y: N; v
% \) c; ~4 ^" ~* B% ?+ N
想知道对应每重命令后参数的具体内容% P- p1 u4 a$ g5 [, C1 l3 ?
: J0 r5 I1 Q8 A7 ?
( l9 b9 N7 {3 ?2 |: Z) g
command " _extend"   格式内容
  o" u: s# c2 x8 o$ tcommand "_fillet " XXXXXX
6 _) W- n. C# Wcommand  倒角  XXXXXXX) u3 f) @+ R0 O* U. M7 d5 W9 c
. @2 R+ P' B0 p; V; E  X. I
等等
1 i8 W; U* ]9 K+ Z, V7 Y0 H) i; C! H" G; j
[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!
' P) G, s$ F" {; n这个是圆角的程序
. M8 c. E( T3 i& }) ^1 M' ](defun c:aaaa()- o" P. v2 B  X# l1 F; h
  (setq p1(list 0 0))
) m6 S0 I, v: r* L8 j4 `  (setq p2(list 10 10))# B' ], e) x. R' F) c$ H* s
  (setq p3(list 11 10))6 G1 l1 `- D) }  ^! X
  (setq p4(list 21 0))
) g! k- H, H/ R  (command "line" p1 p2 "")) f; o4 S% _6 p, n4 o! O3 l
  (setq l1(entlast))6 [# W, R' s; v6 Y# H; t
  (command "line" p3 p4 "")
5 q% A  Y7 z) G  (setq l2(entlast))
( w7 c; n4 ^+ e) N5 q: N  (command "fillet" "t" "t" "r" 2)) C2 {: G' w, V# O! \
  (command "fillet" l1 l2)
% ^+ Y- m# P9 n+ a9 t5 z- m, H6 q  (princ)* U; i, [0 x# K. L5 _, [8 K
)
5 h1 z8 ^! d, }9 ], ^2 r
; }# E: `2 \$ H& U4 A. _0 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 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:2 v) W, |6 E7 S5 ^  S
(defun c:mi( )* S$ A' a2 L5 n, }
(initget 7)4 M2 K: v4 \4 V6 W! o/ ^2 [  p4 J
(setq pc1 (getpoint "\n pc1"))
! u' [' J; r5 {0 k* b+ I  (initget 7)
0 t7 v. q1 R; u  P2 n9 W: M(setq pc2 (getpoint "\n pc2"))- w0 J0 b+ D% b0 g
(initget 7)
% q* h. _0 W* P8 U0 c  u- O2 j (setq p3 (getpoint "\n p3")): Y; @8 J2 Z) u' ?/ E
  (initget 7)
: P8 O) `2 M+ ^+ f2 F0 ?(setq p4 (getpoint "\n p4"))
9 A/ ?: l/ w- O. x: ] (command "line" pc1 pc2"")! Z' ~9 ^! B0 B/ N: R, V: K
(command "line" p3 p4"")
) U1 \! E( o" ]0 K: w5 h0 s (setq ss (entlast))
/ V( ~: w5 Q' W (command "mirror" ss  pc1 pc2 "")1 Z% ~7 X: X! B$ x- l% `+ Y5 g
)
发表于 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 )

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