我有 Java Shape 对象。如果我沿着这条线(例如逐个像素)移动,它将转换为一系列直线、直线……命令。如果我沿着一个圆圈走,我会像左,直,左,直,...我怎样才能用Java解决这个问题?
最佳答案
我将从形状中获得一个路径迭代器,
public PathIterator getPathIterator(AffineTransform at)
并从迭代器中调用
int currentSegment(double[] coords)
然后给定起始点和结束点,您可以计算直线的斜率。
在沿途的任何线段,如果您有前一个线段的斜率和当前线段的斜率,您可以使用 dot product 判断要走哪个相对方向。确定角度。
关于java - 如何沿着 Java 形状行走并将其转换为左/右/直命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5214865/