glmChannelTool

The glmChannelTool command returns the value of a Channel for a specific Entity when a simulation is running:
bool glmChannelTool [-isFloat] [-entityIds int] [-behaviorName string] [-channelName string] [-componentName string]
float glmChannelTool [-entityIds int] [-behaviorName string] [-channelName string] [-componentName string]
float[3] glmGetChannelValue [-entityIds int] [-behaviorName string] [-channelName string] [-componentName string]

Flags

Long name (short name) Argument types Properties Description
-entityId (-eid) int   ID of the queried Entity (can be found in the Crowd Visual Feedback). Only required if getAttr is "channelValue"
-behaviorName (-bn) string   Name of the behavior relative to the queried Channel (only if the queried Channel is a Behavior Channel)
-channelName (-cn) string   Name of the queried Channel. Only required if getAttr is different from "channelInfo"
-componentName (-con) string   Name of the component of the Channel to query (only if the queried Channel requires a Component)
-getAttr (-gat) string mandatory Attribute to get. Available attributes are: channelInfo, channelValue, isChannelFloat.

Return Value

This command returns either:
  • a boolean if the flag -getAttr is set to isChannelFloat
  • a float value if the flag -getAttr is set to channelValue and if the return type of the queried Channel is a float (can be checked with the -getAttr flag)
  • a float[3] value if the flag -getAttr is set to channelValue and if the return type of the queried Channel is a vector3 (can be checked with the -isFloat flag)
  • a string array if the flag -getAttr -getAttr is set to channelInfo is set to. Each string array item will have the following pattern [behaviorType];[channelName];[componentType] (thus none;entityId;none; means that the Channel entityId does not require any behavior name or component name to be fetched and none;bonePosition;boneName; means that the Channel bonePosition requires a bone name as component)

MEL Examples

glmChannelTool -getAttr "channelInfo";
// Result: none;entityId;none; none;particleId;none; none;entityTypeId;none;... //
glmChannelTool -getAttr "isChannelFloat" -channelName "entityId";
// Result: 1 // 
glmChannelTool -getAttr "channelValue" -entityId 1001 -channelName "entityId";
// Result: 1001 //
glmChannelTool -getAttr "channelValue" -entityId 1001 -channelName "bonePosition" -con "LeftArm";
// Result: 1.57347 1.256903 -1.553255 //

glmChannelTool -getAttr "channelValue" -entityId 1001 -behaviorName "beMotionShape1" -channelName "motionId";
// Result: 3 //

Python Examples

import maya.cmds as cmds
cmds.glmChannelTool(getAttr="channelInfo")
// Result: [u'none;currentFrame;none;', u'none;currentTime;none;',... //
cmds.glmChannelTool(getAttr="isChannelFloat", channelName="entityId")
// Result: True // 
cmds.glmChannelTool(getAttr="channelValue", entityId=1001, channelName="entityId")
// Result: 1001 //