c4d.GeListNode

The base class of many other classes. This class is also a linked list which enables you to link several objects with each other.

Members

GeListNode.__setitem__(self, key, value)

Uses a description ID as a key into the container, and stores the specified data.

Note

Has to be used to set an object’s parameters data. Its corresponding function of the C++ API is C4DAtom::SetParameter().

Parameters:
GeListNode.__getitem__(self, key)

Uses a description ID as a key into the container, and retrieves the stored data.

Note

Has to be used to get an object’s parameters data. Its corresponding function of the C++ API is C4DAtom::GetParameter().

Parameters:key (int, list or DescID) – The description ID.
Return type:any
Returns:See __setitem__()
GeListNode.InsertBefore(obj)

Insert self before obj.

Note

Take care obj is a correct type. For example it is not possible to insert a document under a BaseObject. Check this using C4DAtom.GetClassification() and C4DAtom.GetType().

Warning

Forbidden to call in expressions (tags/nodes). Changing the document structure while an expression is evaluated will crash the application!
Parameters:obj (c4d.GeListNode) – The object to insert before.
GeListNode.InsertAfter(obj)

Insert self after obj.

Note

Take care obj is a correct type. For example it is not possible to insert a document under a BaseObject. Check this using C4DAtom.GetClassification() and C4DAtom.GetType().

Warning

Forbidden to call in expressions (tags/nodes). Changing the document structure while an expression is evaluated will crash the application!
Parameters:obj (c4d.GeListNode) – The object to insert after.
GeListNode.InsertUnder(obj)

Insert self under obj.

Note

Please take care, obj is a correct type. For example you cannot insert a document under an BaseObject. You can check it by calling C4DAtom.GetClassification() and C4DAtom.GetType().

Parameters:obj (c4d.GeListNode) – The object to insert under.
GeListNode.InsertUnderLast(obj)

Insert self as the last child of obj.

Note

Take care obj is a correct type. For example it is not possible to insert a document under a BaseObject. Check this using C4DAtom.GetClassification() and C4DAtom.GetType().

Warning

Forbidden to call in expressions (tags/nodes). Changing the document structure while an expression is evaluated will crash the application!
Parameters:obj (c4d.GeListNode) – The object to insert under.
GeListNode.GetNext()

Returns the next object in the list.

Return type:c4d.GeListNode or None
Returns:The next object.
GeListNode.GetPred()

Returns the previous object in the list.

Return type:c4d.GeListNode or None
Returns:The previous object.
GeListNode.GetUp()

Returns the parent object.

Return type:c4d.GeListNode or None
Returns:The parent object.
GeListNode.GetDown()

Returns the first child of this object in the list.

Return type:c4d.GeListNode or None
Returns:The first child object.
GeListNode.GetDownLast()

Returns the last child of this object in the list.

Return type:c4d.GeListNode or None
Returns:The first child object.
GeListNode.GetChildren()

Returns children in a list (not grandchild).

Return type:list of type GeListNode
Returns:All children in a list.
GeListNode.Remove()

Removes this node from a list.

Warning

Forbidden to call in expressions (tags/nodes). Changing the document structure while an expression is evaluated will crash the application!
GeListNode.GetDocument()

Get the document for this node.

Return type:c4d.documents.BaseDocument
Returns:The document.
GeListNode.GetListHead()

Returns the list head.

Return type:c4d.GeListHead
Returns:The list head, or None if the node is not attached to one.

Changed in version R19: The function now returns a c4d.GeListHead object.

GeListNode.GetBranchInfo([flags=GETBRANCHINFO_0])

New in version R19.

Returns information about which other nodes the node contains. For example objects contain tags.

Parameters:flags (int) –

The flags:

GETBRANCHINFO_0 None.
GETBRANCHINFO_ONLYWITHCHILDREN Only return branch if it is in use, i.e. has content.
GETBRANCHINFO_GELISTNODES Private.
GETBRANCHINFO_ONLYMODIFIABLE Private.
Return type:list of dict{‘head’, ‘name’, ‘id’, ‘flags’}
Returns:A list of dictionaries (None if the function failed) with the following information:

