Interface ILcdProcedureGeometryHandler


public interface ILcdProcedureGeometryHandler
Interface for a class that handles a procedure's geometry.

Attributes and relationships in AIS domain objects can be required or optional. When unspecified, an attribute or relationship is optional. Note that most optional attributes are modeled using features.

In future releases of AIS, optional attributes or relationship may be added to this interface. When this would happen, existing implementations may just return a specified default value for these new attributes or relationships (for instance 'null'). This will require a minimal effort to update existing code to a new version of AIS.

See Also:
  • Method Details

    • handlePoint

      void handlePoint(ILcdPoint aPoint, TLcdProcedureGeometryType aType)
      Handle the given point.
      Parameters:
      aPoint - Point to handle.
      aType -
    • handleLine

      void handleLine(ILcdPoint aStartPoint, ILcdPoint aEndPoint, TLcdProcedureGeometryType aType)
      Handle a line segment defined by two points.
      Parameters:
      aStartPoint - The starting point of the line.
      aEndPoint - The ending point of the line.
      aType -
    • beginAngleArc

      void beginAngleArc(ILcdPoint aCenter, double aRadius, double aStartAngle, double aArcAngle, double aBeginHeight, double aEndHeight, TLcdProcedureGeometryType aType)
      Marks the start of an arc. Arcs are automatically discretized by the geometry calculator, and a call to beginAngleArc() will always be followed by one or more calls to handleArcSegment() and a call to endAngleArc().
      Parameters:
      aCenter -
      aRadius -
      aStartAngle -
      aArcAngle -
    • handleArcSegment

      void handleArcSegment(ILcdPoint aP1, ILcdPoint aP2, int aIndex, int aNumSegments, TLcdProcedureGeometryType aType)
      Handle a single segment of a discretized arc.
      Parameters:
      aP1 - The start point of the segment.
      aP2 - The end point of the segment.
      aIndex - The index number of this segment.
      aNumSegments - The total number of segments in the arc.
      aType - The geometry type.
    • endAngleArc

      void endAngleArc()
      Marks the end of a discretized arc.
    • beginProcedureLeg

      void beginProcedureLeg(ILcdProcedureLeg aLeg)
      Called to mark the end of one procedure leg and the beginning of the next. Note that "beginning" and "end" are relative terms, because the legs will be connected to each other with a smooth transition. Applications that want to use beginProcedureLeg(), e.g. to decide on label positioning, will typically want to consider only the geometry of type NORMAL, and disregard connectors and decorations.
      Parameters:
      aLeg - The ILcdProcedureLeg about to be processed.
    • beginProcedure

      void beginProcedure(ILcdProcedure aProcedure)
      Called to mark the beginning of the given procedure.
      Parameters:
      aProcedure - An ILcdProcedure.
    • endProcedure

      void endProcedure()
      Called to mark the end of the current procedure.