我对 World Wind 有疑问,而且我的英语不是很好,但是您会通过这两张图片理解我的问题:
我不知道为什么图像被“改变”......
这是我的代码:
public class WorldWindTemplate extends ApplicationTemplate
{
public WorldWindTemplate()
{
Configuration.setValue(AVKey.GLOBE_CLASS_NAME, EarthFlat.class.getName());
app = new AppFrame();
}
public class AppFrame extends ApplicationTemplate.AppFrame
{
private RenderableLayer coucheSP;
public AppFrame()
{
super(true, true, false);
coucheSP = new RenderableLayer();
coucheSP.setName("SP");
coucheSP.setPickEnabled(false);
Shapefile shapeFile = new Shapefile(new File("shapefile.shp"));
while (shapeFile.hasNext()) {
ShapefileRecord record = shapeFile.nextRecord();
VecBuffer vectorBuffer = record.getPointBuffer(0);
ShapeAttributes normalAttributes = new BasicShapeAttributes();
normalAttributes.setOutlineOpacity(1);
float[] ft = {0, 1, 0, 0, 1, 0, 1, 1};
Polygon polygon = new Polygon(vectorBuffer.getPositions());
polygon.setTextureImageSource("echiquier.gif", ft, 4);
polygon.setAttributes(normalAttributes);
coucheSP.addRenderable(polygon);
}
//Closing shape file
shapeFile.close();
insertBeforeCompass(getWwd(), coucheSP);
getWwd().getView().getGlobe().setElevationModel(new ZeroElevationModel());
}
}
}
在我的 shapefile 中,有一个具有 4 个角度的实体用于创建多边形。shapefile 是使用 QGIS 生成的。实际上,我真的需要在 World Wind 中显示相同的图像(和相同的像素)。
我试图为这个问题找到其他线程,但我找不到任何东西......
我是 World Wind 的初学者,如果您能给我一些帮助或提示,我将不胜感激。如果您需要更多信息或不明白某些内容,请告诉我。
编辑 30/07:
我可能有一个提示,看起来这是因为我创建 shapefile 时在 QGIS 中使用的投影。
有人知道我必须为法国使用(并由 WorldWind 支持)的投影吗?我试了一些,世界风不支持。
gov.nasa.worldwind.exception.WWRuntimeException: Unsupported projection
gov.nasa.worldwind.Projection.Unknown
at gov.nasa.worldwind.formats.shapefile.Shapefile.initialize(Unknown Source)
at gov.nasa.worldwind.formats.shapefile.Shapefile.initializeFromFile(Unknown Source)
at gov.nasa.worldwind.formats.shapefile.Shapefile.<init>(Unknown Source)
at gov.nasa.worldwind.formats.shapefile.Shapefile.<init>(Unknown Source)
引起的
Shapefile shapeFile = new Shapefile(new File("shapefile.shp"));