Class TLcd2DEditableFeaturedPoint
- All Implemented Interfaces:
ILcdDataObject,ILcdBounded,ILcdPoint,ILcdShape,ILcd2DEditablePoint,ILcd2DEditableShape,ILcdCloneable,ILcdFeatured,Serializable,Cloneable
- Direct Known Subclasses:
TLcdMIFPoint
ILcd2DEditablePoint
and ILcdFeatured.
This class is thread-safe for concurrent read-only access of its contents. For read-write access, external locking must be used. Such locking is typically done at the model level.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionConstructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject, features, or display name.TLcd2DEditableFeaturedPoint(TLcd2DEditableFeaturedPoint a2DEditableFeaturedPoint) Constructs aTLcd2DEditableFeaturedPointthat is a clone of the givenTLcd2DEditableFeaturedPoint.TLcd2DEditableFeaturedPoint(String aDisplayName) Constructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject or features, with the given display name.TLcd2DEditableFeaturedPoint(String aDisplayName, ILcdFeatured aFeaturesObject) Constructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject, with the given features and display name.TLcd2DEditableFeaturedPoint(String aDisplayName, ILcdFeatured aFeaturesObject, ILcd2DEditablePoint a2DEditablePoint) Constructs aTLcd2DEditableFeaturedPointwith the givenILcd2DEditablePoint, features and display name. -
Method Summary
Modifier and TypeMethodDescriptionbooleancanSetFeature(int aIndex) Checks whether the specified feature is editable.clone()Creates and returns a copy of this object.Returns a copy of thisILcdPointthat is also anILcd2DEditablePoint.Returns a copy of thisILcdPointthat is also anILcd3DEditablePoint.booleancontains2D(double aX, double aY) Checks whether thisILcdShapecontains the given point in the 2D space.booleancontains2D(ILcdPoint aPoint) Checks whether thisILcdShapecontains the givenILcdPointin the 2D space.booleancontains3D(double aX, double aY, double aZ) Checks whether thisILcdShapecontains the given point in the 3D space.booleancontains3D(ILcdPoint aPoint) Checks whether thisILcdShapecontains the givenILcdPointin the 3D space.booleanReturns whether the given object has the same class, the same coordinates, the same features, and the same display name.Returns theILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.doublegetCosX()Returns cos(getX()* DEG2RAD ).doublegetCosY()Returns cos(getY()* DEG2RAD ).Returns the type of this data object.intgetFeature(int aIndex) Returns the featureObjectat the given index.intReturns the number of features.Returns the focus point of thisILcdShape.doublegetSinX()Returns sin(getX()* DEG2RAD ).doublegetSinY()Returns sin(getY()* DEG2RAD ).doublegetTanX()Returns tan(getX()* DEG2RAD ).doublegetTanY()Returns tan(getY()* DEG2RAD ).getValue(TLcdDataProperty aProperty) Returns the value of the given property.Convenience method that returns the value of the property with the given name.doublegetX()Returns the x coordinate of thisILcdPoint.doublegetY()Returns the y coordinate of thisILcdPoint.doublegetZ()Returns the z coordinate of thisILcdPoint.inthashCode()booleanhasValue(TLcdDataProperty aProperty) Indicates whether this data object has a value for the given property.booleanIndicates whether this data object has a value for the given property.voidmove2D(double aX, double aY) Moves thisILcd2DEditableShapeto the given point in the 2D space.voidMoves thisILcd2DEditableShapeto the given point in the 2D space.voidset2DEditablePoint(ILcd2DEditablePoint a2DEditablePoint) voidsetDefaultDisplayNameIndex(int aDefaultDisplayNameIndex) Sets the index of the feature to use as display name, if the display name has not been specified explicitly.voidsetFeature(int aIndex, Object aFeature) Sets the featureObjectat the given index.voidsetFeatures(ILcdFeatured aFeatures) voidsetValue(TLcdDataProperty aProperty, Object aValue) Sets the value of the given property for this data object.voidConvenience method that sets the value of the property with the given name.toString()Returns the display name.voidtranslate2D(double aDeltaX, double aDeltaY) Translates thisILcd2DEditableShapefrom its current position over the given translation vector in the 2D space.
-
Constructor Details
-
TLcd2DEditableFeaturedPoint
public TLcd2DEditableFeaturedPoint()Constructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject, features, or display name. -
TLcd2DEditableFeaturedPoint
Constructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject or features, with the given display name.- Parameters:
aDisplayName- a display name.
-
TLcd2DEditableFeaturedPoint
Constructs aTLcd2DEditableFeaturedPointthat doesn't have anyILcd2DEditablePointobject, with the given features and display name.- Parameters:
aDisplayName- a display name.aFeaturesObject- a set of features, that is, name/value pairs.
-
TLcd2DEditableFeaturedPoint
public TLcd2DEditableFeaturedPoint(String aDisplayName, ILcdFeatured aFeaturesObject, ILcd2DEditablePoint a2DEditablePoint) Constructs aTLcd2DEditableFeaturedPointwith the givenILcd2DEditablePoint, features and display name.- Parameters:
aDisplayName- a display name.aFeaturesObject- a set of features, that is, name/value pairs.a2DEditablePoint- a 2D editable point
-
TLcd2DEditableFeaturedPoint
Constructs aTLcd2DEditableFeaturedPointthat is a clone of the givenTLcd2DEditableFeaturedPoint.
-
-
Method Details
-
set2DEditablePoint
-
get2DEditablePoint
-
getX
public double getX()Description copied from interface:ILcdPointReturns the x coordinate of thisILcdPoint. -
getY
public double getY()Description copied from interface:ILcdPointReturns the y coordinate of thisILcdPoint. -
getZ
public double getZ()Description copied from interface:ILcdPointReturns the z coordinate of thisILcdPoint. -
getSinX
public double getSinX()Description copied from interface:ILcdPointReturns sin(getX()* DEG2RAD ). -
getSinY
public double getSinY()Description copied from interface:ILcdPointReturns sin(getY()* DEG2RAD ). -
getCosX
public double getCosX()Description copied from interface:ILcdPointReturns cos(getX()* DEG2RAD ). -
getCosY
public double getCosY()Description copied from interface:ILcdPointReturns cos(getY()* DEG2RAD ). -
getTanX
public double getTanX()Description copied from interface:ILcdPointReturns tan(getX()* DEG2RAD ). -
getTanY
public double getTanY()Description copied from interface:ILcdPointReturns tan(getY()* DEG2RAD ). -
cloneAs3DEditablePoint
Description copied from interface:ILcdPointReturns a copy of thisILcdPointthat is also anILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable,- Specified by:
cloneAs3DEditablePointin interfaceILcdPoint- Returns:
- a copy of this
ILcdPointthat is also anILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable, even if the originalILcdPointobject may be read-only. - See Also:
-
cloneAs2DEditablePoint
Description copied from interface:ILcdPointReturns a copy of thisILcdPointthat is also anILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable,- Specified by:
cloneAs2DEditablePointin interfaceILcdPoint- Returns:
- a copy of this
ILcdPointthat is also anILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable, even if the originalILcdPointobject may be read-only. - See Also:
-
getFocusPoint
Description copied from interface:ILcdShapeReturns the focus point of thisILcdShape.- Specified by:
getFocusPointin interfaceILcdShape- Returns:
- the focus point of this
ILcdShape.
-
getBounds
Description copied from interface:ILcdBoundedReturns theILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.If the geometry does not allow retrieving valid bounds (for example a polyline with 0 points) the return value is unspecified. It is highly recommended to return an
undefinedbounds. You can create undefined bounds using the default constructors ofTLcdLonLatBoundsorTLcdXYBounds.- Specified by:
getBoundsin interfaceILcdBounded- Returns:
- the
ILcdBoundsby which the geometry of thisILcdBoundedobject is bounded.
-
contains3D
public boolean contains3D(double aX, double aY, double aZ) Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the given point in the 3D space.- Specified by:
contains3Din interfaceILcdShape- Parameters:
aX- the x coordinate of the point.aY- the y coordinate of the point.aZ- the z coordinate of the point.- Returns:
- the boolean result of the containment test.
-
contains3D
Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the givenILcdPointin the 3D space.- Specified by:
contains3Din interfaceILcdShape- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains2D
public boolean contains2D(double aX, double aY) Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the given point in the 2D space. Only the first two dimensions of theILcdShapeare considered.- Specified by:
contains2Din interfaceILcdShape- Parameters:
aX- the x coordinate of the point.aY- the y coordinate of the point.- Returns:
- the boolean result of the containment test.
-
contains2D
Description copied from interface:ILcdShapeChecks whether thisILcdShapecontains the givenILcdPointin the 2D space. Only the first two dimensions of theILcdShapeand theILcdPointare considered.- Specified by:
contains2Din interfaceILcdShape- Parameters:
aPoint- theILcdPointto test.- Returns:
- the boolean result of the containment test.
- See Also:
-
translate2D
public void translate2D(double aDeltaX, double aDeltaY) Description copied from interface:ILcd2DEditableShapeTranslates thisILcd2DEditableShapefrom its current position over the given translation vector in the 2D space. Only the first two dimensions of theILcdShapeare considered. The third dimension is left unchanged.- Specified by:
translate2Din interfaceILcd2DEditableShape- Parameters:
aDeltaX- the x coordinate of the translation vector.aDeltaY- the y coordinate of the translation vector.
-
move2D
public void move2D(double aX, double aY) Description copied from interface:ILcd2DEditableShapeMoves thisILcd2DEditableShapeto the given point in the 2D space. The focus point is used as the handle by which the shape is moved. Only the first two dimensions of theILcdShapeare considered. The third dimension is left unchanged.- Specified by:
move2Din interfaceILcd2DEditableShape- Parameters:
aX- the x coordinate of the point.aY- the y coordinate of the point.
-
move2D
Description copied from interface:ILcd2DEditableShapeMoves thisILcd2DEditableShapeto the given point in the 2D space. The focus point is used as the handle by which the shape is moved. Only the first two dimensions of theILcdShapeand theILcdPointare considered. The third dimension is left unchanged.- Specified by:
move2Din interfaceILcd2DEditableShape- Parameters:
aPoint- theILcdPointto move to.- See Also:
-
getFeatureCount
public int getFeatureCount()Description copied from interface:ILcdFeaturedReturns the number of features.- Specified by:
getFeatureCountin interfaceILcdFeatured- Returns:
- the number of features.
-
getFeature
Description copied from interface:ILcdFeaturedReturns the featureObjectat the given index.- Specified by:
getFeaturein interfaceILcdFeatured- Parameters:
aIndex- a valid feature index.- Returns:
- the feature
Objectat the given index. - Throws:
IndexOutOfBoundsException- when an index is chosen greater than the result of getFeatureCount.- See Also:
-
getFeatures
-
setFeature
Description copied from interface:ILcdFeaturedSets the featureObjectat the given index.- Specified by:
setFeaturein interfaceILcdFeatured- Parameters:
aIndex- a valid feature index.aFeature- the new featureObject.- See Also:
-
canSetFeature
public boolean canSetFeature(int aIndex) Description copied from interface:ILcdFeaturedChecks whether the specified feature is editable.- Specified by:
canSetFeaturein interfaceILcdFeatured- Parameters:
aIndex- a valid feature index.- Returns:
- true if the feature can be set, false otherwise.
-
setFeatures
-
getDisplayName
-
setDefaultDisplayNameIndex
public void setDefaultDisplayNameIndex(int aDefaultDisplayNameIndex) Sets the index of the feature to use as display name, if the display name has not been specified explicitly. The default value is 0.- Parameters:
aDefaultDisplayNameIndex- a valid index in the list of features.
-
getDefaultDisplayNameIndex
public int getDefaultDisplayNameIndex()- Returns:
- the current index of the feature to use as display name, if the display name has not been specified explicitly.
-
clone
Creates and returns a copy of this object. The contained editable point is cloned. The contained feature list is copied without being cloned.- Specified by:
clonein interfaceILcdCloneable- Overrides:
clonein classObject- See Also:
-
equals
Returns whether the given object has the same class, the same coordinates, the same features, and the same display name.- Specified by:
equalsin interfaceILcdPoint- Overrides:
equalsin classObject- Parameters:
aObject- theObjectto compare to.- Returns:
- false if aObject is an ILcdPoint object with different 3D coordinates or the object is not an ILcdPoint. If the objects do have the same 3D coordinates, the return value is defined by the specific implementations of ILcdPoint and may still be false.
-
hashCode
public int hashCode() -
toString
Returns the display name. -
getValue
Description copied from interface:ILcdDataObjectReturns the value of the given property.
If the property is a collection, the returned value will never be null. If the property has not been set, an empty collection of the appropriate type will be returned (Set, List or Map).
The property must not be null, and must be declared in the
data object's typeor in one of its super types. Otherwise anIllegalArgumentExceptionis thrown.- Specified by:
getValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which the value is to be returned- Returns:
- the value of the given property for this data object
-
getDataType
Description copied from interface:ILcdDataObjectReturns the type of this data object. This can never benull.- Specified by:
getDataTypein interfaceILcdDataObject- Returns:
- the type of this data object
-
setValue
Description copied from interface:ILcdDataObjectSets the value of the given property for this data object. The implementation is allowed to throw an exception if the given value can't be set.
The given property must be declared in thedata object's typeor in one of its super types. In other words, getDataType().getProperties().contains( aProperty ) should always be true. Otherwise, the implementation should throw anIllegalArgumentException.- Specified by:
setValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which the value is to be setaValue- the value to set- See Also:
-
getValue
Description copied from interface:ILcdDataObjectConvenience method that returns the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.getValue(TLcdDataProperty)for more information.- Specified by:
getValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property of which the value is to be returned- Returns:
- the value of the property with the given name
- See Also:
-
setValue
Description copied from interface:ILcdDataObjectConvenience method that sets the value of the property with the given name.
If more than one property exists with the given name, the most specific property should be used (this is the property defined by the most specialized type in this object's data type hierarchy). SeeILcdDataObject.setValue(TLcdDataProperty, Object)for more information.- Specified by:
setValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property of which the value is to be setaValue- the value to set
-
hasValue
Description copied from interface:ILcdDataObjectIndicates whether this data object has a value for the given property.aPropertyis from theright data type, and this instance has a value for it: returnstrueaPropertyis from theright data type, and this instance has no value for it: returnsfalseaPropertyis not from theright data type: not allowed, you will get IllegalArgumentExceptionaPropertyisnull: not allowed, you will get NullPointerException
- Specified by:
hasValuein interfaceILcdDataObject- Parameters:
aProperty- the property for which to return whether a value is present or not.- Returns:
trueif this data object has a value for the given property,falseotherwise.
-
hasValue
Description copied from interface:ILcdDataObjectIndicates whether this data object has a value for the given property.
SeeILcdDataObject.hasValue(TLcdDataProperty)for more information.- Specified by:
hasValuein interfaceILcdDataObject- Parameters:
aPropertyName- the name of the property for which to return whether a value is present or not.- Returns:
trueif this data object has a value for the property with the given name,falseotherwise.
-