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


IMove_KC Interface

GetFrameAt
GetOriginPath
SetOriginPath
GetAxisPath
SetAxisPath
CreateAttributes
DefineTangential

The interface is implemented by Movements. The interface can be queried from the return of IDIObjGenerator.Create called with eType parameter set to eObjTypeMove member of the EObjectType enumeration.

See also Collision Path sampleInterface List


HRESULT GetFrameAt( double t, IFrame* frame )

Parameters

t - [in] Parameter for which the frame is being obtained

frame - [out, retval] returned IFrame interface

Remarks:

The method returns frame which corresponds to position and orientation defined by the movement at the moment of time. Note that t is assumed to be mapped to range [0, 1]. See more details at Movements


HRESULT GetOriginPath(ICurve **curve)

Parameters

curve - [out, retval] returned ICurve interface

Remarks:

The method gives access to path x(t) of origin of the parameterized frame. Actual type of the curve is normally more complex than basic curve. Query a relevant interface from the return to modify the curve. See Curves for more more details. The returned line implements at least ICurveFreeForm interface.


HRESULT SetOriginPath(ICurve *curve)

Parameters

curve - [in] ICurve interface to be attached to the movement as path of origin of the parameterized frame

Remarks:

The method attaches a curve created externally as path of origin  of the parameterized frame. The curve must have parameter in range [0, 1].


HRESULT GetAxisPath(int axis, ICurve **curve)

Parameters

axis - [in] identifies the curve. Valid values are: 0 - for curve u(t), which is the curve swept by x axis of the parameterized frame and 1 - for curve v(t) swept by y axis.

Remarks:

The method gives access to u and v curves of the Movement


HRESULT SetAxisPath(int axis, ICurve *curve)

Parameters

axis - [in] identifies the curve. Valid values are: 0 - for curve u(t), which is curve swept by x axis of the parameterized frame and 1 - for curve v(t) swept by y axis.

curve - [in] ICurve interface to be attached to the movement as its u or v curve.

Remarks:

The method attaches a curve created externally as u or v curve of the Movement . The curve must have parameter in range [0, 1].


HRESULT CreateAttributes(int type)

Parameters

type - [in] Identifies type of curves to be created

Remarks:

Call to this method will setup a default movement as translation along global x axis by 1.

If type is 0 the method will create all three curves of the movement as Free-form curves linearly interpolated between sampling points.

If type is 1 the method will create all three curves as Arc Spline Curves.

The movement can be further modified by accessing sampling frames via IFrameArray or by modifying individual curves. See movement for more details.


HRESULT DefineTangential()

Remarks:

The method constructs this as a canonical move from the path of this movement (the curve of of the origin).