protected abstract static class BasicMarkerShape.Shape extends java.lang.Object implements MarkerShape, Disposable
Modifier and Type | Field and Description |
---|---|
protected boolean |
applyOrientation
Indicates that the shape must apply heading, pitch, and roll.
|
protected java.lang.Object |
displayListCacheKey |
protected boolean |
isInitialized |
protected java.lang.String |
name |
protected GLUquadric |
quadric |
protected java.lang.String |
shapeType |
Modifier | Constructor and Description |
---|---|
protected |
Shape() |
Modifier and Type | Method and Description |
---|---|
protected Vec4 |
computeOrientationVector(DrawContext dc,
Vec4 point,
Vec4 normal,
Angle heading,
Angle pitch)
Compute a direction vector given a point, heading and pitch.
|
protected int[] |
createDisplayList(DrawContext dc,
double radius) |
void |
dispose()
Disposes of any internal resources allocated by the object.
|
protected abstract void |
doRender(DrawContext dc,
Marker marker,
Vec4 point,
double radius,
int[] dlResource) |
protected abstract int |
drawShape(DrawContext dc,
double radius) |
java.lang.String |
getName() |
java.lang.String |
getShapeType() |
protected void |
initialize(DrawContext dc) |
boolean |
isApplyOrientation()
Indicates whether or not the shape applies heading, pitch, and roll when it draws itself.
|
void |
render(DrawContext dc,
Marker marker,
Vec4 point,
double radius) |
void |
render(DrawContext dc,
Marker marker,
Vec4 point,
double radius,
boolean isRelative) |
void |
setApplyOrientation(boolean applyOrientation)
Specifies whether or not the shape applies heading, pitch, and roll when it renders.
|
protected boolean applyOrientation
protected java.lang.Object displayListCacheKey
protected boolean isInitialized
protected java.lang.String name
protected GLUquadric quadric
protected java.lang.String shapeType
protected Vec4 computeOrientationVector(DrawContext dc, Vec4 point, Vec4 normal, Angle heading, Angle pitch)
dc
- current draw contextpoint
- point at which to compute direction vectornormal
- surface normal at point
heading
- desired headingpitch
- desired pitchprotected int[] createDisplayList(DrawContext dc, double radius)
public void dispose()
Disposable
dispose
in interface Disposable
protected abstract void doRender(DrawContext dc, Marker marker, Vec4 point, double radius, int[] dlResource)
protected abstract int drawShape(DrawContext dc, double radius)
public java.lang.String getName()
public java.lang.String getShapeType()
getShapeType
in interface MarkerShape
protected void initialize(DrawContext dc)
public boolean isApplyOrientation()
true
, the shape may not apply all of the rotations.true
if orientation is applied to the rendered shape, false
if not.public void render(DrawContext dc, Marker marker, Vec4 point, double radius)
render
in interface MarkerShape
public void render(DrawContext dc, Marker marker, Vec4 point, double radius, boolean isRelative)
render
in interface MarkerShape
public void setApplyOrientation(boolean applyOrientation)
applyOrientation
- true
if the shape must apply heading, pitch, and roll (if they are supported
by the shape), false
if it the shape must not apply this orientation.