QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
goto3d 说: 版主微信号:caivin811031;还未入三维微信群的小伙伴,速度加
2022-07-04
全站
goto3d 说: 此次SW竞赛获奖名单公布如下,抱歉晚了,版主最近太忙:一等奖:塔山817;二等奖:a9041、飞鱼;三等奖:wx_dfA5IKla、xwj960414、bzlgl、hklecon;请以上各位和版主联系,领取奖金!!!
2022-03-11
查看: 3127|回复: 7
收起左侧

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

[复制链接]
发表于 2010-10-16 07:42:49 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 ljpfeng2004 于 2010-10-16 16:17 编辑
4 \3 I: r- J2 e, U9 H3 t: @& q+ ^( Z8 u- z" c
不是相切相切半径的方式,因为输入半径很多时候不方便,需要计算。但我捣鼓了半天也弄不好,getpoint方式画不出来的,请高手赐教代码。) n% ~* r8 n, S- n# Y
结贴,很好的lisp,感谢sunvei老师了。
发表于 2010-10-16 08:07:17 | 显示全部楼层
 楼主| 发表于 2010-10-16 09:22:37 | 显示全部楼层
都是我的ID,晕了。我就要lisp不要无关的答案,谢谢。
 楼主| 发表于 2010-10-16 11:09:25 | 显示全部楼层
(5 ?9 z; p4 F: d3 b3 C. n9 i
defun ggtt()
* C3 O" s: N. M5 X(setvar "osmode" 256)
# z1 ^! E+ T9 C3 _4 l( z2 l(getpoint"请选择点")
6 N  v- S" Y) Y/ {. }( Q- k8 T( c! H6 q)
* v8 B4 E1 N" h+ U- q/ k" ~/ r* Z$ K( O! F+ w+ K& A2 S
(
( w- U! v( h# D0 J  N  Rdefun c:c2(/ p1 p2 diameter radius): e4 a! m7 c# D- Y4 |9 K+ E
(setq diameter (getreal"\n 输入直径"))9 w  P& c2 M$ t  U8 L
(setq radius (* diameter 0.5))
' s* t* f8 x% }* Q& Y& O(command "circle" "t" (ggtt) (ggtt) radius)) D. W; U: C* a) z

8 b9 a* b6 Z7 H4 A( w3 b/ Z+ ]6 b)
2 E# y; g# R: F2 U' P/ A+ u6 ^2 x这个是我自己鼓捣的代码,不行啊。郁闷。高手帮忙吧。求助中。。。。。。
发表于 2010-10-16 11:41:57 | 显示全部楼层
;; 简单的雏型
# j! d$ c! V8 V* i5 Q- ~8 \;; For test only * ?! s( R( o- B) ^+ s7 G/ J1 W
(defun C:TTD ()
7 o: l0 c! F* x  z3 O+ o9 R+ d  (command "Circle" "TTR"
# z; N7 ~" p- X- u2 P/ K    "tan" pause
$ y" p' L/ Q# V/ W! a3 o& ^    "tan" pause
  {" s: {6 K' A    (/ (getdist ">> Diameter: ") 2)
0 C$ |5 X+ A0 Q) U  )
" h# d4 w4 ~+ J: |4 U)
 楼主| 发表于 2010-10-16 13:36:10 | 显示全部楼层
老大,您是高手啊。佩服,有不明白的地方,"TTR"难道是02版本之前提示参数吗?另外“tan”也是参数吗?菜鸟一个,请您不吝赐教了。
发表于 2011-6-9 14:05:01 | 显示全部楼层
(defun c:ttt()
6 k  @" V. g0 X! f(setq baspt (getpoint "请求输入基准点: "))- \7 K* v( [* y7 R9 v5 b' F
(setq rad (getdist baspt "\n请求输入小圆半径: "))
5 X% M6 v, ]7 Z+ C/ d(setq num (getint "\n请求输入相切的小圆数量: "))& V: I9 H" N5 @) L" P+ e; |& {
(setq ang1 (/ (* pi 2) (* num 2))): _+ {) `2 r6 g! @0 Y. W8 o
(setq kk (/ rad (sin ang1)))% x$ ^9 w, n4 I3 Q
(setq ang2 (- (/ pi 2) ang1))" \3 y9 r3 N' `# {7 B
(setq cenpt (polar baspt ang2 kk))
$ \+ G+ b2 F- R$ a1 D/ W(command "circle" baspt rad)                                ; S" n! n, n: Z9 J3 |6 f
(command "array" (entlast) "" "p" cenpt num 360 "Y")
; M- r! a  {6 t(princ)# E# h1 G- S0 E. j
)
, F1 a5 e2 j( \. e5 B/ R(prompt "\n << 5TEST2>>自动等圆相切绘制")3 P' p) S4 l; _2 F+ B3 M$ x
(princ)
发表于 2011-6-29 16:20:37 | 显示全部楼层
不管,只要好用就行,试过了,挺好的。已经保存LISP.感谢楼主和LISP提供者
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

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