public interface ILcdProcedureGeometryHandler
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.
TLcdProcedureGeometryCalculator
Modifier and Type | Method and Description |
---|---|
void |
beginAngleArc(ILcdPoint aCenter,
double aRadius,
double aStartAngle,
double aArcAngle,
double aBeginHeight,
double aEndHeight,
TLcdProcedureGeometryType aType)
Marks the start of an arc.
|
void |
beginProcedure(ILcdProcedure aProcedure)
Called to mark the beginning of the given procedure.
|
void |
beginProcedureLeg(ILcdProcedureLeg aLeg)
Called to mark the end of one procedure leg and the beginning of the next.
|
void |
endAngleArc()
Marks the end of a discretized arc.
|
void |
endProcedure()
Called to mark the end of the current procedure.
|
void |
handleArcSegment(ILcdPoint aP1,
ILcdPoint aP2,
int aIndex,
int aNumSegments,
TLcdProcedureGeometryType aType)
Handle a single segment of a discretized arc.
|
void |
handleLine(ILcdPoint aStartPoint,
ILcdPoint aEndPoint,
TLcdProcedureGeometryType aType)
Handle a line segment defined by two points.
|
void |
handlePoint(ILcdPoint aPoint,
TLcdProcedureGeometryType aType)
Handle the given point.
|
void handlePoint(ILcdPoint aPoint, TLcdProcedureGeometryType aType)
aPoint
- Point to handle.aType
- void handleLine(ILcdPoint aStartPoint, ILcdPoint aEndPoint, TLcdProcedureGeometryType aType)
aStartPoint
- The starting point of the line.aEndPoint
- The ending point of the line.aType
- void beginAngleArc(ILcdPoint aCenter, double aRadius, double aStartAngle, double aArcAngle, double aBeginHeight, double aEndHeight, TLcdProcedureGeometryType aType)
aCenter
- aRadius
- aStartAngle
- aArcAngle
- void handleArcSegment(ILcdPoint aP1, ILcdPoint aP2, int aIndex, int aNumSegments, TLcdProcedureGeometryType aType)
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.void endAngleArc()
void beginProcedureLeg(ILcdProcedureLeg aLeg)
beginProcedureLeg()
, e.g. to decide on label
positioning, will typically want to consider only the geometry of type
NORMAL
, and disregard connectors and decorations.aLeg
- The ILcdProcedureLeg
about to be processed.void beginProcedure(ILcdProcedure aProcedure)
aProcedure
- An ILcdProcedure
.void endProcedure()