ynhh 发表于 2019-3-6 13:58:28

复杂的几何算法—求斜矩形的四角点位

求斜矩形的四角点位
红色正矩形框为已知并固定的尺寸
ABCD为倾斜的矩形,并且四角点各自在红色矩形框上
AB平行DC并且长度相等
斜矩形中的
BC
AD
两个长度相等但是可以变化的

求:ABCD点位置?
谢谢大师的指点





highflybir 发表于 2019-3-8 17:52:47

本帖最后由 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:58

老掉牙的问题了:“筷子放进杯子里”。平面几何无解。三维空间可解。

ynhh 发表于 2019-3-6 21:24:52

woaishuijia 发表于 2019-3-6 21:20
老掉牙的问题了:“筷子放进杯子里”。平面几何无解。三维空间可解。

用逼近法
误差如0.01也好啊
谢谢您

ynhh 发表于 2019-3-8 19:28:10

highflybir 发表于 2019-3-8 17:52
这个题用作图法的确无解,因为它是一个一元四次方程。
下面是其LISP解:



衷心感谢您
指出我图中的错误
并给出精确快速的计算
这方法远远比逼近作图法快太多了
您太伟大了
衷心感谢您
祝你工作顺利
身体健康
页: [1]
查看完整版本: 复杂的几何算法—求斜矩形的四角点位