c4d.modules.character.CAReferencePSD

class c4d.modules.character.CAReferencePSD
Allows to access the PSD referential data and functions.
Only used with a point pose in PSD Mode.

New in version R19.

Overview

CAReferencePSD.SetInterpolationMode

Sets the auto weighting interpolation mode.

CAReferencePSD.GetInterpolationMode

Returns the auto weighting interpolation mode.

CAReferencePSD.ForceJointAsDriver

Forces the joint index to be a driver.

CAReferencePSD.IsJointForcedAsDriver

Checks if the joint index is a user forced driver.

CAReferencePSD.ClearAllForcedDrivers

Removes all user defined joint as driver and let the system manage it automatically.

CAReferencePSD.RestoreReferencePose

Displays skeleton and user defined controller at the reference pose.

CAReferencePSD.UpdateReferencePose

Updates the current skeleton state as the PSD reference pose.

CAReferencePSD.ClearAllExternalControllers

Removes all external controllers assigned to the reference pose.

CAReferencePSD.GetExternalControllerCount

Return the number of external controllers associated with the reference pose.

CAReferencePSD.GetExternalController

Returns the controller assigned to the given index.

CAReferencePSD.GetExternalControllerMatrix

Returns the matrix stored at the given index.

CAReferencePSD.SetExternalControllerMatrix

Adds or adjusts the given controller global matrix to be part of the reference pose.

CAReferencePSD.RemoveExternalController

Removes the external controller at the given index.

Members

CAReferencePSD.SetInterpolationMode(self, interpMode)

Sets the auto weighting interpolation mode.

Parameters

interpMode (int) –

The interpolation mode to set:

CAMORPH_PSDINTERPOLATION_MODE_AXIS

Per joint axis.

CAMORPH_PSDINTERPOLATION_MODE_JOINT

Per joint interpolation (joint axis average).

CAMORPH_PSDINTERPOLATION_MODE_GLOBAL

Use one global value (joint average).

CAMORPH_PSDINTERPOLATION_MODE_DEFAULT

Default.

CAReferencePSD.GetInterpolationMode(self)

Returns the auto weighting interpolation mode.

Return type

int

Returns

The interpolation mode:

CAMORPH_PSDINTERPOLATION_MODE_AXIS

Per joint axis.

CAMORPH_PSDINTERPOLATION_MODE_JOINT

Per joint interpolation (joint axis average).

CAMORPH_PSDINTERPOLATION_MODE_GLOBAL

Use one global value (joint average).

CAMORPH_PSDINTERPOLATION_MODE_DEFAULT

Default.

CAReferencePSD.ForceJointAsDriver(self, jointIndex, forceDriver)

Forces the joint index to be a driver.

Note

If any of the joints is marked as a forced driver, only those are considered in automatic weighting.

Parameters
  • jointIndex (int) – The weight tag joint index to use as driver.

  • forceDriver (bool) – True if the joint is used as a driver, otherwise False.

CAReferencePSD.IsJointForcedAsDriver(self, jointIndex)

Checks if the joint index is a user forced driver.

Note

If any of the joints is marked as a forced driver, only those are considered in automatic weighting.

Parameters

jointIndex (int) – The weight tag joint index to use as driver.

Return type

bool

Returns

True if the joint is forced as a driver, otherwise False.

CAReferencePSD.ClearAllForcedDrivers(self)

Removes all user defined joint as driver and let the system manage it automatically.

CAReferencePSD.RestoreReferencePose(self)

Displays skeleton and user defined controller at the reference pose.

CAReferencePSD.UpdateReferencePose(self)

Updates the current skeleton state as the PSD reference pose.

CAReferencePSD.ClearAllExternalControllers(self)

Removes all external controllers assigned to the reference pose.

CAReferencePSD.GetExternalControllerCount(self)

Return the number of external controllers associated with the reference pose.

Return type

int

Returns

The external controller count.

CAReferencePSD.GetExternalController(self, controllerIndex)

Returns the controller assigned to the given index.

Parameters

controllerIndex (int) – The controller index: 0 <= controllerIndex < GetExternalControllerCount().

Return type

Optional[c4d.BaseObject]

Returns

The external controller, or None if the function failed.

CAReferencePSD.GetExternalControllerMatrix(self, controllerIndex)

Returns the matrix stored at the given index.

Parameters

controllerIndex (int) – The controller index: 0 <= controllerIndex < GetExternalControllerCount().

Return type

c4d.Matrix

Returns

The external controller global matrix, or a default c4d.Matrix() if the function failed.

CAReferencePSD.SetExternalControllerMatrix(self, controllerIndex, globalMatrix)

Adds or adjusts the given controller global matrix to be part of the reference pose.

Parameters
Return type

int

Returns

The index of the controller, NOTOK/-1 if invalid.

CAReferencePSD.RemoveExternalController(self, controllerIndex)

Removes the external controller at the given index.

Parameters

controllerIndex (int) – The controller index: 0 <= controllerIndex < GetExternalControllerCount().

Return type

bool

Returns

True if successful, otherwise False.