【发布时间】:2013-07-06 06:45:42
【问题描述】:
我需要绘制一个多边形 - 通过连接连续的点,然后将最后一个点连接到第一个点。
为了这个目标,我尝试使用drawPolygon(xPoints, yPoints, nPoints)。在我看来,实现这一目标的方法要方便得多
但是Graphics类是抽象类,我不能创建实例对象并调用drawPolygon()方法?
代码:
public void draw() {
Graphics g = null;
int xPoints [] = new int[pointsList.size()];
int yPoints [] = new int[pointsList.size()];
int nPoints = pointsList.size();
for (int i = 0; i < pointsList.size(); i++) {
xPoints [i] = (int) pointsList.get(i).getX();
yPoints [i] = (int) pointsList.get(i).getY();
}
g.drawPolygon(xPoints, yPoints, nPoints);
}
- 我们能否以任何方式规避调用此方法?
- 也许还有其他方法可以实现这一目标?
【问题讨论】:
-
但是Graphics类是抽象类,我不能创建实例对象并调用drawPolygon()方法? 1.把所有
Objects放到array, 2. 使用Swing JComponent或JPanel(覆盖getPreferredSize), 3.custom painting在paintComponent中完成, 4. 在paintComponent内部循环arrays of prepared Objects, 5 使用局部变量定位Objects在JComponent或JPanel -
你需要把它渲染到哪里?屏幕还是文件?
-
@MadProgrammer 到屏幕
标签: java graphics drawing polygon java-2d