DG Kernel (ActiveX) Documentation


Skip Navigation Links.
Start page
Quick Start
Search Page
Installation
What is new
Upgrading Native Apps
Licensing
Collapse ModelsModels
Collapse DG Kernel ControlsDG Kernel Controls
Collapse API ReferenceAPI Reference
Interface List
Vector Space
Collapse General GeometryGeneral Geometry
Collapse ModelModel
Collapse ViewView
Collapse General ComputingGeneral Computing
Collapse Samples and TutorialsSamples and Tutorials
Collapse GraphicsGraphics
Collapse Math ObjectsMath Objects
Collapse DeprecatedDeprecated
Redistribution
Model Viewer
Open Source
Support
Skip Navigation Links Go to DGKC docs Search Documentation


IFrame_DG Interface

IFrame_DG is implemented by Frames.

A standalone frame can be constructed with a IObjectGenerator_DG.Create("IPointMatrix_DG") call.

GetOrigin
GetOrigin1
SetOrigin
SetOrigin1
GetAxis
GetAxisRay
GetPlane
Translate
Translate1
TranslateGlobal
TranslateGlobal
Rotate
Rotate1
Rotate2
Rotate3
Rotate4
RotateGlobal
RotateGlobal1
RotateGlobal2
SetAxes
SetupAxes
Reset
ResetOrientation
Copy
Push
Pop
ToLocal
ToLocal1
ToGlobal
ToGlobal1
ToLocalVector
ToLocalVector1
ToGlobalVector
ToGlobalVector1
ToLocalFrame
ToGlobalFrame
Invert
Clone
IsSame
IsIdentity

Point_DG GetOrigin()

Coordinates of the returned point are global


void GetOrigin1(out double x, out double y, out double z)

Returns global coordinates of the origin


void SetOrigin(Point_DG origin)

origin mist have global coordinates


void SetOrigin1(double x, double y, double z)

x,y,z mist be global coordinates


void GetAxis(int index, out Vect_DG axis)

Coordinates of the returned vector are global


LineDg GetAxisRay(int index)


PlaneDg GetPlane(int index)


void Translate(Vect_DG vectBy)

vectBy is expected to have local coordinates (coordinates relative to the current state of the frame)


void Translate1(double vx, double vy, double vz)

The coordinates are expected to be local (relative to the current state of the frame)


void TranslateGlobal(Vect_DG vectBy)

Coordinates of vectBy are assumed to be global.


void TranslateGlobal(double vx, double vy, double vz)

The parameters are assumed to be global coordinates.


void Rotate(double angle, Vect_DG axis)

angle is expected in radians. axis is expected to have coordinates relative to the current state of the frame


void Rotate1(double angle, double vx, double vy, double vz)

angle is expected in radians. vx,vy,vz are expected to be relative to the current state of the frame.


void Rotate2(double angle, Line_DG axis)

angle is expected in radians. axis is expected to have coordinates relative to the current state of the frame.


void Rotate3(double angle, double xLocnAxis, double yLocnAxis, double zLocnAxis, double xDirAxis, double yDirAxis, double zDirAxis)

angle is expected in radians. The coordinates are expected to be relative to the current state of the frame.


void Rotate4(double angle, int axis)

angle is expected in radians. axis is a 0-based index of axis of this frame.


void RotateGlobal(double angle, Vect_DG axisGlobal)

angle is expected in radians. Coordinates of axisGlobal are assumed to be global.


void RotateGlobal1(double angle, Line_DG axisGlobal)

angle is expected in radians. Coordinates of axisGlobal are assumed to be global.


void RotateGlobal2(double angle, int axis)

angle is expected in radians. axis is a 0-based index of axis of this frame.


void SetAxes(int axisInd0, Vect_DG axis0, int axisInd1, Vect_DG axis1)

angle is expected in radians. Coordinates of axis0 and axis1 are assumed to be global.


void SetupAxes(int axis0, Vect_DG axis, int axis1)

This method is designed to define orientation of the axes when direction of only one axis is specified and direction of the others are not important so they can be constructed by an internal algorithm.

axis specifies direction of axis0-th axis. axis1-th axis is constructed to as orthogonal to axis and points into an unspecified direction. The remaining axis is constructed as orthogonal to the first two.


void Reset()

Resets to default state: This frame coincides with the global frame


void ResetOrientation()

Resets axes to default state: Axes of this frame coincide with axes of the global frame. The origin remains unchanged


void Copy(IFrame_DG frame)


void Push()

Pushed the current state of the frame into an internal state stack


void Pop()

Restores this frame to the last state stored with Push(). Pops the stack


Point_DG ToLocal(Point_DG point)

Returns a copy of point with coordinates converted from global to local (to coordinates relative to this).


void ToLocal1(ref Point_DG point)

Converts coordinates of point from global to local (to coordinates relative to this).


Point_DG ToGlobal(Point_DG point)

Returns a copy of point with coordinates converted from local to global.


void ToGlobal1(ref Point_DG point)

Converts coordinates of point from local to global.


Vect_DG ToLocalVector(Vect_DG vect)

Returns a copy of vect with coordinates converted from global to local.


void ToLocalVector1(ref Vect_DG vect)

Converts coordinates of vect from global to local.


Vect_DG ToGlobalVector(Vect_DG vect)

Returns a copy of vect with coordinates converted from local to global.


void ToGlobalVector1(ref Vect_DG vect)

Converts coordinates of vect from local to global.


void ToLocalFrame(IFrame_DG frame)

Converts coordinates of origin and axes of frame from global to local.


void ToGlobalFrame(IFrame_DG frame)

Converts coordinates of origin and axes of frame from local to global.


void Invert()

Inverts this frame. See Frames.


IFrame_DG Clone()


bool IsSame(IFrame_DG frame, double tolerance)

Returns true if frame is geometrically the same up to the tolerance.



bool IsIdentity(double tolerance)