是否可以通过向该方法传递点值的数组列表来绘制多段线?如下所示:
ArrayList<Point> projectilePoints=new ArrayList<Point>();
Projectile p = new Projectile(11, 17, 73, 37);
for (int i = 0; i < 11; i++) {
Point point = p.getPositionAt(i);
projectilePoints.add(point);
}
g.drawPolyline(projectilePoints, projectilePoints, 11);为多段线传入x点和y点参数的正确方法是什么?
发布于 2011-09-26 22:49:35
不,没有这样的方法获取Point引用参数的Arraylist。语法是,
Graphics.drawPolyline(int[] xPoints, int[] yPoints, int nPoints)
发布于 2011-09-26 22:49:11
Graphics#drawPolyLine上的JavaDpc声明您需要传递2个表示x和y坐标的整数数组。
或者,您可以使用Graphics2d#draw(Shape)并传递一个Path2D形状,该形状可以使用您的点进行预填充(例如,对除第一个点之外的所有点调用lineTo(x,y) -您可以对其调用moveTo(x,y))。
发布于 2011-09-26 22:50:08
调用方法Graphics2D.drawPolyline。这个方法接受一个由X坐标值组成的整型数组,一个由Y坐标值和点数组成的整型数组。
不存在接受Point对象的线条绘制方法,您必须创建坐标的整数数组。
请参阅http://download.oracle.com/javase/1,5.0/docs/api/java/awt/Graphics2D.html
https://stackoverflow.com/questions/7556837
复制相似问题