polar问题
好的,我不确定这里发生了什么,但在我使用polar的程序中,任何超过45度的polar都会开始倒退。例如,如果输入60度,它将为我提供30度的角度。然而,在我在同一个程序中进行的测试中,它运行良好。以下是我的程序中给我带来问题的部分:
(setq pltinrad(+tankdiam)
(setq pltoutrad(+tankdiam(+8(n th rn RSPDEPTH)))
(setvar’clayer“径向修剪1”)
(命令“CIRCLE”TANKCTR pltinrad)
(setvar’clayer“径向修剪2”)
(命令“CIRCLE”TANKCTR pltoutrad)
(setq lninpt1(列出TANKTOCXXL(+TANKTOCYL pltinrad)))
(setq LNOTPT1(列出TANKTOCXXL(+TANKTOCYL pltoutrad)))
(setvar’clayer“径向修剪3”)
(命令行“lninpt1 lnoutpt1”)
(setq endang(-(第n个rn RSP方向)(第n个rn RSP方向)))
;; 测试
(setq ang 0)
(重复9
(setq endangp(*PI(/ang 180.0)))
(setq LNINT2(极油箱中心endangp pltinrad))
(setq LNOTPT2(极油箱中心endangp pltoutrad))
(提示“\n ang:”)
(王普林)
(提示“\n”)
(提示“\n endangp:”)
(普林斯·恩丹普)
(提示“\n”)
(setvar’clayer“管道2”)
(命令行“lninpt2 lnoutpt2”)
(setq ang(+ang 10))
)
;; 结束测试
(setq endangp(*PI(/endang 180.0)))
(setq LNINT2(极油箱中心endangp pltinrad))
(setq LNOTPT2(极油箱中心endangp pltoutrad))
(setq mirang(/endang 2))
(setq mirangp(+(/(*mirang PI)180)(/PI 4)))
(setq mirlnpt(极地油轮中心mirangp pltoutrad))
(setvar’clayer“径向修剪4”)
(命令行“lninpt2 lnoutpt2”)
(提示“\n endang:”)
(普林斯·恩当)
(提示“\n”)
(提示“\n endangp:”)
(普林斯·恩丹普)
(提示“\n”)
在60度时,输出为drawing4,并且:
ang:60
endangp:1.0472
恩当:60.0
endangp:1.0472
45度时,输出为drawing4-2,并且:
ang:40
endangp:0.698132
ang:50
endangp:0.872665
恩当:45.0
endangp:0.785398
有人知道这是怎么回事吗???
我认为你们应该在Autolisp论坛上问这个问题,也许有些版主会把这个问题转移到那个部分。 是的,很抱歉,我刚才跳进了Autocad区域,没有看到lisp区域。我会等到明天,如果它不被移动,我会重新张贴在那里。谢谢 线程转移到AutoLISP、Visual LISP和DCL论坛。
请阅读代码发布指南并编辑您的帖子,将代码包含在代码标签中。 好的,我现在已经改正了。如果我还有什么问题,我会回来的。谢谢
页:
[1]