Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个描述路径的点列表(x,y 坐标)。假设 {(1,1),(2,2),(5,2)} 可以是路径点的列表。
现在,我想指导我的用户沿路径移动的方式。例如,在每个点,都会附加一个字符串,描述用户如何去下一个点。可以是“左转 90 度”、“右转 35 度”等。
有没有任何算法或建议的方法来做到这一点?
如果问题描述的任何部分无法理解,请告诉我。
如果您的用户在点 1 (x1,y1) 并且您希望他去点 2 (x2, y2),那么您计算所谓的位置向量。简短的回答是您计算位置矢量的大小和角度。幅度告诉用户移动多远,角度告诉他方向。所以,
magnitude = sqrt( (x2-x1)^2 + (y2-y1)^2 ) angle = arc tan( (y2-y1)/(x2-x1))
然后您可能希望将角度从弧度转换为角度=角度*(180 / pi)的度数。