Package com.luciad.shape


package com.luciad.shape
Everything related to representing three-dimensional shapes. Shapes have bounded geometries, and they may have additional attributes. The geometries are generally specified by means of point containment tests.

Elementary shapes like points and boxes are read-only. Subpackages of this package provide extended interfaces that also allow to change the shapes (they become 'movable' in two or three dimensions). The default read-only shapes can be more efficient, as they can be safely shared without risk of unwanted side-effects. A bounding box (which is a shape in its own right) is a typical example: a shape can return its read-only bounding box without having to worry about other objects changing it.

Specific implementations of shapes make a distinction between different topologies, e.g. a cartesian topology with xyz coordinates or a spherical topology with longitude/latitude coordinates. Although the implementations are different, the classes can be used in the same way, thru their interfaces.

This package also contains abstract utility classes. These classes provide the basis for implementations of shapes that are essentially two-dimensional, but that can also be used as three-dimensional shapes with the z-coordinate fixed to 0.

Since:
1.0
  • Class
    Description
    This abstract class provides a basis for implementing the ILcdBounds interface.
    This abstract class provides a basis for implementing the ILcdPoint interface.
    This abstract class provides a basis for implementing the ILcdShape interface.
    This abstract class provides a basis for implementing the ILcdShapeList interface.
    An ILcdAltitudeBounded object is an object that is bounded in its altitude.
    An ILcdArc is an ILcdShape that represents a general elliptical arc in the 2D space.
    An ILcdArcBand is an ILcdShape that represents a circular arc with a width, in the 2D space.
    An object implements ILcdBounded if its geometry is spatially bounded.
    An ILcdBounds object is an ILcdShape representing a 3D axis-aligned box.
    An ILcdCircle is an ILcdShape that represents a circle in the 2D space.
    A circle that is defined by 3 points (start, first intermediate and second intermediate).
    An ILcdCircularArc is an ILcdCurve that represents a general circular arc in the 2D space.
    A circular arc that is defined by a start point, end point, and a third point on the arc.
    A circular arc that is defined by a start point, end point and a bulge factor.
    A circular arc that is defined by a center point, radius, start angle and arc angle.
    An ILcdComplexPolygon is an ILcdShape that is described by a list of ILcdPolygon objects.
    A curve that is a connected sequence of other curves.
    A curve is a continuous, one-dimensional shape whose points can be retrieved using a single parameter.
    An ILcdEditableComplexPolygon is an ILcdComplexPolygon whose contents can be modified.
    A composite curve that can be edited: ILcdCompositeCurve.getCurves() returns an editable list, allowing to insert, remove, and replace curve elements.
    An ILcdEditableMatrixView is an ILcdMatrixView of which the values and associated points can be set.
    An ILcdEditablePolarMatrixView is an ILcdPolarMatrixView of which the values and associated points can be set.
    An ILcdEditableShapeList is an ILcdShapeList whose contents can be modified.
    A surface that can be edited: the exterior ring can be changed, and ILcdEditableSurface.getInteriorRings() returns an editable list, allowing to insert, remove, and replace interior elements.
    An ILcdEditableTimeBounds object is an ILcdTimeBounds object that can be changed.
    An ILcdEllipse is an ILcdShape that represents a general ellipse in the 2D space.
    An ILcdGeoBuffer shape defines a buffer or corridor around a given shape, adding a fixed width to the shape.
    An ILcdMatrixView represents a regular 2D data structure where values can be accessed through rows and columns.
    An ILcdPoint is an ILcdShape representing a 3D point.
    This interface presents an indexed list of ILcdPoint objects.
    Deprecated.
    All methods that used to be part of this interface have been moved to the ILcdPointList interface.
    An ILcdPolarMatrixView is an ILcdMatrixView which represents a polar 2D data structure where the values and associated points can be accessed through an azimuth and a radius.
    An ILcdPolygon is an ILcdShape that represents a closed polygon.
    An ILcdPolyline is an ILcdShape that represents a polyline.
    An ILcdPolypoint is an ILcdShape that represents a set of points.
    A ring is a closed curve, hence the start and end points are the same.
    An ILcdShape is a representation of a bounded 3D geometry.
    An ILcdShapeList is an ILcdShape that consists of other ILcdShape objects (Composite pattern [Gamma et al.]).
    A surface is a continuous, two-dimensional shape whose exterior boundary (separating it from infinite space) is defined by a single ILcdRing.
    An ILcdShape representing a text string at a given position and with the given dimensions.
    The text size is expressed in model units, for example 500 meters wide.
    An object implements ILcdTimeBounded if the object is bounded in time.
    An ILcdTimeBounds object is an object representing a time interval.
    Describes the boundedness of an object: BOUNDED denotes that the object is bounded: it has a time setting; UNBOUNDED denotes that the object is unbounded: it has always existed, or it will always exist; UNDEFINED denotes that the object is undefined: it has no time setting, or it is not (yet) initialized.
    ILcdValuedPolygon is the representation of a contour line.
    An ILcdVariableGeoBuffer shape defines a buffer or corridor around a given (3D) polyline, adding a width and height to the shape that is defined for every polyline point.
    Deprecated.
    This interface has been deprecated.
    This class provides an implementation of ILcdComplexPolygon.
    This class provides an implementation of ILcdEditableCompositeCurve.
    This class provides an implementation of ILcdShapeList that is also ILcdDataObject.
    This class provides an implementation of ILcdShapeList that is also ILcdDataObject and ILcdFeatured.
    Deprecated.
    To support has-a-shape or has-an-image, use TLcdHasGeometryAnnotation instead
    Provides information on which ILcdShape interfaces are implemented by instances of a data type.
    Contains a data type for objects that implement ILcdShape or one of its subtypes.
    This class provides an implementation of ILcdShapeList.
    Provides information on the ILcdShape instances that can be contained within a shape list.
    This class provides convenience methods for ILcdShape operations.
    This class provides an implementation of ILcdEditableSurface.
    This class provides an implementation of ILcdTimeBounds.
    Utility class containing several methods for processing ILcdTimeBounds objects.
    This class provides an implementation of ILcdValuedPolygon.