Class TLcdXYZPoint

All Implemented Interfaces:
ILcdBounded, ILcdBounds, ILcdPoint, ILcdPointList, ILcdPolypoint, ILcdShape, ILcd2DEditablePoint, ILcd2DEditableShape, ILcd3DEditablePoint, ILcd3DEditableShape, ILcdCloneable, Serializable, Cloneable
Direct Known Subclasses:
TLcdDWGPoint, TLcdMeasureXYZPoint, TLcdXYZMPoint

public class TLcdXYZPoint extends ALcd3DEditablePoint implements ILcd3DEditablePoint
This class provides an implementation of ILcd3DEditablePoint in the cartesian space.

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.

Use as a domain object

If you plan on using TLcdXYZPoint as a domain object (e.g. using ILcdModel.addElement), please note that two TLcdXYZPoint instances are considered to be equal if they describe the same location. If location does not uniquely identify your domain objects, please override equals/hashcode to take the additional properties into account. Alternatively, one could consider every class instance different, resulting in these equals/hashcode implementations:

  public boolean equals( Object aObject ) {
    return aObject == this;
  }

  public int hashCode() {
    return System.identityHashCode( this );
  }
 
Failing to respect equals/hashcode may result in undesired behavior, for example when performing spatial queries, used during painting.
See Also:
  • Constructor Details

    • TLcdXYZPoint

      public TLcdXYZPoint()
      Constructs a new TLcdXYZPoint at location (0,0,0).
    • TLcdXYZPoint

      public TLcdXYZPoint(ILcdPoint aPoint)
      Constructs and initializes a new TLcdXYZPoint with the same location as the given ILcdPoint.
      Parameters:
      aPoint - the point to be copied.
    • TLcdXYZPoint

      public TLcdXYZPoint(ILcdPoint aPoint, double aZ)
      Constructs and initializes a new TLcdXYZPoint at the given location.
      Parameters:
      aPoint - the point to be copied of which the first two coordinates will be used.
      aZ - the third coordinate.
    • TLcdXYZPoint

      public TLcdXYZPoint(double aX, double aY, double aZ)
      Constructs and initializes a new TLcdXYPoint with the specified x, y, and z coordinates.
      Parameters:
      aX - the x coordinate.
      aY - the y coordinate.
      aZ - the z coordinate.
  • Method Details

    • move3D

      public void move3D(double aX, double aY, double aZ)
      Description copied from interface: ILcd3DEditableShape
      Moves this ILcd3DEditableShape to the given point in the 3D space. The focus point is used as the handle by which the shape is moved.
      Specified by:
      move3D in interface ILcd3DEditableShape
      Parameters:
      aX - the x coordinate of the point.
      aY - the y coordinate of the point.
      aZ - the z coordinate of the point.
    • getX

      public final double getX()
      Description copied from interface: ILcdPoint
      Returns the x coordinate of this ILcdPoint.
      Specified by:
      getX in interface ILcdPoint
      Returns:
      the x coordinate of this ILcdPoint.
    • getY

      public final double getY()
      Description copied from interface: ILcdPoint
      Returns the y coordinate of this ILcdPoint.
      Specified by:
      getY in interface ILcdPoint
      Returns:
      the y coordinate of this ILcdPoint.
    • getZ

      public final double getZ()
      Description copied from interface: ILcdPoint
      Returns the z coordinate of this ILcdPoint.
      Specified by:
      getZ in interface ILcdPoint
      Overrides:
      getZ in class ALcd2DEditablePoint
      Returns:
      0.
    • cloneAs2DEditablePoint

      public ILcd2DEditablePoint cloneAs2DEditablePoint()
      Description copied from interface: ILcdPoint
      Returns a copy of this ILcdPoint that is also an ILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable,
      Specified by:
      cloneAs2DEditablePoint in interface ILcdPoint
      Returns:
      a copy of this ILcdPoint that is also an ILcd2DEditablePoint. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdPoint object may be read-only.
      See Also:
    • cloneAs3DEditablePoint

      public ILcd3DEditablePoint cloneAs3DEditablePoint()
      Description copied from interface: ILcdPoint
      Returns a copy of this ILcdPoint that is also an ILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable,
      Specified by:
      cloneAs3DEditablePoint in interface ILcdPoint
      Returns:
      a copy of this ILcdPoint that is also an ILcd3DEditablePoint. This makes sure that all three dimensions of the copy are writable, even if the original ILcdPoint object may be read-only.
      See Also:
    • cloneAs2DEditableBounds

      public ILcd2DEditableBounds cloneAs2DEditableBounds()
      Description copied from interface: ILcdBounds
      Returns a copy of this ILcdBounds object that is also an ILcd2DEditableBounds. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      Specified by:
      cloneAs2DEditableBounds in interface ILcdBounds
      Returns:
      a copy of this ILcdBounds object that is also an ILcd2DEditableBounds. This makes sure that the first two dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      See Also:
    • cloneAs3DEditableBounds

      public ILcd3DEditableBounds cloneAs3DEditableBounds()
      Description copied from interface: ILcdBounds
      Returns a copy of this ILcdBounds object that is also an ILcd3DEditableBounds. This makes sure that all three dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      Specified by:
      cloneAs3DEditableBounds in interface ILcdBounds
      Returns:
      a copy of this ILcdBounds object that is also an ILcd3DEditableBounds. This makes sure that all three dimensions of the copy are writable, even if the original ILcdBounds object may be read-only.
      See Also: