IRdWeightBlend Interface Reference

Inherits IRsObject.

List of all members.

Public Member Functions

HRESULT AddWeight ([in] RtFloat x,[in] RtFloat y,[out, retval] RtDWORD *pdwId)
HRESULT AddClonedWeight ([in] RtFloat x,[in] RtFloat y,[in] RtDWORD id)
HRESULT RemoveWeight ([in] RtDWORD id)
HRESULT GetWeightCount ([out, retval] RtDWORD *pCnt)
HRESULT GetWeightId ([in] RtDWORD index,[out, retval] RtDWORD *pdwId)
HRESULT GetWeight ([in] RtDWORD id,[out] RtFloat *pX,[out] RtFloat *pY)
HRESULT SetWeight ([in] RtDWORD id,[in] RtFloat x,[in] RtFloat y)
HRESULT SetLastId ([in] RtDWORD id)
HRESULT SetPos ([in] RtFloat x,[in] RtFloat y)
HRESULT GetPos ([out] RtFloat *pX,[out] RtFloat *pY)
HRESULT GetBlendingWeights ([out] RtTripleIndex *pIDs,[out] RtVector3f *pWeights)
HRESULT GetSelectedId ([out, retval] RtDWORD *pdwId)
HRESULT SetSelectedId ([in] RtDWORD dwId)


Detailed Description

This interface provides an access to data object which holds dots and weights data for pose/morph/animation blending panel. It holds array of dots with their position and numeric identifier

Member Function Documentation

HRESULT IRdWeightBlend::AddWeight ( [in] RtFloat  x,
[in] RtFloat  y,
[out, retval] RtDWORD *  pdwId 
)

Adds new dot on specified position and returns its id

Parameters:
x - X coordinate (between 0 and 1 inclusive)
y - Y coordinate (between 0 and 1 inclusive)
Returns:
identifier of new dot which has been added

HRESULT IRdWeightBlend::AddClonedWeight ( [in] RtFloat  x,
[in] RtFloat  y,
[in] RtDWORD  id 
)

Adds cloned dot with Id specified, so no new id is generated. Used while cloning instances

Parameters:
x - X coordinate (between 0 and 1 inclusive)
y - Y coordinate (between 0 and 1 inclusive)
id - Id of dot to be added

HRESULT IRdWeightBlend::RemoveWeight ( [in] RtDWORD  id  ) 

Removes weight dot with specified Id

Parameters:
id - Id of dot to remove

HRESULT IRdWeightBlend::GetWeightCount ( [out, retval] RtDWORD *  pCnt  ) 

Returns the number of currently existing dots

Returns:
number of dots

HRESULT IRdWeightBlend::GetWeightId ( [in] RtDWORD  index,
[out, retval] RtDWORD *  pdwId 
)

Returns the Id of dot at specified index

Parameters:
index - index of dot
Returns:
id of dot

HRESULT IRdWeightBlend::GetWeight ( [in] RtDWORD  id,
[out] RtFloat *  pX,
[out] RtFloat *  pY 
)

Returns the coordinates of dot with specified Id. Coordinates are in interval (0..1) inclusive

Parameters:
id - id of dot
pX - returned x position of dot
pY - returned y position of dot

HRESULT IRdWeightBlend::SetWeight ( [in] RtDWORD  id,
[in] RtFloat  x,
[in] RtFloat  y 
)

Sets the coordinates of specified dot. Coordinates are in interval (0..1) inclusive

Parameters:
id - id of dot to setup
x - desired x position
y - desired y position

HRESULT IRdWeightBlend::SetLastId ( [in] RtDWORD  id  ) 

Sets the last generated Id. Used internally for cloning. When new dot is generated, it has id which equals last_id + 1

Parameters:
id - id to set

HRESULT IRdWeightBlend::SetPos ( [in] RtFloat  x,
[in] RtFloat  y 
)

Sets the current coordinates of blending pointer. Coordinates are in interval (0..1) inclusive

Parameters:
x - desired x position
y - desired y position

HRESULT IRdWeightBlend::GetPos ( [out] RtFloat *  pX,
[out] RtFloat *  pY 
)

Reads the current coordinates of blending pointer. Coordinates are in interval (0..1) inclusive

Parameters:
pX - returned X position
pY - returned Y position

HRESULT IRdWeightBlend::GetBlendingWeights ( [out] RtTripleIndex *  pIDs,
[out] RtVector3f pWeights 
)

Calculates current blending weights based on pointer position

Parameters:
- pIDs triple of Ids of nearest triangle. may contain -1 index if no available dot found
- pWeights barycentric weights of triangle vertices

HRESULT IRdWeightBlend::GetSelectedId ( [out, retval] RtDWORD *  pdwId  ) 

Returns Id of currently selected dot

Returns:
currently selected dot

HRESULT IRdWeightBlend::SetSelectedId ( [in] RtDWORD  dwId  ) 

Sets currently selected dot. Specify -1 for clearing selection

Parameters:
id - dot to select


Generated on Wed May 20 21:32:08 2009 for trueSpace7.6 SDK by  doxygen 1.5.5