’head’: c4d.GeListHead: Either a c4d.GeListNode or a c4d.GeListHead for the branch, depending on flags.
’name’: str: The human readable name of the branch.
’id’: int: The base ID of the branch. For example VPbase, Mbase or Obase.
’flags’: int: The flags for the branch:
BRANCHINFOFLAGS_0 None.
BRANCHINFOFLAGS_ANIMATE Animate the nodes in this branch.
BRANCHINFOFLAGS_HIDEINTIMELINE If set, the branch does not show up in the timeline.
GeListNode.IsDocumentRelated()

Checks if the node is of a type that can be inserted into a BaseDocument

Return type:bool
Returns:True if the node is document related, otherwise False.
GeListNode.GetNBit(bit)

Raw access to a 64-bit bitfield, containing information about the node state.

Parameters:bit (int) –

Bit index:

NBIT_0  
NBIT_TL1_FOLD Folding bit for Timeline 1.
NBIT_TL2_FOLD Folding bit for Timeline 2.
NBIT_TL3_FOLD Folding bit for Timeline 3.
NBIT_TL4_FOLD Folding bit for Timeline 4.
NBIT_TL1_SELECT Selection bit for Timeline 1.
NBIT_TL2_SELECT Selection bit for Timeline 2.
NBIT_TL3_SELECT Selection bit for Timeline 3.
NBIT_TL4_SELECT Selection bit for Timeline 4.
NBIT_TL1_TDRAW  
NBIT_TL2_TDRAW  
NBIT_TL3_TDRAW  
NBIT_TL4_TDRAW  
NBIT_CKEY_ACTIVE Active point of animation path in editor.
NBIT_OM1_FOLD Folding bit for Object manager 1.
NBIT_OM2_FOLD Folding bit for Object manager 2.
NBIT_OM3_FOLD Folding bit for Object manager 3.
NBIT_OM4_FOLD Folding bit for Object manager 4.
NBIT_TL1_FOLDTR Track folding for Timeline 1.
NBIT_TL2_FOLDTR Track folding for Timeline 2.
NBIT_TL3_FOLDTR Track folding for Timeline 3.
NBIT_TL4_FOLDTR Track folding for Timeline 4.
NBIT_TL1_FOLDFC F-Curve folding for Timeline 1.
NBIT_TL2_FOLDFC F-Curve folding for Timeline 2.
NBIT_TL3_FOLDFC F-Curve folding for Timeline 3.
NBIT_TL4_FOLDFC F-Curve folding for Timeline 4.
NBIT_SOURCEOPEN  
NBIT_TL1_HIDE Hide in Timeline 1.
NBIT_TL2_HIDE Hide in Timeline 2.
NBIT_TL3_HIDE Hide in Timeline 3.
NBIT_TL4_HIDE Hide in Timeline 4.
NBIT_SOLO_ANIM Solo animation.
NBIT_SOLO_LAYER Solo layer.
NBIT_TL1_SELECT2  
NBIT_TL2_SELECT2  
NBIT_TL3_SELECT2  
NBIT_TL4_SELECT2  
NBIT_SOLO_MOTION Solo motion.
NBIT_CKEY_LOCK_T Lock key time.
NBIT_CKEY_LOCK_V Lock key value.
NBIT_CKEY_MUTE Mute key.
NBIT_CKEY_CLAMP Clamp key tangents.
NBIT_CKEY_BREAK Break key tangents.
NBIT_CKEY_KEEPVISUALANGLE Keep visual angle.
NBIT_CKEY_LOCK_O Lock key tangents angles.
NBIT_CKEY_LOCK_L Lock key tangents length.
NBIT_CKEY_AUTO Key auto tangents.
NBIT_CKEY_ZERO_O_OLD Deprecated.
NBIT_CKEY_ZERO_L_OLD Deprecated.
NBIT_TL1_FCSELECT F-Curve selection bit for Timeline 1.
NBIT_TL2_FCSELECT F-Curve selection bit for Timeline 2.
NBIT_TL3_FCSELECT F-Curve selection bit for Timeline 3.
NBIT_TL4_FCSELECT F-Curve selection bit for Timeline 4.
NBIT_CKEY_BREAKDOWN  
NBIT_TL1_FOLDMOTION Motion clip folding for Timeline 1.
NBIT_TL2_FOLDMOTION Motion clip folding for Timeline 2.
NBIT_TL3_FOLDMOTION Motion clip folding for Timeline 3.
NBIT_TL4_FOLDMOTION Motion clip folding for Timeline 4.
NBIT_TL1_SELECTMOTION Motion clip selection for Timeline 1.
NBIT_TL2_SELECTMOTION Motion clip selection for Timeline 2.
NBIT_TL3_SELECTMOTION Motion clip selection for Timeline 3.
NBIT_TL4_SELECTMOTION Motion clip selection for Timeline 4.
NBIT_OHIDE  
NBIT_TL_TBAKE  
NBIT_TL1_FOLDSM  
NBIT_TL2_FOLDSM  
NBIT_TL3_FOLDSM  
NBIT_TL4_FOLDSM  
NBIT_SUBOBJECT  
NBIT_LINK_ACTIVE  
NBIT_THIDE  
NBIT_SUBOBJECT_AM  
NBIT_PROTECTION PSR protection.
NBIT_NOANIM No animation.
NBIT_NOSELECT No selection.
NBIT_EHIDE Hide in viewport.
NBIT_REF XRef.
NBIT_NO_DD No drag and drop.
NBIT_REF_OHIDE XRef object hide.
NBIT_NO_DD No drag and drop.
NBIT_HIDEEXCEPTVIEWSELECT Hide in viewport except to viewport select.
NBIT_CKEY_WEIGHTEDTANGENT

