我是java的新手。所以,我正在尝试制作小行星游戏项目。我有这个点类
class Point implements Cloneable {
double x,y;
public Point(double inX, double inY) { x = inX; y = inY; }
public Point clone() {
return new Point(x, y);
}
}
和带有点,点和整数数组的多边形类。 class Polygon { 私人Point []形状; //一系列点。 公共点位置; //上面提到的偏移量。 公共双转; //零度是正东方。
public Polygon(Point[] inShape, Point inPosition, double inRotation) {
shape = inShape;
position = inPosition;
rotation = inRotation;
// First, we find the shape's top-most left-most boundary, its origin.
Point origin = shape[0].clone();
for (Point p : shape) {
if (p.x < origin.x) origin.x = p.x;
if (p.y < origin.y) origin.y = p.y;
}
// Then, we orient all of its points relative to the real origin.
for (Point p : shape) {
p.x -= origin.x;
p.y -= origin.y;
}
}
..... ..... .... 在主要的小行星类。我想制作一个多边形,这是我的船。我怎样才能把参数放在这里?
public static void main (String[] args) {
Asteroids a = new Asteroids();
a.repaint();
我想创建一个多边形的对象 我试过这个
Polygon p=new polygon({(0,2),(2,3),(3,1)},(2,3),3);
p.repaint();
我没有正确地参数。 任何帮助将不胜感激。
答案 0 :(得分:0)
在构造函数中,您需要创建一个类型为Point
的数组,用于初始化新的Point
个对象,如下所示:
new Point[] {new Point(0,2),new Point(2,3),new Point(3,1)}
然后定义一个新的Point
:
new Point(2,3)
所以你的构造函数调用看起来像这样:
Polygon p = new Polygon(
new Point[] {new Point(0,2),new Point(2,3),new Point(3,1)},
new Point(2,3),
3);