复杂的几何算法—求斜矩形的四角点位
求斜矩形的四角点位红色正矩形框为已知并固定的尺寸
ABCD为倾斜的矩形,并且四角点各自在红色矩形框上
AB平行DC并且长度相等
斜矩形中的
BC
AD
两个长度相等但是可以变化的
求:ABCD点位置?
谢谢大师的指点
本帖最后由 highflybir 于 2019-3-8 17:54 编辑
ynhh 发表于 2019-3-6 21:24
用逼近法
误差如0.01也好啊
谢谢您
这个题用作图法的确无解,因为它是一个一元四次方程。
下面是其LISP解:
(defun c:test()
(setq a0 (getdist "\n宽:"))
(setq b0 (getdist "\n高:"))
(setq c0 (getdist "\n边:"))
(setq a(/ a0 c0))
(setq b(/ b0 c0))
(setq A1 4)
(setq B1 (* -4 b))
(setq C1 (+ (* b b) (* a a) -4))
(setq D1 (+ b b))
(setq E1 (- 1 (* a a)))
(setq ss nil)
(setq S (Math:Quartic_Equation A1 B1 C1 D1 E1))
(foreach n S
(setq x (car n))
(setq y (cadr n))
(if (and (equal y 0 1e-6) (> x 0))
(setq ss (cons (* x c0) ss))
)
)
(princ "\n解是:")
(princ ss)
(princ)
)
其中一元四次方程的LISP程序见附件。
估计楼主的图片中的数值有问题,如果按照楼主提供的CAD,求出来的解是17.377
老掉牙的问题了:“筷子放进杯子里”。平面几何无解。三维空间可解。 woaishuijia 发表于 2019-3-6 21:20
老掉牙的问题了:“筷子放进杯子里”。平面几何无解。三维空间可解。
用逼近法
误差如0.01也好啊
谢谢您 highflybir 发表于 2019-3-8 17:52
这个题用作图法的确无解,因为它是一个一元四次方程。
下面是其LISP解:
衷心感谢您
指出我图中的错误
并给出精确快速的计算
这方法远远比逼近作图法快太多了
您太伟大了
衷心感谢您
祝你工作顺利
身体健康
页:
[1]