private int _altitudeCap = -1;
private double _scaleFactor = 1.0;
private double _altFactor = 1.0;
- // TODO: How to store rods (lifts) in data?
+ // MAYBE: How to store rods (lifts) in data?
private byte[] _pointTypes = null;
private byte[] _pointHeights = null;
private static final double DEFAULT_MODEL_SIZE = 10.0;
+ /** Minimum altitude cap */
public static final int MINIMUM_ALTITUDE_CAP = 100;
// Constants for point types
- public static final byte POINT_TYPE_WAYPOINT = 1;
- public static final byte POINT_TYPE_NORMAL_POINT = 2;
+ public static final byte POINT_TYPE_WAYPOINT = 1;
+ public static final byte POINT_TYPE_NORMAL_POINT = 2;
+ public static final byte POINT_TYPE_SEGMENT_START = 3;
/**
for (int i=0; i<numPoints; i++)
{
DataPoint point = _track.getPoint(i);
- _pointTypes[i] = (point.isWaypoint()?POINT_TYPE_WAYPOINT:POINT_TYPE_NORMAL_POINT);
- _pointHeights[i] = (byte) (point.getAltitude().getValue(Altitude.FORMAT_METRES) / 500);
+ _pointTypes[i] = (point.isWaypoint()?POINT_TYPE_WAYPOINT:(point.getSegmentStart()?POINT_TYPE_SEGMENT_START:POINT_TYPE_NORMAL_POINT));
+ _pointHeights[i] = (byte) (point.getAltitude().getValue(Altitude.Format.METRES) / 500);
}
}