New in version R17.032.

Weighted Tangent.

NBIT_CKEY_REMOVEOVERSHOOT

New in version R17.032.

Gradual Clamp of Tangent to avoid OverShooting.

NBIT_CKEY_AUTOWEIGHT

New in version R17.032.

Weight still adjusted even if Angle is User Defined.

NBIT_TAKE_LOCK

New in version R17.032.

A node in an override group cannot be changed.

NBIT_TAKE_OBJINGROUP

New in version R17.032.

The object is overridden by an override group.

NBIT_TAKE_EGROUPOVERIDDEN

New in version R17.032.

The object editor visibility is overridden by an override group.

NBIT_TAKE_RGROUPOVERIDDEN

New in version R17.032.

The object render visibility is overridden by an override group.

NBIT_MAX  
NBIT_PRIVATE_MASK1  
NBIT_PRIVATE_MASK2  
NBIT_PRIVATE_MASK3  
NBIT_PRIVATE_MASK4  
Return type:bool
Returns:Bit state.
GeListNode.ChangeNBit(bit, bitmode)

Sets bits in the 64-bit bitfield of the node.

Parameters:
  • bit (int) –

    Bit index:

    NBIT_0  
    NBIT_TL1_FOLD Folding bit for Timeline 1.
    NBIT_TL2_FOLD Folding bit for Timeline 2.
    NBIT_TL3_FOLD Folding bit for Timeline 3.
    NBIT_TL4_FOLD Folding bit for Timeline 4.
    NBIT_TL1_SELECT Selection bit for Timeline 1.
    NBIT_TL2_SELECT Selection bit for Timeline 2.
    NBIT_TL3_SELECT Selection bit for Timeline 3.
    NBIT_TL4_SELECT Selection bit for Timeline 4.
    NBIT_TL1_TDRAW  
    NBIT_TL2_TDRAW  
    NBIT_TL3_TDRAW  
    NBIT_TL4_TDRAW  
    NBIT_CKEY_ACTIVE Active point of animation path in editor.
    NBIT_OM1_FOLD Folding bit for Object manager 1.
    NBIT_OM2_FOLD Folding bit for Object manager 2.
    NBIT_OM3_FOLD Folding bit for Object manager 3.
    NBIT_OM4_FOLD Folding bit for Object manager 4.
    NBIT_TL1_FOLDTR Track folding for Timeline 1.
    NBIT_TL2_FOLDTR Track folding for Timeline 2.
    NBIT_TL3_FOLDTR Track folding for Timeline 3.
    NBIT_TL4_FOLDTR Track folding for Timeline 4.
    NBIT_TL1_FOLDFC F-Curve folding for Timeline 1.
    NBIT_TL2_FOLDFC F-Curve folding for Timeline 2.
    NBIT_TL3_FOLDFC F-Curve folding for Timeline 3.
    NBIT_TL4_FOLDFC F-Curve folding for Timeline 4.
    NBIT_SOURCEOPEN  
    NBIT_TL1_HIDE Hide in Timeline 1.
    NBIT_TL2_HIDE Hide in Timeline 2.
    NBIT_TL3_HIDE Hide in Timeline 3.
    NBIT_TL4_HIDE Hide in Timeline 4.
    NBIT_SOLO_ANIM Solo animation.
    NBIT_SOLO_LAYER Solo layer.
    NBIT_TL1_SELECT2  
    NBIT_TL2_SELECT2  
    NBIT_TL3_SELECT2  
    NBIT_TL4_SELECT2  
    NBIT_SOLO_MOTION Solo motion.
    NBIT_CKEY_LOCK_T Lock key time.
    NBIT_CKEY_LOCK_V Lock key value.
    NBIT_CKEY_MUTE Mute key.
    NBIT_CKEY_CLAMP Clamp key tangents.
    NBIT_CKEY_BREAK Break key tangents.
    NBIT_CKEY_KEEPVISUALANGLE Keep visual angle.
    NBIT_CKEY_LOCK_O Lock key tangents angles.
    NBIT_CKEY_LOCK_L Lock key tangents length.
    NBIT_CKEY_AUTO Key auto tangents.
    NBIT_CKEY_ZERO_O_OLD Deprecated.
    NBIT_CKEY_ZERO_L_OLD Deprecated.
    NBIT_TL1_FCSELECT F-Curve selection bit for Timeline 1.
    NBIT_TL2_FCSELECT F-Curve selection bit for Timeline 2.
    NBIT_TL3_FCSELECT F-Curve selection bit for Timeline 3.
    NBIT_TL4_FCSELECT F-Curve selection bit for Timeline 4.
    NBIT_CKEY_BREAKDOWN  
    NBIT_TL1_FOLDMOTION Motion clip folding for Timeline 1.
    NBIT_TL2_FOLDMOTION Motion clip folding for Timeline 2.
    NBIT_TL3_FOLDMOTION Motion clip folding for Timeline 3.
    NBIT_TL4_FOLDMOTION Motion clip folding for Timeline 4.
    NBIT_TL1_SELECTMOTION Motion clip selection for Timeline 1.
    NBIT_TL2_SELECTMOTION Motion clip selection for Timeline 2.
    NBIT_TL3_SELECTMOTION Motion clip selection for Timeline 3.
    NBIT_TL4_SELECTMOTION Motion clip selection for Timeline 4.
    NBIT_OHIDE  
    NBIT_TL_TBAKE  
    NBIT_TL1_FOLDSM  
    NBIT_TL2_FOLDSM  
    NBIT_TL3_FOLDSM  
    NBIT_TL4_FOLDSM  
    NBIT_SUBOBJECT  
    NBIT_LINK_ACTIVE  
    NBIT_THIDE  
    NBIT_SUBOBJECT_AM  
    NBIT_PROTECTION PSR protection.
    NBIT_NOANIM No animation.
    NBIT_NOSELECT No selection.
    NBIT_EHIDE Hide in viewport.
    NBIT_REF XRef.
    NBIT_NO_DD No drag and drop.
    NBIT_REF_OHIDE XRef object hide.
    NBIT_NO_DD No drag and drop.
    NBIT_HIDEEXCEPTVIEWSELECT Hide in viewport except to viewport select.
    NBIT_CKEY_WEIGHTEDTANGENT

    New in version R17.032.

    Weighted Tangent.

    NBIT_CKEY_REMOVEOVERSHOOT

    New in version R17.032.

    Gradual Clamp of Tangent to avoid OverShooting.

    NBIT_CKEY_AUTOWEIGHT

    New in version R17.032.

    Weight still adjusted even if Angle is User Defined.

    NBIT_TAKE_LOCK

    New in version R17.032.

    A node in an override group cannot be changed.

    NBIT_TAKE_OBJINGROUP

    New in version R17.032.

    The object is overridden by an override group.

    NBIT_TAKE_EGROUPOVERIDDEN

    New in version R17.032.

    The object editor visibility is overridden by an override group.

    NBIT_TAKE_RGROUPOVERIDDEN

    New in version R17.032.

    The object render visibility is overridden by an override group.

    NBIT_MAX  
    NBIT_PRIVATE_MASK1  
    NBIT_PRIVATE_MASK2  
    NBIT_PRIVATE_MASK3  
    NBIT_PRIVATE_MASK4  
  • bitmode (int) –

    Bit mode:

    NBITCONTROL_SET Set bit.
    NBITCONTROL_CLEAR Clear bit.
    NBITCONTROL_TOGGLE Toggle bit.
    NBITCONTROL_PRIVATE_NODIRTY Private.
Return type:

bool

Returns:

Bit state.