User Tools

Site Tools


DzNodeAligner

Implements the logic of adjusting node positions to align them.

More...

Inherits :

Enumerations

Constructors

DAZ Script
DzNodeAligner ()

Methods

DAZ Script
DzErroraddNode ( DzNode node )
BooleancanAlign ()
voidclearNodes ()
BooleandoAlign ()
ArraygetNodes ()
AlignXgetXAlign ()
NumbergetXUnits ( UnitSize size=UnitsCM )
BooleangetXUseInterval ()
AlignYgetYAlign ()
NumbergetYUnits ( UnitSize size=UnitsCM )
BooleangetYUseInterval ()
AlignZgetZAlign ()
NumbergetZUnits ( UnitSize size=UnitsCM )
BooleangetZUseInterval ()
voidsetXAlign ( AlignX align )
voidsetXUnits ( Number units, UnitSize size=UnitsCM )
voidsetXUseInterval ( Boolean onOff )
voidsetYAlign ( AlignY align )
voidsetYUnits ( Number units, UnitSize size=UnitsCM )
voidsetYUseInterval ( Boolean onOff )
voidsetZAlign ( AlignZ align )
voidsetZUnits ( Number units, UnitSize size=UnitsCM )
voidsetZUseInterval ( Boolean onOff )

Signals

voidcanAlignChanged ( Boolean onOff )

Detailed Description

See Also:

Attention:

  • This object is provided by the Align pane plugin. It is only available when the Align pane plugin is activated and enabled.

Since:

  • 4.10.0.122

Enumerations


: AlignX

TODO: Add description.

  • NoneX - TODO: Add description.
  • AlignXLefts - TODO: Add description.
  • AlignXCenters - TODO: Add description.
  • AlignXOrigins - TODO: Add description.
  • AlignXRights - TODO: Add description.
  • StackXLefts - TODO: Add description.
  • StackXRights - TODO: Add description.
  • DistributeXLefts - TODO: Add description.
  • DistributeXCenters - TODO: Add description.
  • DistributeXOrigins - TODO: Add description.
  • DistributeXRights - TODO: Add description.

—–

: AlignY

TODO: Add description.

  • NoneY - TODO: Add description.
  • AlignYTops - TODO: Add description.
  • AlignYCenters - TODO: Add description.
  • AlignYOrigins - TODO: Add description.
  • AlignYBottoms - TODO: Add description.
  • StackYTops - TODO: Add description.
  • StackYBottoms - TODO: Add description.
  • DistributeYTops - TODO: Add description.
  • DistributeYCenters - TODO: Add description.
  • DistributeYOrigins - TODO: Add description.
  • DistributeYBottoms - TODO: Add description.

—–

: AlignZ

TODO: Add description.

  • NoneZ - TODO: Add description.
  • AlignZFronts - TODO: Add description.
  • AlignZCenters - TODO: Add description.
  • AlignZOrigins - TODO: Add description.
  • AlignZBacks - TODO: Add description.
  • StackZFronts - TODO: Add description.
  • StackZBacks - TODO: Add description.
  • DistributeZFronts - TODO: Add description.
  • DistributeZCenters - TODO: Add description.
  • DistributeZOrigins - TODO: Add description.
  • DistributeZBacks - TODO: Add description.

—–

: UnitSize

TODO: Add description.

  • UnitsM - TODO: Add description.
  • UnitsCM - TODO: Add description.
  • UnitsYD - TODO: Add description.
  • UnitsFT - TODO: Add description.
  • UnitsIN - TODO: Add description.

Constructors


DzNodeAligner()

Default Constructor.

Methods


DzError : addNode( DzNode node )

Adds a node to the list of node to be processed.

Parameter(s):

  • node - The node to add to the list.

Return Value:

  • DZ_NO_ERROR (0x00000000) if node was sucessfully added to the list, DZ_ALREADY_EXISTS_ERROR (0x00000050) if node is already in the list, and DZ_ILLEGAL_ARGUMENT_ERROR (0x00000060) if node is null.

