surveyscad2018 发表于 2022-7-5 15:31:48

Lisp以显示方向角和di

你好
 
 
我编写了一个Lisp例程(如下所示),用于测量两点之间的距离,并应用在Lisp中编写的比例因子,并将其显示在命令行中。尽管lisp功能强大,但它可能不是“最干净的”。我想知道是否可以在lisp中添加一个函数,该函数除了显示新计算的距离外,还将显示方向角。理想情况下,显示的方位将以度-分-秒格式书写,而不是方向方位(例如,N73°25'45“W将显示为286°34'15”)。用我写的lisp语言,从“x1”开始,向北是0°,角度从北顺时针旋转,到“x1”和“x2”之间的一条线。任何帮助都会很好。如果任何人有一个lisp已经做到了这一点,或者可以修改我的lisp来做到这一点,那将是完美的。
 
 
谢谢
 
 
艾哈迈德
 
 
 
 
 
 
;Use this command to measure the distance between two points while applying a Combined Scale Factor
;Be sure to copy this lisp to your job folder, and set your CSF as required. Do not change CSF outside of job folder.
;Ahmed F. 2017
(defun c:DM ()
(setq TD 0)
(setq x1 (getpoint "\nSelect First Point: "))
(setq x2 (getpoint x1 "\nSelect Second Point: "))
(prompt
(strcat
(rtos (distance x1 x2))
(rtos (setq TD (+ TD (/(distance x1 x2) 0.999848))))
)
)
(prompt (strcat "\nTotal Distance = " (rtos TD)))
(princ)
)
 
 
 
 
再次感谢。

hanhphuc 发表于 2022-7-5 15:49:26

 
试试这个
(hp:deg->dms(角度x1 x2))
旧线程

BIGAL 发表于 2022-7-5 16:12:24

试试这个
 

(SETVAR "ANGBASE" (/ pi 2))
(SETVAR "ANGDIR" 1)
(SETVAR "AUNITS" 0)
(while (setq pt1 (getpoint "pt1"))
(setq pt2 (getpoint "pt2"))
(princ "\n")
(princ (angtos (angle pt1 pt2) 1 ))
(princ "\n")
)

sanjeeve 发表于 2022-7-5 16:21:15

 
你可以从microssurvey得到这个lisp

SLW210 发表于 2022-7-5 16:44:05

请阅读代码发布指南,并将您的代码包含在代码标签中。
Your Code Here=
Your Code Here
页: [1]
查看完整版本: Lisp以显示方向角和di