明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2835|回复: 8

如何得到点到多段线的垂足的坐标?

[复制链接]
发表于 2014-5-27 16:45:04 | 显示全部楼层 |阅读模式
大侠们帮忙啊! 已知一点 和多段线,得到点到多段线的垂足点的坐标,及点到多段线的最短距离?
 楼主| 发表于 2014-5-27 16:47:05 | 显示全部楼层
补充: 多段线含有 圆弧!! 大侠们多帮忙!
发表于 2014-5-27 23:08:30 | 显示全部楼层
这个应该分成二个问题,一个是点到直线垂足点,另一个是点到圆弧的垂足点
第一个好理解,第二个,点到圆弧的垂线,必然是该点经过圆心的一条和圆弧相交的直线
 楼主| 发表于 2014-5-28 13:21:13 | 显示全部楼层
谢谢您回复!
这个能够理解,求出所有垂足,得出距离。关键是如何求垂足点的坐标?以便下一步画垂线段。请高手给予方法。
 楼主| 发表于 2014-5-28 13:22:18 | 显示全部楼层
如何求 点到直线垂足点?点到圆弧的垂足点?谢谢!!
发表于 2014-6-16 12:13:37 | 显示全部楼层
点到直线:设 点坐标p1(x1,y1) 直线坐标p2(x2,y2)起  p3(x3,y3)止     直线相对水平线角度a1=atn((y3-y2)/(x3-x2) )    p1到p2连线 相对对平线角度  a2=atn((y1-y2)/(x1-x2)) 求出两线夹角a2-a1,算出 p1到p2连线长度L1(公式略),垂足px到p1距离L2=L1*cos(a2-a1)  px坐标 x=L2*cos(a1) +x2  y=L2*sin(a1)+y2
大概是这个思路 或许有更简单的  
发表于 2014-6-16 12:24:22 | 显示全部楼层
点到圆弧:  设点坐标p1(x1,y1) ,圆弧圆心p2(x2,y2) 圆弧半径R ,算出p1到p2距离L1(必须大于R),p1到垂足px(x,y)的距离L2=sqr(L1*L1-R*R)  L2与L1的夹角 a1=arcsin(R/L1),  L1与水平线的夹角a2=atn((y2-y1)/(x2-x1)) l2与水平线的夹角 a3=a2-a1  px坐标x=L2*cos(a3)+x1  y=L2*sina(a3)+y1
发表于 2014-6-16 13:09:26 | 显示全部楼层
hookkk 发表于 2014-6-16 12:24
点到圆弧:  设点坐标p1(x1,y1) ,圆弧圆心p2(x2,y2) 圆弧半径R ,算出p1到p2距离L1(必须大于R),p1到垂足p ...

这个弄错了 弄成切点了  垂足比这个简单,自己画下图就可以了
发表于 2014-9-14 17:04:53 | 显示全部楼层
用这个函数ObjCurve.GetClosestPointTo
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 12:54 , Processed in 0.184854 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表