QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

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

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

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

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

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

x
请教:  v: a3 X' D" g3 D+ I& G& {* S
LISP调用CAD命令如Trim、圆弧化、阵列、镜像等的格式及参数详解: w& l7 y) T; o+ P

+ x5 {' g  v3 ^( b" ?[ 本帖最后由 抬头见喜 于 2008-5-17 09:33 编辑 ]
 楼主| 发表于 2008-5-15 20:53:08 | 显示全部楼层 来自: 中国山西太原
可能没说清楚
$ S. `9 ]1 L; Y9 U% N+ V如:(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 | 显示全部楼层 来自: 中国山西太原
谢谢,总算有人进来了.+ }2 B3 h6 D4 _" t; j2 Z( h
6 [( d6 S; a( ]* O
我的意思是 命令后的内容,
9 v! r4 y: x9 Z! y如镜像命令是(command  "mirror" 接下来先是 镜像内容还是对称轴,镜像内容中又是以坐标点,还是对象等等
 楼主| 发表于 2008-5-15 21:15:56 | 显示全部楼层 来自: 中国山西太原
原帖由 maoyangmy 于 2008-5-15 21:13 发表 http://www.3dportal.cn/discuz/images/common/back.gif
" z0 M; k+ T( E/ |/ W2 l可以按照命令执行后进行的操作,给出相应的参数或选择集,其中字符要加引号
+ @; x9 z0 R& x

% r" W' Z6 z$ H% w5 {% d6 Y3 A9 p' |. m
想知道对应每重命令后参数的具体内容/ S7 W4 m1 q: i3 i$ j; G. Y

& w! B8 ~/ i4 b. D6 W2 s! Y
5 \$ T% J9 C' X3 f  A4 X# \  kcommand " _extend"   格式内容
1 D8 U7 a9 a4 Z9 {4 T7 r1 P1 x7 A* Lcommand "_fillet " XXXXXX
# b- u- o- u2 d# U+ w( zcommand  倒角  XXXXXXX
& e/ i& A' l9 s6 m& r/ F$ w+ ?& b1 J, L
等等! L& Q% f+ X8 x. d( F

0 s. |) ?/ t! R! N[ 本帖最后由 抬头见喜 于 2008-5-15 21:38 编辑 ]
发表于 2008-5-15 22:44:09 | 显示全部楼层 来自: 中国
刚才正帮xiaoxiao88朋友修复文件,没顾上你这里,抱歉!
! @* V5 G5 B' o0 Y( w+ I这个是圆角的程序
; f: M9 j& q2 F1 l(defun c:aaaa()
  l9 B5 Y) n# v3 s. D' d  (setq p1(list 0 0))
$ {( z2 }6 V/ h( A* y8 Y  (setq p2(list 10 10))
9 |) v) i+ ~+ O  (setq p3(list 11 10))
; \7 @) }. Y$ W3 C* \# ?- K/ v4 ]1 D  (setq p4(list 21 0))/ C; n3 P, V0 p/ w( @6 ~
  (command "line" p1 p2 "")0 x- L, G/ g2 }: ~
  (setq l1(entlast))
7 b+ u7 [; f( c. m3 t& B& N# l0 o9 C6 s& K6 z  (command "line" p3 p4 "")2 ~6 w5 J+ q) K" @& b* i4 t% A
  (setq l2(entlast))
" H# R" n- e/ M. L4 W9 G  (command "fillet" "t" "t" "r" 2)
( s/ ^9 Y) s0 F+ ]: V  (command "fillet" l1 l2)8 @# _) |9 O) ]/ ]4 @1 z
  (princ)
- n7 v' N: W5 o/ O5 z" d; [/ v )
; E- @2 h  f7 f7 q. A+ C" y5 V5 q& Q7 ~9 r
其实调用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 | 显示全部楼层 来自: 中国河南郑州
这是一个镜像程序,不妨一试:, e& X, f1 A! [3 I# N
(defun c:mi( )
) i0 m, u% k7 S$ g- o- I (initget 7)! X% U% y$ E) _* c4 J% K
(setq pc1 (getpoint "\n pc1"))
+ l4 {8 A* P1 q; C  (initget 7)
" u% L5 Y) d' H; t(setq pc2 (getpoint "\n pc2"))9 Z: x$ @$ n* y' b, l5 u: F
(initget 7)& [: e1 y7 V, B! f7 R) I( X# i) E& V4 q
(setq p3 (getpoint "\n p3"))
6 E  L6 [" A4 G# a2 D  (initget 7); }& M' r$ i* ?% h4 E$ E+ B
(setq p4 (getpoint "\n p4"))8 [# V* Y) K: z. \9 J8 k  Z; p
(command "line" pc1 pc2"")  t9 Q0 x- c6 ?" s7 Y. I, D, o, K! C
(command "line" p3 p4"")3 E# ?, W) Z, Z* n9 u1 O
(setq ss (entlast))
3 q2 Q. [* {. p! U (command "mirror" ss  pc1 pc2 "")! S8 y! F2 }" H* F( d. V9 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 )

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