Modelling Axis



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

    On 19/05/2005 at 21:04, xxxxxxxx wrote:

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

    ---------
    Hello

    Please help me in this.

    I want to move the axis of an object.
    At first, I've done it following these steps.
    1. Make the object editable.
    2. Then I calculate and change the coordinates of all the points according to the point which I want to make the axis of the object.

    But for now, I don't want to make the object editable. I want to let it remain in its original state.
    For example, I use a shape, a line and a sweep object to make an object.
    The line is at a place which is far from the origin.
    But the axis of the object is at the origin because it is under sweep.
    So the object I get is far from the origin, its axis is at the origin.
    I want to move the axis to the place that the object is really appearing.
    We can do it in Cinema4D using mouse. Like that way, can I do it in code, but not using the calculation.
    I tried it using SetModelingAxis of the BaseObject class, but I can't because of my not-knowing-well about the paraeters.

    Sweep Object goes to the origin when I insert.
    Can I placee it at the x,y,z I want ever since when I insert?

    With all my respects ...
    ZawMinTun



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

    On 24/05/2005 at 11:45, xxxxxxxx wrote:

    The ModelingAxis doesn't represent the object's coordinate frame. It's just some kind of pivot for various tools, so that they can rotate things around arbitrary axes, and contrain movement.

    You can probably set the modeling axis, if that is what you want. The Documentation gives a small hint.. I haven't tried this myself.

    If you want to change the actual coordinate frame of an object then you must set the object's matrix by

    // within the coordinate frame of the parent
    someObject->SetMl( localMatrix )
    // within world coordinate frame
    someObject->SetMg( globalMatrix )

    if you don't want the child objects to move ( as probably in your SweepObject example ) then you have to transform their matrices accordingly.



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

    On 29/05/2005 at 20:22, xxxxxxxx wrote:

    Hello
    Now I see ...
    Thank you ...
    I can solve it now ...
    With all my respects ...
    ZawMinTun


Log in to reply