Attention:

  • The order that nodes are added to the list impacts the results of the alignment operation. The first node in the list is used as the basis for any Align, Stack or Distribute operations. The last node in the list is used to establish the range for Distribute operations. All other nodes in the list are processed in their respective order within the list.

Boolean : canAlign()

Return Value:

  • true if the current list of nodes, in conjuction with the current option configuration, can be applied, otherwise false.

Attention:

  • At least one alignment axis must be set to a value other than “None.” Aligning “To Grid” (UseInterval) requires at least one (1) node to be added. Aligning without using an interval requires at least two (2) nodes to be added. Distributing, with or without using an interval, requires at least three (3) nodes to be added. If any “UseInterval” option is active, the corresponding value must be greater than 0. No more than one (1) node within the hierarchy of a given skeleton can be added.

See Also:


void : clearNodes()

Clears the list of nodes to be processed.


Boolean : doAlign()

Performs an alignment of nodes, based on the current options set.

Return Value:

  • true if the alignment operation was successful, otherwise false.

See Also:


Array : getNodes()

Return Value:

  • The list of nodes that alignment operations will be performed on (if any), otherwise an empty list.

AlignX : getXAlign()

Return Value:

  • The align operation to perform along the X axis.

Number : getXUnits( UnitSize size=UnitsCM )

Parameter(s):

  • size - The size of units to get.

Return Value:

  • The number of units along the X axis, in the specified size.

Boolean : getXUseInterval()

Return Value:

  • true if using an interval along the X axis is enabled, otherwise false.

AlignY : getYAlign()

Return Value:

  • The align operation to perform along the Y axis.

Number : getYUnits( UnitSize size=UnitsCM )

Parameter(s):

  • size - The size of units to get.

Return Value:

  • The number of units along the Y axis, in the specified size.

Boolean : getYUseInterval()

Return Value:

  • true if using an interval along the Y axis is enabled, otherwise false.

AlignZ : getZAlign()

Return Value:

  • The align operation to perform along the Z axis.

Number : getZUnits( UnitSize size=UnitsCM )

Parameter(s):

  • size - The size of units to get.

Return Value:

  • The number of units along the Z axis, in the specified size.

Boolean : getZUseInterval()

Return Value:

  • true if using an interval along the Z axis is enabled, otherwise false.

void : setXAlign( AlignX align )

Sets the align operation to perform along the X axis.

Parameter(s):

  • align - The align operation to perform.

void : setXUnits( Number units, UnitSize size=UnitsCM )

Sets the interval to use along the X axis.

Parameter(s):

  • units - The number of units to set.
  • size - The size of the unit to set.

void : setXUseInterval( Boolean onOff )

Sets whether or not to use an interval along the X axis.

Parameter(s):

  • onOff - If true, the interval is used.

Attention:

  • Intervals can be used for Align (grid) and Stack (space) operations, but have no meaning for Distribute operations.

void : setYAlign( AlignY align )

Sets the align operation to perform along the Y axis.

Parameter(s):

  • align - The align operation to perform.

void : setYUnits( Number units, UnitSize size=UnitsCM )

Sets the interval to use along the Y axis.

Parameter(s):

  • units - The number of units to set.
  • size - The size of the unit to set.

void : setYUseInterval( Boolean onOff )

Sets whether or not to use an interval along the Y axis.

Parameter(s):

  • onOff - If true, the interval is used.

Attention:

  • Intervals can be used for Align (grid) and Stack (space) operations, but have no meaning for Distribute operations.

void : setZAlign( AlignZ align )

Sets the align operation to perform along the Z axis.

Parameter(s):

  • align - The align operation to perform.

void : setZUnits( Number units, UnitSize size=UnitsCM )

Sets the interval to use along the Z axis.

Parameter(s):

  • units - The number of units to set.
  • size - The size of the unit to set.

void : setZUseInterval( Boolean onOff )

Sets whether or not to use an interval along the Z axis.

Parameter(s):

  • onOff - If true, the interval is used.

Attention:

  • Intervals can be used for Align (grid) and Stack (space) operations, but have no meaning for Distribute operations.

Signals


void : canAlignChanged( Boolean onOff )

Signature:“canAlignChanged(bool)”

Emitted when the state of whether or not alignment is possible has changed.