Track View Nodes

You can access and modify controllers in the Global Tracks and Video Post sections in Track View, and create new named global tracks. Among other things, these can be used to provide keyframeable parameters in your scripted utilities.

There are also methods associated with the Track View window. These methods are described in Track View.

MAXTVNode : Value is the class whose instances represent track view global track nodes. Each MAXTVNode can contain any number of MAXTVNodes or animation controllers. The MAXTVNodes and controllers within a MAXTVNode are shown as properties of the MAXTVNode so you navigate through the nesting using property access. A MAXTVNode itself does not store animation data, but rather acts as a container that can store one or more MAXTVNode or animation controller.

There are three track view nodes you can access through global variables: the root node to which you can add new custom tracks; the existing Global Tracks node which provides access to the global track controllers; and the Video Post tracks node which provides access to any video post controllers. These nodes are also accessible as properties on the root node.

Constructor

trackViewNodes 

Global variable containing the top-level World, or root, node in Track View. This variable is read-only.

   

globalTracks 

Global variable containing the top-level Global Tracks node in Track View. This variable is read-only.

   

videoPostTracks 

Global variable containing the top-level Video Post Track View node. This variable is read-only.

   

newTrackViewNode [ <maxtvnode> ] <name_string> [#hidden] 

if the <maxtvnode> argument is supplied, adds a sub-track node to it. If not, creates a new 'top-level' track in the Track View. If the optional #hidden flag is supplied, the node is not visible in the Track View.

Properties

<maxtvnode>.name String 

the track view node name as it appears in Track View

The sub-tracks and sub-controllers for a track view node are also shown as properties of the track view node. For example, the additional default properties for global trackViewNodes are:

   

TrackViewNodes.Global_Tracks MAXTVNode 
TrackViewNodes.Video_Post MAXTVNode 

And the additional default properties for global globalTracks are:

   

GlobalTracks.float float_list controller 
GlobalTracks.point3 point3_list controller 
GlobalTracks.position position_list controller 
GlobalTracks.rotation rotation_list controller 
GlobalTracks.scale scale_list controller 
GlobalTracks.Block_Control block_control controller 

Methods

deleteTrackViewNode [ <parent_maxtvnode> ] <maxtvnode> 

deletes the given node from the supplied parent, or the top-level if the parent is not specified

   

addTrackViewController <maxtvnode> <controller> <name> 

adds the sub-controller to the given Track View node. The

   

deleteTrackViewController <maxtvnode> <controller> 

deletes the controller from the given Track View node

EXAMPLES

-- access a video post track
videoPostTracks.glow.size = 5
-- set up some visible tracks for some keyframeable parameters in a rollout panel
my_tracks = newTrackViewNode "Grinner"
happy_ctrl = bezier_position ()
addTrackViewController my_tracks happy_ctrl "Happy"
...
-- plant keyframes in rollout spinner handler if the animate button is on
rollout grinner ...
(
...
on happy changed val do
(
...
happy_ctrl.value = [x, y, z]
...
)
...
)
-- add a new float controller to the global tracks float controller list
globalTracks.float.controller.available.controller = bezier_float ()

See Also