Morpher : Modifier

Morpher - superclass: modifier; super-superclass:MAXWrapper - classID: #(398157908, -1513381213)

Constructor

Morpher ...

Note: This class is not available in Autodesk VIZ.

Properties

<Morpher>.Spinner_Minimum Float default: 0.0

The minimum limit.

<Morpher>.Spinner_Maximum Float default: 100.0

The maximum limit.

<Morpher>.Use_Limits Integer default: 1 -- Integer

Enable/disable limits.

<Morpher>.Use_Selection Integer default: 0

Turn on to limit morphing to vertices selected in a modifier below the Morpher modifier in the modifier stack.

<Morpher>.Value_Increments Integer default: 1

 

<Morpher>.Autoload_of_targets Integer default: 0

Turn this on to allow animated targets to be updated dynamically by the Morpher modifier.

The following methods provide enhanced access to the Morpher modifier.

Methods

<boolean>IsValidMorpherMod <Modifier_class>Modifier

Returns true when the supplied modifier is a valid Morpher modifier, false otherwise.

<boolean>WM3_MC_BuildFromNode <Morpher_Class>Morpher <integer>channel_index <geometry_class>target_object

Adds the object as target to the specified channel of the specified morpher modifier. Returns true on success.

Example:

WM3_MC_BuildFromNode $Teapot01.morpher 1 $Teapot02

true

<boolean>WM3_MC_Delete <Morpher_Class>Morpher <integer>channel_index

Deletes the target from the specified channel of the specified morpher modifier. Returns true on success.

Example:

WM3_MC_Delete $Teapot01.morpher 1

true

<float>WM3_MC_GetLimitMAX <Morpher_Class>Morpher <integer>channel_index

Returns the max. limit of the specified channel of the specified morpher modifier.

Example:

WM3_MC_GetLimitMAX $Teapot01.morpher 1

100.0

<float>WM3_MC_GetLimitMIN <Morpher_Class>Morpher <integer>channel_index

Returns the min. limit of the specified channel of the specified morpher modifier.

Example:

WM3_MC_GetLimitMIN $Teapot01.morpher 1

0.0

<float>WM3_MC_GetMemUse <Morpher_Class>Morpher <integer>channel_index

Returns the memory usage in bytes of the specified channel of the specified morpher modifier.

Example:

WM3_MC_GetMemUse $Teapot01.morpher 1

10600.0

<Point3>WM3_MC_GetMorphPoint <Morpher_Class>Morpher <integer>channel_index <integer>index

Returns the position of the indexed morph point (vertex) of the specified channel in the specified morpher modifier.

<float>WM3_MC_GetMorphWeight <Morpher_Class>Morpher <integer>channel_index <integer>index

Returns the weight of the indexed morph point (vertex) of the specified channel in the specified morpher modifier.

<string>WM3_MC_GetName <Morpher_Class>Morpher <integer>channel_index

Returns the name of the specified channel of the specified morpher modifier.

<node>WM3_MC_GetTarget <Morpher_Class>Morpher <integer>channel_index

Returns the target object of the specified channel of the specified morpher modifier.

<boolean>WM3_MC_GetUseLimits <Morpher_Class>Morpher <integer>channel_index

Returns true if the specified channel of the specified morpher modifier uses the limits, false otherwise.

<boolean>WM3_MC_GetUseVertexSel <Morpher_Class>Morpher <integer>channel_index

Returns true if the specified channel of the specified morpher modifier uses the vertex selection, false otherwise.

<float>WM3_MC_GetValue <Morpher_Class>Morpher <integer>channel_index

Returns the value of the specified channel of the specified morpher modifier.

<boolean>WM3_MC_HasData <Morpher_Class>Morpher <integer>channel_index

Returns true when the specified channel of the specified morpher modifier has target data, false otherwise.

<boolean>WM3_MC_HasTarget <Morpher_Class>Morpher <integer>channel_index

Returns true when the specified channel of the specified morpher modifier has a target object assigned, false otherwise.

<boolean>WM3_MC_IsActive <Morpher_Class>Morpher <integer>channel_index

