如何在 WorldWind 中绘制带有高程表示的线

How to draw a line with elevation representation in WorldWind

我想在地球上用高程表示画一条线,像这样:

我知道我可以用折线来表示一条线,但是如何填充线下面的space?

您可以使用多边形,只需为其指定经纬度相同但海拔不同的点即可:

ArrayList<Position> pathPositions = new ArrayList<Position>();
pathPositions.add(Position.fromDegrees(28, -106, 3e4));
pathPositions.add(Position.fromDegrees(28, -106, 3e0));
pathPositions.add(Position.fromDegrees(35, -107, 9e0));
pathPositions.add(Position.fromDegrees(35, -107, 9e4));
pathPositions.add(Position.fromDegrees(28, -106, 3e4));
Polygon pgon = new Polygon(pathPositions);

您可以使用路径来画线。 setOutlineMaterial 将绘制一个 "curtain" 类似于您想要的。

Path path = new Path(pathPositions); //Arraylist of positions
final BasicShapeAttributes attrs = new BasicShapeAttributes();
attrs.setInteriorOpacity(0.25);
attrs.setInteriorMaterial(Material.BLACK);
attrs.setOutlineMaterial(new Material(color));
attrs.setOutlineWidth(width);
path.setAttributes(attrs);
path.setDrawVerticals(true);
path.setAltitudeMode(WorldWind.ABSOLUTE);

看看 Path 高度模式,你希望它如何跟随地面。