GeListNode::ChangeNBit()?



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 19/07/2010 at 10:24, xxxxxxxx wrote:

    User Information:
    Cinema 4D Version:   R10+ 
    Platform:   Windows  ; Mac  ;  Mac OSX  ; 
    Language(s) :     C++  ;

    ---------
    Howdy,

    In R10 and R11, it seems that GeListNode::ChangeNBit() works on Mac but not on PC when called from TagData::Message() when polling for MSG_MENUPREPARE.

    I'm trying to set all the key's Zero Angle bit when the tag is first placed on the object with:

    if(key) key->ChangeNBit(NBIT_CKEY_ZERO_O,NBIT_SET);
    

    ... and it works on Mac but not on PC

    How can I get around this?

    Adios,
    Cactus Dan



  • THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED

    On 19/07/2010 at 12:50, xxxxxxxx wrote:

    Howdy,

    Never mind. I found the problem.

    It seems that a key cannot be set to Zero Angle with GeListNode::ChangeNBit() without first disabling Auto Tangents.

    So, when I changed the code to this:

    if(key)   
    {   
         key->ChangeNBit(NBIT_CKEY_AUTO,NBIT_DEL);   
         key->ChangeNBit(NBIT_CKEY_ZERO_O,NBIT_SET);   
    }
    

    ... everything worked fine.

    It seems like my test file on the Mac already had Auto Tangents disabled on the keys so the call to GeListNode::ChangeNBit() worked, but my test file on the PC had AutoTangents enabled so it didn't work.

    Adios,
    Cactus Dan


Log in to reply