QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
请教:2 p' Y/ w6 v! R
LISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解; L& R- `; b$ A2 V' V
& D/ V: @6 u' ^( n* k
[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚
7 I2 S- o8 E% E9 E& U# m( m+ \如:(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 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.
* p7 N3 y" g; B; P7 v% v3 h6 O3 I1 ?2 ]( G0 ^! ]; v5 k
我的意思是 命令后的内容,9 ~& c2 u( W" x( c$ C6 O- P
如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif
6 L/ ^6 C% K4 J& x+ ?6 O可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号
6 M4 \( _& Q& T) e
. [* o2 F; }0 v1 s- A+ G* y8 K
4 n3 |, z8 \( y( x9 o& |6 L
想知道对应每重命令后参数的具体内容
' W% n3 S7 s* a% W3 f2 U0 b; y# F$ }% c* l" M5 v7 g  U- ?

2 F) X- x  R# V8 e3 s3 vcommand " _extend"   格式内容
! e0 Z/ B: A  g; }* Ccommand "_fillet " XXXXXX
) g: x9 R1 ]4 x9 y+ `' Ucommand  倒角  XXXXXXX8 i. G* e, i# |6 V

; ^' g4 \5 |6 b等等7 B2 ~0 S9 N" v3 J8 c; r% r5 ?
+ z) B3 F. I% [
[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!
" x# ]; j1 s# E: C" h这个是圆角的程序0 d+ a4 S! v. X. ^6 K- B( c* ]
(defun c:aaaa()8 w0 P- |! b. f1 o; y& I9 R
  (setq p1(list 0 0))
3 V3 S, d' M4 K  (setq p2(list 10 10)): w4 C# Q  D! v7 _. `
  (setq p3(list 11 10))9 f+ M3 ]8 E' R! ]+ x
  (setq p4(list 21 0))/ Z- {. C0 V3 u# J
  (command "line" p1 p2 "")
, d* `8 P5 M: E$ ~8 e* D- F5 V; v  (setq l1(entlast))
( d9 ]0 ~9 M# T& s6 A4 M  (command "line" p3 p4 ""): K4 W5 `  `# u
  (setq l2(entlast))! w# H& c( t. Y; p% U0 s: o0 [0 Z
  (command "fillet" "t" "t" "r" 2)( y+ m% [& V! O. D  z
  (command "fillet" l1 l2). f: ^3 ^) q, L/ \" Y, e
  (princ); D3 {! k! K* Z' h3 O
)
, j" v: B: X1 ?- L4 T+ P+ V1 M' @- t; u! o- _
其实调用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 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:
: W$ G% F# n+ Z, R, \- H(defun c:mi( )
, }6 y" d: Q; C+ z" u. v (initget 7)0 F( f( G" h3 M! H/ d; r
(setq pc1 (getpoint "\n pc1"))- }7 v4 x0 }( _  x* N- A
  (initget 7)
/ V# _# j) V) y% G* ^(setq pc2 (getpoint "\n pc2"))% c4 J9 m& \+ M" z
(initget 7)" ]4 p0 S1 `  k; F+ N8 H! L
(setq p3 (getpoint "\n p3"))
2 Y  w  q. O- ]7 H: m! e  (initget 7)% o" v; m7 u( u' S7 Q5 b) p( B) J
(setq p4 (getpoint "\n p4"))! w. Y5 H* F* f; A* k: W& v4 J
(command "line" pc1 pc2"")
, _  ^7 x1 r9 B: z (command "line" p3 p4"")
/ j3 o3 j/ \8 o& l (setq ss (entlast))
/ `; j' r5 |) |2 p (command "mirror" ss  pc1 pc2 "")
' |2 X; A' q; H# y. J- X  ~)
发表于 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 )

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