public final class TLcdGrid2Grid extends Object implements ILcdModelXYWorldTransformation, Cloneable
ILcdModelXYWorldTransformation
defines a transformation between
an ILcdGridReference
model reference and an ILcdGridReference
ILcdXYWorldReference
.
It is required that the reference datum of the geodetic datum of the
ILcdGridReference
and the reference datum of the
ILcdXYWorldReference
are the same.
This class is thread safe.
TLcdGeodeticDatum.getRefDatum()
,
Serialized FormConstructor and Description |
---|
TLcdGrid2Grid()
Default constructor with
null ILcdGridReference
and null ILcdGridReference . |
TLcdGrid2Grid(ILcdModelReference aModelReferenceGrid,
ILcdXYWorldReference aXYWorldReferenceGrid)
Constructor with an
ILcdGridReference and an
ILcdGridReference . |
Modifier and Type | Method and Description |
---|---|
Object |
clone()
Implements a deep clone.
|
boolean |
equals(Object aObject) |
int |
getDiv()
Gets the number of divisions made for bounding box transformations.
|
ILcdModelReference |
getModelReference()
Gets the
ILcdModelReference of this TLcdGrid2Grid . |
ILcdXYWorldReference |
getXYWorldReference()
Gets the
ILcdXYWorldReference of this TLcdGrid2Grid . |
int |
hashCode() |
void |
modelBounds2worldSFCT(ILcdBounds aModelBounds,
ILcd2DEditableBounds aWorldBoundsSFCT)
Transforms model bounds into world bounds.
|
void |
modelPoint2worldSFCT(ILcdPoint aModelPoint,
ILcd2DEditablePoint aWorldPointSFCT)
Transforms a model point into a world point.
|
void |
setDiv(int aDiv)
The property
aDiv indicates the number of divisions
made for bounding box transformations from world to model in order
to approximate the bounding box of the model. |
void |
setModelReference(ILcdModelReference aModelReference)
Sets the
ILcdModelReference of this TLcdGrid2Grid . |
void |
setXYWorldReference(ILcdXYWorldReference aXYWorldReference)
Sets the
ILcdXYWorldReference of this TLcdGrid2Grid . |
void |
worldBounds2modelSFCT(ILcdBounds aWorldBounds,
ILcd3DEditableBounds aModelBoundsSFCT)
Transforms world bounds into model bounds.
|
void |
worldPoint2modelSFCT(ILcdPoint aWorldPoint,
ILcd3DEditablePoint aModelPointSFCT)
Transforms a world point into a model point.
|
public TLcdGrid2Grid()
null
ILcdGridReference
and null
ILcdGridReference
.public TLcdGrid2Grid(ILcdModelReference aModelReferenceGrid, ILcdXYWorldReference aXYWorldReferenceGrid)
ILcdGridReference
and an
ILcdGridReference
.aModelReferenceGrid
- ILcdModelReference that is also an ILcdGridReference.aXYWorldReferenceGrid
- ILcdXYWorldReference that is also an ILcdGridReference.public ILcdModelReference getModelReference()
ILcdModelReference
of this TLcdGrid2Grid
.getModelReference
in interface ILcdModelXYWorldTransformation
ILcdModelReference
of this TLcdGrid2Grid
.setModelReference(com.luciad.model.ILcdModelReference)
public void setModelReference(ILcdModelReference aModelReference)
ILcdModelReference
of this TLcdGrid2Grid
.setModelReference
in interface ILcdModelXYWorldTransformation
aModelReference
- ILcdModelReference that is also an ILcdGridReference.IllegalArgumentException
- when the model reference passed is not an
instance of ILcdGridReference
getModelReference()
public ILcdXYWorldReference getXYWorldReference()
ILcdXYWorldReference
of this TLcdGrid2Grid
.getXYWorldReference
in interface ILcdModelXYWorldTransformation
ILcdXYWorldReference
of this TLcdGrid2Grid
.setXYWorldReference(com.luciad.view.ILcdXYWorldReference)
public void setXYWorldReference(ILcdXYWorldReference aXYWorldReference)
ILcdXYWorldReference
of this TLcdGrid2Grid
.setXYWorldReference
in interface ILcdModelXYWorldTransformation
aXYWorldReference
- ILcdXYWorldReference that is also an ILcdGridReference.IllegalArgumentException
- when the world reference passed is not an
instance of ILcdGridReference
.getXYWorldReference()
public void setDiv(int aDiv)
aDiv
indicates the number of divisions
made for bounding box transformations from world to model in order
to approximate the bounding box of the model.
The number of point transformations performed is proportional
to aDiv*aDiv
.
The more divisions, the more precise the model bounding box will be.aDiv
- number of divisions to use for bounding box transformations.getDiv()
public int getDiv()
setDiv(int)
public void modelPoint2worldSFCT(ILcdPoint aModelPoint, ILcd2DEditablePoint aWorldPointSFCT) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
modelPoint2worldSFCT
in interface ILcdModelXYWorldTransformation
aModelPoint
- coordinate in model reference system.aWorldPointSFCT
- coordinate in world reference system upon completion of the method.TLcdOutOfBoundsException
- if the model point is outside the valid area of the projection.public void worldPoint2modelSFCT(ILcdPoint aWorldPoint, ILcd3DEditablePoint aModelPointSFCT) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
worldPoint2modelSFCT
in interface ILcdModelXYWorldTransformation
aWorldPoint
- coordinate in world reference system.aModelPointSFCT
- coordinate in model reference system upon completion of the method.TLcdOutOfBoundsException
- if the world point is outside the valid area of the projection.public void modelBounds2worldSFCT(ILcdBounds aModelBounds, ILcd2DEditableBounds aWorldBoundsSFCT) throws TLcdNoBoundsException
ILcdModelXYWorldTransformation
modelBounds2worldSFCT
in interface ILcdModelXYWorldTransformation
aModelBounds
- bounds in model reference system.aWorldBoundsSFCT
- bounds in world reference system upon completion of the method.TLcdNoBoundsException
- if the model bounds doesn't have valid corresponding bounds in world space, or if it is undefined
.public void worldBounds2modelSFCT(ILcdBounds aWorldBounds, ILcd3DEditableBounds aModelBoundsSFCT) throws TLcdOutOfBoundsException
ILcdModelXYWorldTransformation
worldBounds2modelSFCT
in interface ILcdModelXYWorldTransformation
aWorldBounds
- bounds in world reference system.aModelBoundsSFCT
- bounds in model reference system upon completion of the method.TLcdOutOfBoundsException
- if the world bounds are outside the valid area of the projection, or if it is undefined
.public Object clone()
clone
in interface ILcdCloneable
clone
in class Object
Object.clone()