Class SegmentPlaneRenderer
- java.lang.Object
-
- gov.nasa.worldwindx.applications.sar.segmentplane.SegmentPlaneRenderer
-
public class SegmentPlaneRenderer extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static class
SegmentPlaneRenderer.ControlPointInfo
protected static class
SegmentPlaneRenderer.OrderedText
protected static class
SegmentPlaneRenderer.RenderInfo
-
Field Summary
Fields Modifier and Type Field Description protected double
maxObjectSizeCoefficient
protected double
minObjectSize
protected PickSupport
pickSupport
protected java.util.Map<SegmentPlane,SegmentPlaneRenderer.RenderInfo>
renderInfoMap
-
Constructor Summary
Constructors Constructor Description SegmentPlaneRenderer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
begin(DrawContext dc, OGLStackHandler ogsh)
protected boolean
bindGeometryAttributes(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key, boolean disablePicking)
protected boolean
bindGeometryAttributesAsLine(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key, boolean disablePicking)
protected boolean
bindLabelAttributes(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key)
protected PickedObject
bindPickableObject(DrawContext dc, java.lang.Object userObject, java.lang.Object objectId)
protected void
bindPlaneVertexGeometry(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected java.awt.Rectangle
computeAverageLabelSize(SegmentPlaneRenderer.OrderedText[] text, int textCount)
Position
computeControlPointPosition(SectorGeometryList sgl, Globe globe, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint)
protected double
computeMaxSizeForPixels(Globe globe, SegmentPlane segmentPlane)
protected double
computeMinDistanceBetweenLabels(DrawContext dc, SegmentPlaneRenderer.OrderedText[] text, int textCount)
protected Vec4
computeNearestGridLineToPoint(Vec4 point, SegmentPlaneRenderer.RenderInfo renderInfo)
protected Vec4
computeNearestLineToPoint(Vec4 point, int count, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, Vec4 referenceCenter)
protected Vec4
computeNearestOutlineToPoint(Vec4 point, SegmentPlaneRenderer.RenderInfo renderInfo)
double
computeObjectSize(View view, Globe globe, SegmentPlane segmentPlane, java.lang.Object key, Vec4 point)
protected double
computeObjectSize(View view, Globe globe, SegmentPlane segmentPlane, java.lang.Object key, Vec4 point, boolean usePickSize)
protected static void
computePlaneFillIndices(int uStacks, int vStacks, java.nio.IntBuffer buffer)
protected static void
computePlaneGridIndices(int uStacks, int vStacks, java.nio.IntBuffer buffer)
protected void
computePlaneNormals(Globe globe, SegmentPlane segmentPlane, int indexCount, int vertexCount, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, java.nio.DoubleBuffer buffer)
protected static void
computePlaneOutlineIndices(int uStacks, int vStacks, int mask, java.nio.IntBuffer buffer)
protected void
computePlaneParameterization(Globe globe, SegmentPlane segmentPlane, int[] gridCellCounts, double[] gridCellParams)
protected void
computePlaneVertices(Globe globe, SegmentPlane segmentPlane, int uStacks, int vStacks, double uStep, double vStep, Vec4 referenceCenter, java.nio.DoubleBuffer buffer)
protected Position
computePositionOnPlane(SectorGeometryList sgl, Globe globe, SegmentPlane segmentPlane, double u, double v, boolean relativeToSurface)
protected double
computeSizeForPixels(View view, Vec4 point, double pixels, double minSize, double maxSize)
protected double
computeSurfaceElevation(SectorGeometryList sgl, Globe globe, Angle latitude, Angle longitude)
protected void
createBorderGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
createControlPointGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
protected SegmentPlaneRenderer.OrderedText
createLabel(DrawContext dc, SegmentPlane segmentPlane, Position position, AVList values, java.lang.Object key)
protected void
createSegmentPlaneGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
draw(DrawContext dc, SegmentPlane segmentPlane, java.awt.Point pickPoint, Layer layer)
protected void
drawAxisLabels(DrawContext dc, SegmentPlaneRenderer.OrderedText[] text, int startPos, int count, double averageSize, double minDistance)
protected void
drawAxisLabels(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawBorder(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo, Matrix modelview, double radius, double height)
protected void
drawBorderCap(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
drawBorderCylinder(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
drawControlPoint(DrawContext dc, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint, Position position, MarkerShape shape)
protected void
drawControlPointGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.ControlPointInfo controlPointInfo)
protected void
drawControlPointLabel(DrawContext dc, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint, Position position)
protected void
drawControlPoints(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawHorizontalAxisLabels(DrawContext dc, SegmentPlane segmentPlane)
protected void
drawLabel(DrawContext dc, SegmentPlane segmentPlane, Position position, AVList values, java.lang.Object key)
protected void
drawPlaneBackground(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawPlaneBorder(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawPlaneFillElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
drawPlaneGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawPlaneGrid(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawPlaneGridElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
drawPlaneOutline(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawPlaneOutlineElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
protected void
drawSegmentAltimeter(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawSegmentAltimeterGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawSegmentAltimeterLabel(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawSegmentPlane(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
drawVerticalAxisLabels(DrawContext dc, SegmentPlane segmentPlane)
protected void
end(DrawContext dc, OGLStackHandler ogsh)
double
getMaxObjectSizeCoefficient()
double
getMinObjectSize()
protected static int
getPlaneFillIndexCount(int uStacks, int vStacks)
protected static int
getPlaneGridIndexCount(int uStacks, int vStacks)
protected static int
getPlaneOutlineIndexCount(int uStacks, int vStacks, int mask)
protected static int
getPlaneVertexCount(int uStacks, int vStacks)
protected SegmentPlaneRenderer.RenderInfo
getRenderInfoFor(Globe globe, SegmentPlane segmentPlane)
protected MultiLineTextRenderer
getTextRendererFor(DrawContext dc, java.awt.Font font)
protected PickedObject
getTopPickedObject(DrawContext dc, java.awt.Point pickPoint, java.lang.Object pickedObjectId)
protected static Vec4
getVertex3(int position, java.nio.DoubleBuffer vertices)
Vec4
intersect(Globe globe, Line ray, SegmentPlane segmentPlane)
protected Vec4
intersectRayWithFill(Line ray, SegmentPlaneRenderer.RenderInfo renderInfo)
protected Vec4
intersectRayWithTriangleStrip(Line ray, int count, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, Vec4 referenceCenter)
void
pick(DrawContext dc, SegmentPlane segmentPlane, java.awt.Point pickPoint, Layer layer)
protected static void
putVertex3(Vec4 vec, int position, java.nio.DoubleBuffer vertices)
protected void
registerPickedObject(DrawContext dc, PickedObject pickedObject, Layer layer)
void
render(DrawContext dc, SegmentPlane segmentPlane)
protected void
resolveControlPointPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
resolvePlaneBackgroundPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
resolvePlaneGridPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
protected void
resolvePlaneOutlinePick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
void
setMaxObjectSizeCoefficient(double coefficient)
void
setMinObjectSize(double size)
-
-
-
Field Detail
-
renderInfoMap
protected java.util.Map<SegmentPlane,SegmentPlaneRenderer.RenderInfo> renderInfoMap
-
minObjectSize
protected double minObjectSize
-
maxObjectSizeCoefficient
protected double maxObjectSizeCoefficient
-
pickSupport
protected final PickSupport pickSupport
-
-
Method Detail
-
getMinObjectSize
public double getMinObjectSize()
-
setMinObjectSize
public void setMinObjectSize(double size)
-
getMaxObjectSizeCoefficient
public double getMaxObjectSizeCoefficient()
-
setMaxObjectSizeCoefficient
public void setMaxObjectSizeCoefficient(double coefficient)
-
render
public void render(DrawContext dc, SegmentPlane segmentPlane)
-
pick
public void pick(DrawContext dc, SegmentPlane segmentPlane, java.awt.Point pickPoint, Layer layer)
-
intersect
public Vec4 intersect(Globe globe, Line ray, SegmentPlane segmentPlane)
-
computeControlPointPosition
public Position computeControlPointPosition(SectorGeometryList sgl, Globe globe, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint)
-
computeObjectSize
public double computeObjectSize(View view, Globe globe, SegmentPlane segmentPlane, java.lang.Object key, Vec4 point)
-
getRenderInfoFor
protected SegmentPlaneRenderer.RenderInfo getRenderInfoFor(Globe globe, SegmentPlane segmentPlane)
-
getTextRendererFor
protected MultiLineTextRenderer getTextRendererFor(DrawContext dc, java.awt.Font font)
-
draw
protected void draw(DrawContext dc, SegmentPlane segmentPlane, java.awt.Point pickPoint, Layer layer)
-
drawSegmentPlane
protected void drawSegmentPlane(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
begin
protected void begin(DrawContext dc, OGLStackHandler ogsh)
-
end
protected void end(DrawContext dc, OGLStackHandler ogsh)
-
bindGeometryAttributes
protected boolean bindGeometryAttributes(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key, boolean disablePicking)
-
bindGeometryAttributesAsLine
protected boolean bindGeometryAttributesAsLine(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key, boolean disablePicking)
-
bindLabelAttributes
protected boolean bindLabelAttributes(DrawContext dc, SegmentPlane segmentPlane, java.lang.Object key)
-
bindPickableObject
protected PickedObject bindPickableObject(DrawContext dc, java.lang.Object userObject, java.lang.Object objectId)
-
getTopPickedObject
protected PickedObject getTopPickedObject(DrawContext dc, java.awt.Point pickPoint, java.lang.Object pickedObjectId)
-
registerPickedObject
protected void registerPickedObject(DrawContext dc, PickedObject pickedObject, Layer layer)
-
computePositionOnPlane
protected Position computePositionOnPlane(SectorGeometryList sgl, Globe globe, SegmentPlane segmentPlane, double u, double v, boolean relativeToSurface)
-
computeSurfaceElevation
protected double computeSurfaceElevation(SectorGeometryList sgl, Globe globe, Angle latitude, Angle longitude)
-
computePlaneParameterization
protected void computePlaneParameterization(Globe globe, SegmentPlane segmentPlane, int[] gridCellCounts, double[] gridCellParams)
-
computeObjectSize
protected double computeObjectSize(View view, Globe globe, SegmentPlane segmentPlane, java.lang.Object key, Vec4 point, boolean usePickSize)
-
computeSizeForPixels
protected double computeSizeForPixels(View view, Vec4 point, double pixels, double minSize, double maxSize)
-
computeMaxSizeForPixels
protected double computeMaxSizeForPixels(Globe globe, SegmentPlane segmentPlane)
-
drawPlaneGeometry
protected void drawPlaneGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawPlaneBackground
protected void drawPlaneBackground(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawPlaneOutline
protected void drawPlaneOutline(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawPlaneGrid
protected void drawPlaneGrid(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
bindPlaneVertexGeometry
protected void bindPlaneVertexGeometry(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
drawPlaneFillElements
protected void drawPlaneFillElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
drawPlaneOutlineElements
protected void drawPlaneOutlineElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
drawPlaneGridElements
protected void drawPlaneGridElements(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
resolvePlaneBackgroundPick
protected void resolvePlaneBackgroundPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
resolvePlaneOutlinePick
protected void resolvePlaneOutlinePick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
resolvePlaneGridPick
protected void resolvePlaneGridPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawPlaneBorder
protected void drawPlaneBorder(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawBorder
protected void drawBorder(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo, Matrix modelview, double radius, double height)
-
drawBorderCylinder
protected void drawBorderCylinder(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
drawBorderCap
protected void drawBorderCap(DrawContext dc, SegmentPlaneRenderer.RenderInfo renderInfo)
-
drawSegmentAltimeter
protected void drawSegmentAltimeter(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawSegmentAltimeterGeometry
protected void drawSegmentAltimeterGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawSegmentAltimeterLabel
protected void drawSegmentAltimeterLabel(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawControlPoints
protected void drawControlPoints(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawControlPoint
protected void drawControlPoint(DrawContext dc, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint, Position position, MarkerShape shape)
-
drawControlPointGeometry
protected void drawControlPointGeometry(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.ControlPointInfo controlPointInfo)
-
drawControlPointLabel
protected void drawControlPointLabel(DrawContext dc, SegmentPlane segmentPlane, SegmentPlane.ControlPoint controlPoint, Position position)
-
resolveControlPointPick
protected void resolveControlPointPick(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawAxisLabels
protected void drawAxisLabels(DrawContext dc, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo, java.awt.Point pickPoint, Layer layer)
-
drawHorizontalAxisLabels
protected void drawHorizontalAxisLabels(DrawContext dc, SegmentPlane segmentPlane)
-
drawVerticalAxisLabels
protected void drawVerticalAxisLabels(DrawContext dc, SegmentPlane segmentPlane)
-
drawAxisLabels
protected void drawAxisLabels(DrawContext dc, SegmentPlaneRenderer.OrderedText[] text, int startPos, int count, double averageSize, double minDistance)
-
drawLabel
protected void drawLabel(DrawContext dc, SegmentPlane segmentPlane, Position position, AVList values, java.lang.Object key)
-
createLabel
protected SegmentPlaneRenderer.OrderedText createLabel(DrawContext dc, SegmentPlane segmentPlane, Position position, AVList values, java.lang.Object key)
-
computeAverageLabelSize
protected java.awt.Rectangle computeAverageLabelSize(SegmentPlaneRenderer.OrderedText[] text, int textCount)
-
computeMinDistanceBetweenLabels
protected double computeMinDistanceBetweenLabels(DrawContext dc, SegmentPlaneRenderer.OrderedText[] text, int textCount)
-
createSegmentPlaneGeometry
protected void createSegmentPlaneGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
-
getPlaneFillIndexCount
protected static int getPlaneFillIndexCount(int uStacks, int vStacks)
-
getPlaneOutlineIndexCount
protected static int getPlaneOutlineIndexCount(int uStacks, int vStacks, int mask)
-
getPlaneGridIndexCount
protected static int getPlaneGridIndexCount(int uStacks, int vStacks)
-
getPlaneVertexCount
protected static int getPlaneVertexCount(int uStacks, int vStacks)
-
computePlaneFillIndices
protected static void computePlaneFillIndices(int uStacks, int vStacks, java.nio.IntBuffer buffer)
-
computePlaneOutlineIndices
protected static void computePlaneOutlineIndices(int uStacks, int vStacks, int mask, java.nio.IntBuffer buffer)
-
computePlaneGridIndices
protected static void computePlaneGridIndices(int uStacks, int vStacks, java.nio.IntBuffer buffer)
-
computePlaneVertices
protected void computePlaneVertices(Globe globe, SegmentPlane segmentPlane, int uStacks, int vStacks, double uStep, double vStep, Vec4 referenceCenter, java.nio.DoubleBuffer buffer)
-
computePlaneNormals
protected void computePlaneNormals(Globe globe, SegmentPlane segmentPlane, int indexCount, int vertexCount, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, java.nio.DoubleBuffer buffer)
-
createBorderGeometry
protected void createBorderGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
-
createControlPointGeometry
protected void createControlPointGeometry(Globe globe, SegmentPlane segmentPlane, SegmentPlaneRenderer.RenderInfo renderInfo)
-
intersectRayWithFill
protected Vec4 intersectRayWithFill(Line ray, SegmentPlaneRenderer.RenderInfo renderInfo)
-
computeNearestOutlineToPoint
protected Vec4 computeNearestOutlineToPoint(Vec4 point, SegmentPlaneRenderer.RenderInfo renderInfo)
-
computeNearestGridLineToPoint
protected Vec4 computeNearestGridLineToPoint(Vec4 point, SegmentPlaneRenderer.RenderInfo renderInfo)
-
computeNearestLineToPoint
protected Vec4 computeNearestLineToPoint(Vec4 point, int count, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, Vec4 referenceCenter)
-
intersectRayWithTriangleStrip
protected Vec4 intersectRayWithTriangleStrip(Line ray, int count, java.nio.IntBuffer indices, java.nio.DoubleBuffer vertices, Vec4 referenceCenter)
-
getVertex3
protected static Vec4 getVertex3(int position, java.nio.DoubleBuffer vertices)
-
putVertex3
protected static void putVertex3(Vec4 vec, int position, java.nio.DoubleBuffer vertices)
-
-