Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware API
      • ZBrush Python API
      • ZBrush GoZ API
      • Code Examples on Github
    • Forum
    • Downloads
    • Support
      • Support Procedures
      • Registered Developer Program
      • Plugin IDs
      • Contact Us
    • Categories
      • Overview
      • News & Information
      • Cinema 4D SDK Support
      • Cineware SDK Support
      • ZBrush 4D SDK Support
      • Bugs
      • General Talk
    • Unread
    • Recent
    • Tags
    • Users
    • Login

    button pressing

    SDK Help
    0
    3
    274
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • H
      Helper
      last edited by

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

      On 14/08/2004 at 06:10, xxxxxxxx wrote:

      User Information:
      Cinema 4D Version:   8.5 
      Platform:   Windows  ;   
      Language(s) :   C.O.F.F.E.E  ;

      ---------
      Erm, it looks like there is no FIX BONE command in COFFEE, but can anyone tell me if the following is possible ,perhaps....
      .... is it possible to fool Cinema into thinking that a button has been pressed in one of the managers (e.g. the Fix button on the bones page) ??
       
      cheers.....

      1 Reply Last reply Reply Quote 0
      • H
        Helper
        last edited by

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

        On 18/08/2004 at 01:07, xxxxxxxx wrote:

        Sorry, it's possible to press a button (by sending MSG_DESCRIPTION_COMMAND), but only in the C++ API. There's no corresponding message in C.O.F.F.E.E.
        You should be able to set the fixing data directly though. Just have a look in Obone.res/Obone.h, copy the enum and set the corresponding values manually:

            
            
            enum  
            {  
              // object properties  
              ID_FIXED                  = 820,  
              BONEOBJECT_FUNCTION       = 1000, // LONG  
                BONEFUNCTION_R   = 0,  
                BONEFUNCTION_R2  = 1,  
                BONEFUNCTION_R4  = 2,  
                BONEFUNCTION_R6  = 3,  
                BONEFUNCTION_R8  = 4,  
                BONEFUNCTION_R10 = 5,  
              BONEOBJECT_LIMITRANGE     = 1001, // BOOL  
              BONEOBJECT_SCALESTRENGTH  = 1002, // BOOL  
              BONEOBJECT_MINRANGE       = 1003, // REAL  
              BONEOBJECT_MAXRANGE       = 1004, // REAL  
              BONEOBJECT_STRENGTH       = 1005, // REAL  
              BONEOBJECT_LENGTH         = 1006, // REAL  
              BONEOBJECT_FIXPOSITION    = 1007, // VECTOR  
              BONEOBJECT_FIXSCALE       = 1008, // VECTOR  
              BONEOBJECT_FIXROTATION    = 1009, // VECTOR  
              BONEOBJECT_FIXLENGTH      = 1010, // REAL  
              BONEOBJECT_NULL           = 1011, // BOOL  
              BONEOBJECT_FIXED          = 1012, // BOOL  
                
              BONEOBJECT_FIX            = 1013, // BUTTON  
              BONEOBJECT_FIXCHILDS      = 1014, // BUTTON  
              BONEOBJECT_FIXCHAIN       = 1015, // BUTTON  
              BONEOBJECT_NEWBONES       = 1017, // BOOL: new bone algo  
              BONEOBJECT_VERTEXMAPMODE  = 1018, // BOOL: TRUE shows the new vertexmap mode for FBX (absolute maps)  
                
              BONE_DUMMY  
            };
            
            
            
            
            TestPlugin::Execute(document)  
            {  
              var bone = document->GetFirstObject();  
              var bc = bone->GetContainer();  
              bc->SetData(BONEOBJECT_FIXPOSITION, vector(100, 200, 300));  
              // ...  
              bc->SetData(BONEOBJECT_FIXED, TRUE);  
              bone->SetContainer(bc);  
              
              GeEventAdd(DOCUMENT_CHANGED);  
              return;  
            }  
            
        
        1 Reply Last reply Reply Quote 0
        • H
          Helper
          last edited by

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

          On 18/08/2004 at 11:34, xxxxxxxx wrote:

          Thanks once again for your expert help.........

          1 Reply Last reply Reply Quote 0
          • First post
            Last post