Returns true when the specified channel of the specified morpher modifier is active, false otherwise.

<boolean>WM3_MC_IsValid <Morpher_Class>Morpher <integer>channel_index

Returns true when the specified channel of the specified morpher modifier is valid, false otherwise.

<integer>WM3_MC_NumMPts <Morpher_Class>Morpher <integer>channel_index

Returns the number of morph points (vertices) in the specified channel of the specified morpher modifier.

<integer>WM3_MC_NumPts <Morpher_Class>Morpher <integer>channel_index

Returns the total number of points (vertices) in the specified channel of the specified morpher modifier.

<boolean>WM3_MC_Rebuild <Morpher_Class>Morpher <integer>channel_index

Rebuilds the target in the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetActive <Morpher_Class>Morpher <integer>channel_index <boolean>active_state

Acivates/Deactivates the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetLimitMAX <Morpher_Class>Morpher <integer>channel_index <float>max_limit

Sets the max. limit for the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetLimitMIN <Morpher_Class>Morpher <integer>channel_index <float>min_limit

Sets the min. limit for the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetName <Morpher_Class>Morpher <integer>channel_index <string>new_name

Sets the name of the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetUseLimits <Morpher_Class>Morpher <integer>channel_index <boolean>use_limits

Activates limit usage for the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetUseVertexSel <Morpher_Class>Morpher <integer>channel_index <boolean>use_vert_sel

Activates vertex selection usage for the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_MC_SetValue <Morpher_Class>Morpher <integer>channel_index <float>new_value

Sets the value of the specified channel of the specified morpher modifier. Returns true on success.

<boolean>WM3_RebuildInternalCache <Morpher_Class>Morpher

Rebuilds the internal cache of the specified morpher modifier. Returns true on success.

<boolean>WM3_RefreshChannelListUI <Morpher_Class>Morpher

Refreshes the channel list of the specified morpher modifier. Returns true on success.

<boolean>WM3_RefreshChannelParamsUI <Morpher_Class>Morpher

Refreshes the channel parameters of the specified morpher modifier. Returns true on success.

<boolean>WM3_SetChannelPos <Morpher_Class>Morpher <Integer>new_pos

Scrolls the morpher UI to the specified channel. Returns true on success.

<boolean>WM3_SetChannelSel <Morpher_Class>Morpher <Integer>new_sel

Selects the specified channel of the specified morpher modifier. Returns true on success.

The following methods were added in 3ds Max 8:

 

WM3_MoveMorph <Morpher_Class>Morpher <Integer>old_pos <Integer>new_pos

Moves the indexed morph channel to the specified channel, leaving the old channel Empty and overwriting the new channel if not empty. Available in 3ds Max 8 and higher.

Example:

WM3_MoveMorph $Teapot01.morpher 1 10 --moves channel 1 to channel 10.

OK

 

WM3_SwapMorph <Morpher_Class>Morpher <Integer>first_pos <Integer>second_pos

Swaps the morph channels, preserving both channels. Either of the two channels can be empty. Available in 3ds Max 8 and higher.

Example:

WM3_SwapMorph $Teapot01.morpher 1 10 --moves channel 1 to channel 10 and channel 10 to channel 1.

OK

 

WM3_DeleteProgressiveMorphNode <Morpher_Class>Morpher <Integer>morph_channel <Integer>prog_morph_index

Deletes the specified progressive morph from the given morph channel. Available in 3ds Max 8 and higher.

Example:

--deletes the second progressive morph of channel one.

WM3_DeleteProgressiveMorphNode $Teapot01.morpher 1 2

OK

--if the channel is empty, returns false:

WM3_DeleteProgressiveMorphNode $Teapot01.morpher 100 1

false

 

WM3_AddProgressiveMorphNode <Morpher_Class>Morpher <Integer>morph_channel <Node>morph_target

Adds a progressive morph to the given morph channel. Available in 3ds Max 8 and higher.

Example:

--adds the node Teapot02 as progressive morph target of channel one.

WM3_AddProgressiveMorphNode $Teapot01.morpher 1 $Teapot02

OK

