我尝试创建六边形并将其放置在opengl窗口中。我想将它们用作平铺地图。我当前的代码如下所示:
private Polygon generateTile(){
Polygon poly = new Polygon();
for(int i = 0; i < 6; ++i) {
poly.addPoint((float)Math.sin(i/6.0*2*Math.PI),
(float)Math.cos(i/6.0*2*Math.PI));
}
return poly;
}
private void generateTiles (){
Shape s;
Polygon p = generateTile();
for (int i = 0; i <= 2; i++) {
for (int j = 0; j <=10; j++) {
s=p.transform(Transform.createScaleTransform(Constants.TILE_SIZE, Constants.TILE_SIZE));
if (i%2==0) {
s.setLocation(s.getMaxX()*j*2, s.getMaxY()*i*2);
} else {
s.setLocation(s.getMaxX()*j*2+Constants.TILE_SIZE, s.getMaxY()*i*2);
}
tiles.add(s);
}
}
窗户:
问题在于,第2行应整合到第1行之下。
瓦片的实际偏移量不是其大小。
在灯架上有一个伟大的文章在这里
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句