已知四个点,前两个点形成一条直线 怎么判断后两个点是否在直线的同一侧
本帖最后由 MUSIC-DIE 于 2021-9-25 00:08 编辑写一个标注的尺寸界限偏移程序的时候遇到一个小问题,发出来与大家探讨一下啊
已知四个点,前两个点形成一条直线 怎么判断后两个点是否在直线的同一侧?
inters 函数,只有两边都延伸和都不延申,所以直接用是没办法完成的
想了个办法
1、 inters 函数求得交点坐标延长模式
2、交点坐标 和 另外两个点形成两个 向量
3、两个向量求点积正为同侧 负为异侧
这样可以达到目的,看看大家还有其他好的办法没有啊,一起讨论一下
本帖最后由 wudechao 于 2021-9-25 10:37 编辑
求人办事,还有给你明经币! ;;===点到直线的距离(带方向),要求的点pt,和直线的两个端点pp1,pp2。输出: 带符号的距离,为正pp1,pp2,pt逆时针,否则顺时针=============
(defun ffg-pt2line (pt pp1 pp2 /)
(car (trans (mapcar '- pt pp1) 0 (mapcar '- pp2 pp1)))
) wudechao 发表于 2021-9-25 00:06
求人办事,还有给你明经币!有病!
解决了的啊,我都把思路写出来了 wudechao 发表于 2021-9-25 00:08
;;===点到直线的距离(带方向),要求的点pt,和直线的两个端点pp1,pp2。输出: 带符号的距离,为正pp1,pp2, ...
厉害啊,从H版那里再学习了一下trans函数才看懂 wudechao 发表于 2021-9-25 00:08
;;===点到直线的距离(带方向),要求的点pt,和直线的两个端点pp1,pp2。输出: 带符号的距离,为正pp1,pp2, ...
我是来看女神的
页:
[1]