※ 引述《RogerKao (RK)》之铭言:
: 各位大大晚安,小弟第一次在板上PO文,如有冒犯还请见谅。
: 小弟有一问题相问:
: 问题是关于直线段连线的问题,以下所有线段、连线都是rectilinear的
: 假设目前已知存在某线段(即知其头尾座标)
: 例如(0,10)->(10,10),其中(10,10)为可连接之端点
: 接着我有一点(7,6),想求此点连线到该线段或是该端点的最短距离
: 就会有两个连法,第一个连法就是直接垂直往上连到(7,10)
: 第二个连法就是往右边画线到(10,6)再往上连到(10,10),而产生两段线段。
: 当然我可以直接看出(7,6)->(7,10)走的距离比较短。
: 但我怎么判断走到(7,10)之后,线段不会再往右边连到(10,10)?
: 也就是我如何判断我的中继点已经在已知线段上,而不再继续连线?
: 我是有想到一个方法就是判断欲连接点(7,6)之X值是否在第一线段之X值范围内
: 即 0 <= 7 <= 10,若是则可直接垂直连至线段Y=10上,但总觉得应该有更好
: 的方式,因为这样我线段数一多的时候判断式似乎就更加复杂了。
: 因为一旦第二个点连至第一个点或第一个点产生之线段之后,其第二个点或其线段也会
: 变成下一个点可连接之选择。
: 叙述不佳的话还请各位大大见谅!
所以应该是这样吧