QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

查看: 3656|回复: 7
收起左侧

[已解决] 请教用autolisp实现相切相切直径画圆

[复制链接]
发表于 2010-10-16 07:42:49 | 显示全部楼层 |阅读模式 来自: 中国山东青岛

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

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

x
本帖最后由 ljpfeng2004 于 2010-10-16 16:17 编辑 + U' X2 G. h5 M% o

8 L3 B& J$ {4 w" `& i不是相切相切半径的方式,因为输入半径很多时候不方便,需要计算。但我捣鼓了半天也弄不好,getpoint方式画不出来的,请高手赐教代码。- t: y' P0 C, H
结贴,很好的lisp,感谢sunvei老师了。
发表于 2010-10-16 08:07:17 | 显示全部楼层 来自: 中国广东东莞
 楼主| 发表于 2010-10-16 09:22:37 | 显示全部楼层 来自: 中国山东青岛
都是我的ID,晕了。我就要lisp不要无关的答案,谢谢。
 楼主| 发表于 2010-10-16 11:09:25 | 显示全部楼层 来自: 中国山东青岛
(/ s1 k$ U& D8 q
defun ggtt()
. K3 A- W2 ^6 p7 p6 g/ V(setvar "osmode" 256)
' t1 @* A0 |' E. w4 V8 p(getpoint"请选择点")  z. b& S+ Z! d, ^; q
)
5 d/ M" f( P3 k6 K( |* b5 |
6 k, W4 k2 i1 @3 D(
2 w* ]* c6 |# ~defun c:c2(/ p1 p2 diameter radius)2 ?. s4 S. q7 C, X* R1 B
(setq diameter (getreal"\n 输入直径"))
: W( b( {6 u- k* r- v. @0 I(setq radius (* diameter 0.5))
( W. X- t) ]! M3 u(command "circle" "t" (ggtt) (ggtt) radius)
/ c9 y) K+ s" S3 ^. }
) ~, r1 x- \" U9 V4 Q1 C)( G- Q1 e% Q0 h0 M
这个是我自己鼓捣的代码,不行啊。郁闷。高手帮忙吧。求助中。。。。。。
发表于 2010-10-16 11:41:57 | 显示全部楼层 来自: 中国台湾
;; 简单的雏型
$ D  e9 L) p) A9 h0 ];; For test only 6 k8 Q# N: A$ Z
(defun C:TTD (). y; s+ T7 o3 y, I5 i" P) y
  (command "Circle" "TTR"; [9 i6 Z! g$ O! o  E% d- K
    "tan" pause
8 H+ k% }3 P( n% Y; E1 F    "tan" pause
2 E5 e; w0 J6 s0 a2 ?* s4 r9 v- s    (/ (getdist ">> Diameter: ") 2)
( ^, m8 |# O7 _# b/ T  )
- ~: F% z2 A0 X% p. j, T)
 楼主| 发表于 2010-10-16 13:36:10 | 显示全部楼层 来自: 中国山东青岛
老大,您是高手啊。佩服,有不明白的地方,"TTR"难道是02版本之前提示参数吗?另外“tan”也是参数吗?菜鸟一个,请您不吝赐教了。
发表于 2011-6-9 14:05:01 | 显示全部楼层 来自: 中国安徽合肥
(defun c:ttt()
- @8 V# j2 @2 b6 M, r( E(setq baspt (getpoint "请求输入基准点: "))
0 ~1 f7 e& j, X  O8 L* H6 ^(setq rad (getdist baspt "\n请求输入小圆半径: "))
" [' v: U, @4 T(setq num (getint "\n请求输入相切的小圆数量: "))6 ?5 }! x9 J( O: ?% |  v! M- V; Z- ?
(setq ang1 (/ (* pi 2) (* num 2)))  N4 s7 B* a' p  B4 ]* Y
(setq kk (/ rad (sin ang1)))4 q. k0 t: ~. \' {5 ?# _, K7 X
(setq ang2 (- (/ pi 2) ang1))
- v& w* o9 L7 h6 ]) w; C1 s7 E- |. H(setq cenpt (polar baspt ang2 kk))0 s' ]1 C9 _# Z8 x! x' \* N7 Z
(command "circle" baspt rad)                                2 l- D, B6 C  |) f3 ?1 K
(command "array" (entlast) "" "p" cenpt num 360 "Y")9 b& x2 a: S. Z& Q
(princ)
6 D* v, E# Q6 ]: x)
: S5 `, n; N0 o+ U, u; [' m2 \0 e(prompt "\n << 5TEST2>>自动等圆相切绘制")5 p" U' T2 o! ^
(princ)
发表于 2011-6-29 16:20:37 | 显示全部楼层 来自: 中国上海
不管,只要好用就行,试过了,挺好的。已经保存LISP.感谢楼主和LISP提供者
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则


Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

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