Maxon Developers Maxon Developers
    • Documentation
      • Cinema 4D Python API
      • Cinema 4D C++ API
      • Cineware 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

    Enabling Mesh-Check with script

    PYTHON Development
    0
    13
    1.8k
    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

      On 22/10/2014 at 04:11, xxxxxxxx wrote:

      Hi guys.
      I'm trying to figure out a way to make a script button for enabling and disabling the new Mesh-Check options.
      So far I'm pretty sure it belongs to the snap-module as I can read the settings from the corresponding basecontainer. But setting them seems to be not possible:

      import c4d  
      from c4d.modules import snap
      def main() :
      \> # Get snap settings
      \> bc = snap.GetSnapSettings(doc)  
      \> 
      \> bc[c4d.MESH_CHECK_ENABLED] = 0  
      \> 
      \> snap.SetSnapSettings(doc, bc)
      \> 
      \>   
      \> 
      if __name__=='__main__':  
      main()
      

      I tried different the options, for example setting the colors but nothing works. Is this simply not supported in Python or am I doing something wrong. Setting the snap-settings themselves works just fine.
      Cheers
      Phil

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

        On 22/10/2014 at 06:59, xxxxxxxx wrote:

        Hi Phil,

        ~~first of all, you have to enable the snap settings with

        snap.EnableSnap(True, doc)
        ~~
        There is a good example in the new docs
        [URL-REMOVED]#module-c4d.modules.snap

        Cheers,
        Martin


        [URL-REMOVED] @maxon: This section contained a non-resolving link which has been removed.

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

          On 22/10/2014 at 07:15, xxxxxxxx wrote:

          sorry to fast, you are right :

          c4d.CallCommand(c4d.MESH_CHECK_ENABLED)
          wont work!!

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

            On 23/10/2014 at 00:21, xxxxxxxx wrote:

            Yeah I tried that one too.
            I don't really get it, I really like the new Mesh-Check, but enabling it through the attribute manager seems cumbersome. I would even prefer a COFFEE-Button, which can be checked (why isn't this possible in Python?) but that is probably not possible at all.
            Cheers
            Phil

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

              On 23/10/2014 at 23:39, xxxxxxxx wrote:

              Hello,

              there seems to be something broken in SetSnapSettings. A bug report was filed.

              Best wishes,
              Sebastian

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

                On 25/10/2014 at 02:12, xxxxxxxx wrote:

                Well that explains it.
                Thanks Sebastian

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

                  On 27/02/2017 at 01:54, xxxxxxxx wrote:

                  The problem is still not solved. MESH_CHECK_ENABLED in python does not work.

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

                    On 27/02/2017 at 02:20, xxxxxxxx wrote:

                    Hi,

                    First, MESH_CHECK_ENABLED is a parameter/attribute ID and is not meant to be used with c4d.CallCommand().

                    Unfortunately, this parameter can't be set currently due to a limitation of the Python API (the node that actually owns the parameter can't be retrieved).
                    For more information see this thread.

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

                      On 27/02/2017 at 04:14, xxxxxxxx wrote:

                      Thank you. But this command also does not work with hot keys. For example, how do I assign a hot key to a command "Enable Mesh Check"?

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

                        On 27/02/2017 at 10:30, xxxxxxxx wrote:

                        Hi, I've just tested in R18 and seen that the MESH_CHECK functions are now available via python so I'm here to ask how to use the CallButton function to virtually press the various SELECT buttons in the Mesh Check interface, especially what is the BaseList2D item that I should use in place of teh ???? below:

                        c4d.CallButton( ???? , c4d.MESH_CHECK_EDGEPOINT_SELECT)

                        Thanks in advance!

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

                          On 28/02/2017 at 02:04, xxxxxxxx wrote:

                          Originally posted by xxxxxxxx

                          Thank you. But this command also does not work with hot keys. For example, how do I assign a hot key to a command "Enable Mesh Check"?

                          There's no command such as "Enable Mesh Check".

                          If you have more questions please create a new topic.

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

                            On 28/02/2017 at 02:05, xxxxxxxx wrote:

                            Originally posted by xxxxxxxx

                            Hi, I've just tested in R18 and seen that the MESH_CHECK functions are now available via python so I'm here to ask how to use the CallButton function to virtually press the various SELECT buttons in the Mesh Check interface, especially what is the BaseList2D item that I should use in place of teh ???? below:

                            c4d.CallButton( ???? , c4d.MESH_CHECK_EDGEPOINT_SELECT)

                            I'm afraid it's still not possible in R18 to access the Mesh Check settings and call its buttons.
                            The issue is the Python API can't give you the BaseList2D node needed to change the Mesh Check parameters and for c4d.CallButton().
                              
                            If you have more questions please create a new topic.

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

                              On 28/02/2017 at 03:08, xxxxxxxx wrote:

                              Thanks Yannick, I'll try to code sonme of the Mesh Check functions by myself (it could be a good learning experience!)

                              1 Reply Last reply Reply Quote 0
                              • i_mazlovI i_mazlov referenced this topic on
                              • First post
                                Last post