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
    • Recent
    • Tags
    • Users
    • Login

    INCLUDE Ospline

    Scheduled Pinned Locked Moved PYTHON Development
    6 Posts 0 Posters 465 Views
    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 Offline
      Helper
      last edited by

      On 10/08/2013 at 08:20, xxxxxxxx wrote:

      Hi. Sorry for so many questions:)

      Any ways, I am building my GUI in separate RES file. It looks somethings like this:

        
      CONTAINER Opluginname   
      {   
           NAME Opluginname;   
           INCLUDE Obase;   
           GROUP GROUP_MAIN   
           {   
                INCLUDE Ospline;   
                REAL REAL_RAND_SEED { UNIT REAL; }   
                REAL REAL_SEGMENTS { MIN 2; MAX 10000; STEP 1; UNIT REAL; }   
                REAL REAL_NUM_BRANCHES { MIN 1; MAX 10000; STEP 1; UNIT REAL; }   
                SEPARATOR { LINE; }   
           }   
      }   
      

      As you see, I am trying to include Ospline controls (INCLUDE Ospline) into my existing GUI. All works fine, except spline controls are in a separate tab. How do I include them in existing tab, GROUP GROUP_MAIN for instance.

      From preview - I want all control stuff from Object tab (these are spline controls that I create with INCLUDE Ospline) to be included in Spline tab. Is it possible? If not, maybe there's a way to at least rename that tab from Object to something else?

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

        On 11/08/2013 at 07:48, xxxxxxxx wrote:

        By convention you need to call that first group 'ID_OBJECTPROPERTIES', not 'GROUP_MAIN'. Anything in a group with that name will go into a tab that Cinema will automatically name 'Object'. To create another tab, create a second group with whatever ID you like and make sure it has a corresponding entry in the .str file. (E.g. that would be 'Spline' in your case.) Then everything in that group will appear in the 'Spline' tab, so just put the include in that group.

        So your file might look like:

          
        CONTAINER Opluginname   
        {   
             NAME Opluginname;   
             INCLUDE Obase;   
             GROUP ID_OBJECTPROPERTIES   
             {   
                  REAL REAL_RAND_SEED { UNIT REAL; }   
                  REAL REAL_SEGMENTS { MIN 2; MAX 10000; STEP 1; UNIT REAL; }   
                  REAL REAL_NUM_BRANCHES { MIN 1; MAX 10000; STEP 1; UNIT REAL; }   
             }   
             GROUP ID_SPLINETAB   
             {   
              // whatever other elements here...   
                   INCLUDE Ospline;   
             }   
        }   
        
        1 Reply Last reply Reply Quote 0
        • H Offline
          Helper
          last edited by

          On 11/08/2013 at 10:03, xxxxxxxx wrote:

          Additonally, it doesn't matter in what group you include a description, it will not appear in that specific group. It is just important for the order of the parameters (included parameters come first or at the end?).

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

            On 11/08/2013 at 12:22, xxxxxxxx wrote:

            Yes, Niklas is correct. I thought this had worked for me in the past, but I can't get it to work now. It appears that the included description is always in the first tab, at the bottom of it.

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

              On 11/08/2013 at 12:51, xxxxxxxx wrote:

              Not necessarily in the first tab, but in the groups the parameters were defined in the included description.

              GROUP Oincluded_res {
                  GROUP GROUP_A {
                      LONG PARAM_A_1 { }
                  }
                  GROUP GROUP_B {
                      LONG PARAM_B_1 { }
                  }
              }
                
              GROUP Ofinal_res {
                  INCLUDE Oincluded_res;
                  GROUP GROUP_A {
                      LONG PARAM_A_2 { }
                      GROUP GROUP_B {
                          LONG PARAM_B_2 { }
                      }
                  }
              }
              

              Will evaluate to

              GROUP Ofinal_res {
                  GROUP GROUP_A {
                      LONG PARAM_A_1 { }
                      LONG PARAM_A_2 { }
                  }
                  GROUP GROUP_B {
                      LONG PARAM_B_1 { }
                      LONG PARAM_B_2 { }
                  }
              }
              

              Cheers,
              -Niklas

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

                On 11/08/2013 at 13:07, xxxxxxxx wrote:

                Thank you guys for your input.
                Indeed, it does nots matter in what group I add INCLUDE Ospline - it still appears in Object tab.
                Oh how I wish not to have this "Object tab" 🙂

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