Package com.luciad.shape.shape3D
Class TLcdExtrudedShape
java.lang.Object
com.luciad.shape.shape3D.TLcdExtrudedShape
- All Implemented Interfaces:
ILcdBounded
,ILcdShape
,ILcdEditableExtrudedShape
,ILcdExtrudedShape
,ILcdCache
,ILcdCloneable
,ILcdInvalidateable
,Serializable
,Cloneable
public class TLcdExtrudedShape
extends Object
implements ILcdEditableExtrudedShape, Cloneable, ILcdCache, ILcdInvalidateable
This class provides an implementation of
ILcdEditableExtrudedShape
.
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:
-
Field Summary
-
Constructor Summary
ConstructorDescriptionTLcdExtrudedShape
(ILcdShape aShape) TLcdExtrudedShape
(ILcdShape aShape, double aMinZ, double aMaxZ) -
Method Summary
Modifier and TypeMethodDescriptionvoid
Clears the cache.clone()
Creates and returns a copy of this object.boolean
contains2D
(double aX, double aY) Checks whether thisILcdShape
contains the given point in the 2D space.boolean
contains2D
(ILcdPoint aPoint) Checks whether thisILcdShape
contains the givenILcdPoint
in the 2D space.boolean
contains3D
(double aX, double aY, double aZ) Checks whether thisILcdShape
contains the given point in the 3D space.boolean
contains3D
(ILcdPoint aPoint) Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.boolean
Returns whether the given object has the same class and the same shape.Returns the shape that is used as a base for extrusion.Returns theILcdBounds
by which the geometry of thisILcdBounded
object is bounded.getCachedObject
(Object aKey) Looks up and returns the cached Object corresponding to the given key.Returns the focus point of thisILcdShape
.double
Returns the maximum Z value for extrusion.double
Returns the minimum Z value for extrusion.int
hashCode()
void
insertIntoCache
(Object aKey, Object aObject) Inserts a cache Object corresponding to the given key Object.void
Invalidates all cached values of this object.removeCachedObject
(Object aKey) Looks up and removes the cached Object corresponding to the given key.void
setBaseShape
(ILcdShape aBaseShape) Sets the base shape that is extruded.void
setMaximumZ
(double aMaximumZ) Sets the maximum Z value.void
setMinimumZ
(double aMinimumZ) Sets the minimum Z value.toString()
-
Field Details
-
fBaseShape
The base shape. Do not use this field directly, instead usesetBaseShape(com.luciad.shape.ILcdShape)
andgetBaseShape()
.
-
-
Constructor Details
-
TLcdExtrudedShape
public TLcdExtrudedShape() -
TLcdExtrudedShape
-
TLcdExtrudedShape
-
-
Method Details
-
getMinimumZ
public double getMinimumZ()Description copied from interface:ILcdExtrudedShape
Returns the minimum Z value for extrusion.- Specified by:
getMinimumZ
in interfaceILcdExtrudedShape
- Returns:
- the minimum Z value for extrusion.
-
setMinimumZ
public void setMinimumZ(double aMinimumZ) Description copied from interface:ILcdEditableExtrudedShape
Sets the minimum Z value.- Specified by:
setMinimumZ
in interfaceILcdEditableExtrudedShape
- Parameters:
aMinimumZ
- the minimum Z value.
-
getMaximumZ
public double getMaximumZ()Description copied from interface:ILcdExtrudedShape
Returns the maximum Z value for extrusion.- Specified by:
getMaximumZ
in interfaceILcdExtrudedShape
- Returns:
- the maximum Z value for extrusion.
-
setMaximumZ
public void setMaximumZ(double aMaximumZ) Description copied from interface:ILcdEditableExtrudedShape
Sets the maximum Z value.- Specified by:
setMaximumZ
in interfaceILcdEditableExtrudedShape
- Parameters:
aMaximumZ
- the maximum Z value.
-
getBaseShape
Description copied from interface:ILcdExtrudedShape
Returns the shape that is used as a base for extrusion.- Specified by:
getBaseShape
in interfaceILcdExtrudedShape
- Returns:
- the shape that is used as a base for extrusion.
-
setBaseShape
Description copied from interface:ILcdEditableExtrudedShape
Sets the base shape that is extruded.- Specified by:
setBaseShape
in interfaceILcdEditableExtrudedShape
- Parameters:
aBaseShape
- the base shape that is extruded.
-
contains2D
public boolean contains2D(double aX, double aY) Description copied from interface:ILcdShape
Checks whether thisILcdShape
contains the given point in the 2D space. Only the first two dimensions of theILcdShape
are considered.- Specified by:
contains2D
in 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:ILcdShape
Checks whether thisILcdShape
contains the givenILcdPoint
in the 2D space. Only the first two dimensions of theILcdShape
and theILcdPoint
are considered.- Specified by:
contains2D
in interfaceILcdShape
- Parameters:
aPoint
- theILcdPoint
to test.- Returns:
- the boolean result of the containment test.
- See Also:
-
contains3D
public boolean contains3D(double aX, double aY, double aZ) Description copied from interface:ILcdShape
Checks whether thisILcdShape
contains the given point in the 3D space.- Specified by:
contains3D
in 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:ILcdShape
Checks whether thisILcdShape
contains the givenILcdPoint
in the 3D space.- Specified by:
contains3D
in interfaceILcdShape
- Parameters:
aPoint
- theILcdPoint
to test.- Returns:
- the boolean result of the containment test.
- See Also:
-
getFocusPoint
Description copied from interface:ILcdShape
Returns the focus point of thisILcdShape
.- Specified by:
getFocusPoint
in interfaceILcdShape
- Returns:
- the focus point of this
ILcdShape
.
-
getBounds
Description copied from interface:ILcdBounded
Returns theILcdBounds
by which the geometry of thisILcdBounded
object 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
undefined
bounds. You can create undefined bounds using the default constructors ofTLcdLonLatBounds
orTLcdXYBounds
.- Specified by:
getBounds
in interfaceILcdBounded
- Returns:
- the
ILcdBounds
by which the geometry of thisILcdBounded
object is bounded.
-
clone
Creates and returns a copy of this object. The contained editable shape is cloned.- Specified by:
clone
in interfaceILcdCloneable
- Overrides:
clone
in classObject
- See Also:
-
equals
Returns whether the given object has the same class and the same shape. -
hashCode
public int hashCode() -
toString
-
insertIntoCache
Description copied from interface:ILcdCache
Inserts a cache Object corresponding to the given key Object.- Specified by:
insertIntoCache
in interfaceILcdCache
- Parameters:
aKey
- the key Object that will be used to identify the Object. The key must therefore be a unique identifier, typically the caller itself:insertIntoCache(this, ...)
.aObject
- the Object to be cached.
-
getCachedObject
Description copied from interface:ILcdCache
Looks up and returns the cached Object corresponding to the given key.- Specified by:
getCachedObject
in interfaceILcdCache
- Parameters:
aKey
- the key Object that was used for storing the cache Object.- Returns:
- the cached Object, or null if there is no Object corresponding to the given key.
-
removeCachedObject
Description copied from interface:ILcdCache
Looks up and removes the cached Object corresponding to the given key.- Specified by:
removeCachedObject
in interfaceILcdCache
- Parameters:
aKey
- the key Object that was used for storing the cache Object.- Returns:
- the cached Object, or null if there was no Object corresponding to the given key.
-
clearCache
public void clearCache()Description copied from interface:ILcdCache
Clears the cache.- Specified by:
clearCache
in interfaceILcdCache
-
invalidateObject
public void invalidateObject()Description copied from interface:ILcdInvalidateable
Invalidates all cached values of this object. Call this method whenever one or more of this object's compositing values has been changed, to notify this object it needs to recompute its cached values.- Specified by:
invalidateObject
in interfaceILcdInvalidateable
-