|
|
TMoveObjectSpecification |
The TMoveObjectSpecification data structure is used to specify how to move the objects in a call to C_MoveObjects.
typedef struct {
int Size;
int MoveSpecifiedBy;
TVector Displacement;
double PolarDisplacementDirection;
double PolarDisplacementDistance;
TMoveObjectPoint NewPositionReferencePoint;
TVector NewPosition;
double RotationAngle;
TVector RotationCentre;
double RotationAxisAzimuth;
double RotationAxisDeclination;
} TMoveObjectSpecification;
Specifies the size, in bytes, of this data structure. Set this member to sizeof(TMoveObjectSpecification) before calling a function with a TMoveObjectSpecification parameter.
Specifies the type of move to perform. Can be sbDisplacement, sbPolarDisplacement, sbNewPosition, sbHorizontalRotation or sbGeneralRotation.
Only used when MoveSpecifiedBy is sbDisplacement.
A vector, with respect to global axes, that specifies the displacement applied to each point.
Only used when MoveSpecifiedBy is sbPolarDisplacement.
The azimuth direction measured in degrees, relative to global axes, and the distance, of the polar displacement applied to each point.
Only used when MoveSpecifiedBy is sbNewPosition.
each point will be offset to arrange that the point specified by NewPositionReferencePoint is moved to NewPosition. The point specified by NewPositionReferencePoint must be in the list of points passed to C_MoveObjects.
Only used when MoveSpecifiedBy is sbHorizontalRotation or sbGeneralRotation.
MoveSpecifiedBy is sbHorizontalRotation, each point will be rotated in the horizontal plane about RotationCentre, by an angle of RotationAngle, measured in degrees. Note that RotationCentre.Z, RotationAxisAzimuth and RotationAxisDeclination are not used when MoveSpecifiedBy is sbHorizontalRotation.MoveSpecifiedBy is sbGeneralRotation, each point will be rotated through an angle of RotationAngle, measured in degrees, around a specified axis. The axis has direction defined by RotationAxisAzimuth and RotationAxisDeclination angles, measured in degrees, and passes through RotationCentre.