wimal 发表于 2022-7-6 08:00:44

找出角度(度)

垂直长度=300
水平长度=500
有人能写一个lisp代码来找出倾斜角度吗
这需要我继续我的lisp代码。

MSasu 发表于 2022-7-6 08:09:35

答案是一个函数,它将提供以弧度为单位的角度:
要编写泛型函数,不要忘记添加一些条件(避免零除法)。

pBe 发表于 2022-7-6 08:11:58

替代共振器:
(setq angleDeg ( cvunit angleRad "radian" "degree"))
 
(setq p1 (list 0.0 Thex) p2 '(0.0 0.0) p3 (list theY 0.0))

(c:cal "ang(p1,p2,p3)")
 
你可能需要这个让cal工作
(if (not (member "geomcal.arx" (arx)))
   (arxload "geomcal")
   )

Lee Mac 发表于 2022-7-6 08:18:21

@MSasu,
 

 
可以这样写:
“atan”函数将执行除法,并将第二个参数解释为零:
_$ (atan 1 0)
1.5708

wimal 发表于 2022-7-6 08:24:39

谢谢MSasu,谢谢pBe:)谢谢Lee Mac

MSasu 发表于 2022-7-6 08:30:36

@李:谢谢你指点我,我从来没有注意到这个功能!

wimal 发表于 2022-7-6 08:35:56

(setq theX 500.0
   theY 300.0)
(setq angleRad (atan (/ theY theX)))      ;angle in radians
(setq angleDeg (* (/ angleRad pi) 180.0))   ;angle in degrees
(command "insert" "RIDGE" P1 "1" "1" angleDeg)
我试图插入一个名为RIDGE的块,旋转到计算出的角度“angleDeg”
但失败了。错误是什么?

MSasu 发表于 2022-7-6 08:39:43

你能把错误信息贴出来吗?

MSasu 发表于 2022-7-6 08:44:48

乍一看,有两个可能的错误:
 
(1) 如果使用的是AutoCAD的本地化版本,请确保调用命令的英文名称:
(command "_INSERT" "RIDGE" P1 1.0 1.0 angleDeg)
(2) 验证所述块在图形中是否可用:
8

Tharwat 发表于 2022-7-6 08:54:58

 
 
按李之前的评论更正
页: [1] 2
查看完整版本: 找出角度(度)