--if the node is invalid, returns false - in this case, cannot add itself:

WM3_AddProgressiveMorphNode $Teapot01.morpher 1 $Teapot01

false

 

WM3_GetProgressiveMorphNode <Morpher_Class>Morpher <Integer>morph_channel <Integer>prog_morph_index

Returns the progressive morph node with the given index from the specified morph channel. Available in 3ds Max 8 and higher.

Example:

--gets the second progressive morph target from channel one:

WM3_GetProgressiveMorphNode $Teapot01.morpher 1 2

$Ediable_Mesh:Teapot01 @ [0.0,0.0,0.0]

--if there is no such index or the channel is empty, returns undefined

WM3_GetProgressiveMorphNode $Teapot01.morpher 1 10

undefined

 

WM3_SetProgressiveMorphWeight <Morpher_Class>Morpher <Integer>morph_channel <Node>prog_morph_node <Float>weight

Sets the progressive morph weight for the target node in the specified morph channel to the supplied floating point value. Available in 3ds Max 8 and higher.

Note

that the value will NOT be converted implicitly from Integer to Float if supplied as Integer. Always provide a floating point value!

Example:

--sets the weight of Teapot02 in channel one to 25.0:

WM3_GetProgressiveMorphNode $Teapot01.morpher 1 $Teapot02 25.0

OK

 

WM3_GetProgressiveMorphWeight <Morpher_Class>Morpher <Integer>morph_channel <Node>prog_morph_node

Gets the progressive morph weight for the target node in the specified morph channel. Available in 3ds Max 8 and higher.

WM3_SetProgressiveMorphTension <Morpher_Class>Morpher <Integer>morph_channel <Float>tension

Sets the progressive morph tension of the specified morph channel to the supplied floating point value. Available in 3ds Max 8 and higher.

Example:

--sets the progressive morph tension of channel one to 0.3:

WM3_GetProgressiveMorphNode $Teapot01.morpher 1 0.3

OK

 

WM3_GetProgressiveMorphTension <Morpher_Class>Morpher <Integer>morph_channel

Gets the progressive morph tension of the specified morph channel as floating point value. Available in 3ds Max 8 and higher.

Example:

--gets the progressive morph tension of channel one:

WM3_GetProgressiveMorphNode $Teapot01.morpher 1

0.3

 

WM3_NumberOfProgressiveMorphs <Morpher_Class>Morpher <Integer>morph_channel

Returns the number of progressive morphs in the specified morph channel as integer. Available in 3ds Max 8 and higher.

 

WM3_CreateMarker <Morpher_Class>Morpher <Integer>morph_channel <String>marker_name

Creates a new marker with the given name in the specified morph channel. Available in 3ds Max 8 and higher.

WM3_NumberOfMarkers <Morpher_Class>Morpher

Returns the number of markers in the morph modifier as integer. Available in 3ds Max 8 and higher.

WM3_SetMarkerData <Morpher_Class>Morpher <Integer>marker_index <Integer>morph_channel <String>marker_name

Sets the marker data. Available in 3ds Max 8 and higher.

WM3_GetMarkerName <Morpher_Class>Morpher <Integer>marker_index

Returns the name of the indexed marker. Available in 3ds Max 8 and higher.

WM3_GetMarkerIndex <Morpher_Class>Morpher <Integer>marker_index

Returns the index of the indexed marker. Returns false if the index is out of range. Available in 3ds Max 8 and higher.

WM3_SetCurrentMarker <Morpher_Class>Morpher <Integer>marker_index

Sets the current marker to the indexed marker. Available in 3ds Max 8 and higher.

WM3_GetCurrentMarker <Morpher_Class>Morpher

Returns the index of the current marker. Available in 3ds Max 8 and higher.

WM3_DeleteMarker <Morpher_Class>Morpher <Integer>marker_index

Deletes the indexed marker. Available in 3ds Max 8 and higher.

 

See also

How To ... Enhance the Morpher Modifier With Floating Controls

Modifier Common Properties, Operators, and Methods

MAXWrapper Common Properties, Operators, and Methods

Value Common Properties, Operators, and Methods