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

    calculation - handle move on line [SOLVED]

    Scheduled Pinned Locked Moved PYTHON Development
    6 Posts 0 Posters 680 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 06/07/2015 at 10:25, xxxxxxxx wrote:

      Hello,

      I like to use handle in my own object and but i struggle in the calculation. the source for the handle is a position offset from the center - now by moving the handle i like to change the position within the direction.

      I found thin in the examples but don`t get the right way how transform this into my vector.

      mg = op.GetUpMg()*undo.GetMl()
      pos = bd.ProjectPointOnLine(info.position*mg, info.direction^mg, mouse_pos.x, mouse_pos.y)
      val = (pos[0]*~mg)*info.direction

      Thanks 
      Michael

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

        On 09/07/2015 at 06:49, xxxxxxxx wrote:

        Hi Michael,

        sorry, it took so long to get to your thread.
        I think, by far the nicest example is the Py-RoundedTube example. But you probably already know that.

        Unfortunately I don't understand your problem. And as you only post code from the Py-SpherifyModifier example, it's a bit difficult to help. Can you please post either some code or perhaps an image of what you are trying to achieve?

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

          On 09/07/2015 at 10:52, xxxxxxxx wrote:

          Hey Andreas,

          it`s hard for me to describe. but i will try it.

          I like to generate a Handle that give control over a position (offset from the center of the Object)

          i struggle in the calculation - to the correct position by moving the handle.

          A) move the handle free in 3d space and generate a ne position 
          b) move the handle in to extend the given direction - but this can be more than on axis -

          Hope you can get my problem

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

            On 10/07/2015 at 07:45, xxxxxxxx wrote:

            Hi Michael,

            I'm still not sure, I understood your request completely. In the following I assume, you are familiar with the Py-RoundedTube example and its code.
            I'll describe the steps to add a free handle to this example, which delivers a Vector offset from object center.
            For A) :
            In function GetHandle() :
            - for the new handle set info.type to c4d.HANDLECONSTRAINTTYPE_FREE
            - for info.postion simply set your offset value (most likely from your offset description)
            - info.direction can be set to c4d.Vector(0.0, 0.0, 0.0), it's not needed

            In function SetHandle() :
            Here you get the new position on handle movements. Simply store the given new position p in your object description.

            In Draw() :
            Actually nothing to do, assuming you want your handle drawn as a simple dot.

            And that's already it.

            Now, for b) : This one I still don't understand. Do you describe a second handle here? Or is it another mode for the first handle (not sure how one would achieve this)? And maybe it's a translation issue, but "move the handle in to extend direction"... I have no idea, what you mean. Sorry. I think, a screenshot with a few quick brushstrokes, showing who you want to move where, could help me. If you have problems adding such to a forum post, you could still mail it to sdk_support.

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

              On 26/08/2015 at 09:30, xxxxxxxx wrote:

              Have you been able to solve your problem?

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

                On 26/08/2015 at 13:14, xxxxxxxx wrote:

                yes thanks

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