Interface ILspImageProjectionLayer
- All Superinterfaces:
ILcdLayer
,ILcdPropertyChangeSource
,ILcdSelection<Object>
,ILspEditableStyledLayer
,ILspLayer
,ILspStyledLayer
,Serializable
Interface for layers that can project images onto the 3D terrain in an
ILspView
. Images are cast by an
ILspImageProjector
, which is defined in the geographic reference
of this layer's model. Typically, this will be a geocentric reference. You can use
the builder
to create an image projection layer.
The only new methods introduced by this interface are
projectPoint(com.luciad.shape.ILcdPoint, ILspImageProjector, com.luciad.view.lightspeed.ILspView)
and
unProjectPoint(ILcdPoint, ILspImageProjector, ILspView)
.
They can be used to transform normalized coordinates within a projected
image to the geographic coordinates where that point in the image would
be projected and vice versa.
This interface is subject to change. Hence you should never implement it yourself. Instead you should use
the layer builder
to create an instance.- Since:
- 2012.0
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.luciad.view.lightspeed.layer.ILspLayer
ILspLayer.LayerType
-
Method Summary
Modifier and TypeMethodDescriptionprojectPoint
(ILcdPoint aPoint, ILspImageProjector aProjector, ILspView aView) Projects a point onto the 3D terrain.unProjectPoint
(ILcdPoint aPoint, ILspImageProjector aProjector, ILspView aView) Un-projects a point from the terrain onto the projector.Methods inherited from interface com.luciad.view.ILcdLayer
clearSelection, fireCollectedSelectionChanges, getIcon, getLabel, getModel, isEditable, isEditableSupported, isSelectable, isSelectableSupported, isVisible, selectObject, setIcon, setLabel, setSelectable
Methods inherited from interface com.luciad.util.ILcdPropertyChangeSource
addPropertyChangeListener, removePropertyChangeListener
Methods inherited from interface com.luciad.util.ILcdSelection
addSelectionListener, getSelectedObjects, getSelectionCount, isSelected, removeSelectionListener, selectedObjects
Methods inherited from interface com.luciad.view.lightspeed.layer.ILspEditableStyledLayer
setStyler
Methods inherited from interface com.luciad.view.lightspeed.layer.ILspLayer
addLayerStateListener, addStatusListener, getBounds, getCurrentViews, getLayerStyle, getLayerType, getMapScaleProvider, getModelXYZWorldTransformation, getPaintRepresentations, invalidate, isEditable, isVisible, isVisible, registerView, removeLayerStateListener, removeStatusListener, setEditable, setEditable, setLayerStyle, setVisible, setVisible, setVisible, unregisterView
Methods inherited from interface com.luciad.view.lightspeed.layer.ILspStyledLayer
getStyler
-
Method Details
-
projectPoint
Projects a point onto the 3D terrain. The resulting point is in model coordinates and does not take the altitude exaggeration factor of the view into account.- Parameters:
aPoint
- the 2D point on the projector, the point at(0, 0)
is in the upper left corner of the projector and the point at(1, 1)
is in the lower right corner of the projector.aProjector
- the image projectoraView
- the view- Returns:
- the point on the 3D terrain in model coordinates, or
null
if the point is not projected on the terrain
-
unProjectPoint
Un-projects a point from the terrain onto the projector. In other words this method returns the point of the projector that is projected onto the specified point. The returned point should be interpreted as follows:(0, 0)
is in the upper left corner of the projector(1, 1)
is in the lower right corner of the projectorz
is in[0,1]
where 0 is closest and 1 is furthest away
- Parameters:
aPoint
- the 3D point on the terrain in model coordinatesaProjector
- the image projectoraView
- the view- Returns:
- the point on the projector, or
null
if the point not projected on
-