0
如何将多边形复制到新位置。我使用e.isPopupTrigger()
来选择多边形,但我不知道如何复制它。复制功能类似于翻译功能吗? 例如polygon.translate(X,Y)?将多边形复制到新位置
谢谢。
编辑:
//这个代码不工作:-(
if(e.getSource() == Copy){
Polygon copyPolygon = new Polygon();
copyPolygon = selectedTriangle;
copyPolygon.translate(2, 2);
repaint();
}
的问题已经解决了这些代码:-)
if(e.getSource() == Copy){
Polygon copyPolygon = new Polygon(selectedTriangle.xpoints,selectedTriangle.ypoints,selectedTriangle.npoints);
copyPolygon.translate(10,10);
triangles.add(copyPolygon);
repaint();
}
另外'= new Polygon();'下一行是多余的。在克隆原始文件之前,不需要创建新的多边形。 – 2009-10-06 20:23:45
我试图改变代码,但我不断收到此错误:类型对象中的方法clone()不可见。 – Jessy 2009-10-06 20:24:59
啊,我的错误,Polygon实际上并不是可复制的。它给了你这个错误,因为clone是对象的一个受保护的成员,并没有被Polygon中的某个函数覆盖。在这种情况下,请按照我的第一个建议,这个建议应该创建一个与旧建筑相同点的新多边形。 – 2009-10-06 20:33:37