• 0 Votes
    6 Posts
    1k Views
    beatgramB
    @m_magalhaes Anyway thanks for the support, Manuel! I love this great community.
  • 0 Votes
    3 Posts
    904 Views
    ferdinandF
    Hi @alfredogzz, welcome to the Plugin Cafe forum and the Cinema 4D development community! Please have a look at our Forum Guidelines as we have to ask all users to flag their questions with tags. I have added a Python tag (assuming that is the programming environment you are after) to your posting for you, but you have still to add an OS and Cinema 4D version tag yourself. Please also note that providing full solutions is outside of the scope of support (see Forum Guidelines), so it would be best if you could post whatever code you already have. About your problem, let's assume you have an object Obj which has has the "incorrect" c4d.Matrix, i.e., transform, M_old and you want to move that transform to the known transform M_new. Let's also assume that all our transforms are in global space. What you basically have to do is: Compute a difference matrix M_dif for M_old and M_new. One way to do it, is to multiply M_new by the inverse of M_old, i.e., "untransform" M_new by the amount of M_old. Multiply all vertices of Obj by the inverse of M_dif. Set the global matrix of O to M_new. Here are some other postings, topics and examples (the first one contains code for pretty much what you want to do) that might be helpful for you regarding this topic: "Move" the transform of a point object Setting coordinates for selected faces (Python - Beginner) Mirroring with Matching or Different Axes If you import your geometry from Rhino, you might also have to deal with baked normals, i.e., normal tags. Please take a look at this thread for that scenario. It also noteworthy that Rhino's coordinate system is right-handed with Z being up, while Cinema 4D's system is left-handed with Y being up. Handedness of coordinate systems has been discussed in Mirroring with Matching or Different Axes for example. Cheers, Ferdinand
  • 0 Votes
    5 Posts
    991 Views
    ManuelM
    hi, thanks @mp5gosu for the answer. About inserting material before making some changes, there's no real right way of doing it. It just that if something go wrong about the change you are doing, you have to remove the material from the document, while if you don't insert it, you don't have to. As @mp5gosu said it's better to insert the object in the document before linking them. Even if should work if you insert the material after. Cheers, Manuel
  • BaseContainer Sort broken?

    Cinema 4D SDK python
    7
    0 Votes
    7 Posts
    1k Views
    M
    That's okay, since it is a minor issue. For newcomers however, there should be a hint in the docs, because it clearly states Sorts the container entries by ID. which is not the case.
  • 0 Votes
    4 Posts
    502 Views
    ManuelM
    @blastframe said in Updating F-Curves in Timeline on EditSlider Drag: What's c4d.EVMSG_FCURVECHANGE for then? After a quick check (sorry, I should have checked yesterday for a more complete answer) literally nothing. It's used nowhere. Cheers, Manuel
  • 0 Votes
    3 Posts
    487 Views
    ?
    @ferdinand Thank you for this; it makes things much clearer. I am very grateful we have the forum to clarify these issues.
  • 0 Votes
    3 Posts
    440 Views
    ?
    @ferdinand That was exactly what I was seeking, thank you, Ferdinand!
  • 0 Votes
    2 Posts
    269 Views
    ferdinandF
    Hi @blastframe, thank you for reaching out to us and for reporting these errors in the documentation. We will fix both the erroneously attributed short description of AddKey as well as the code example in an upcoming update of the C4D SDK Python docs. Cheers and happy coding, Ferdinand
  • ShowPopupDialog Freezes Cinema R21

    Cinema 4D SDK python r21
    12
    0 Votes
    12 Posts
    2k Views
    A
    @ferdinand Hi Ferdinand, Thank you for your time and help! Will get it sorted with your pointers above. All the best! Andre
  • Python and the GUI Separator

    Cinema 4D SDK python c++ r21 r23
    8
    0 Votes
    8 Posts
    2k Views
    CairynC
    Good to hear, thanks!
  • A GetClone problem about takes

    General Talk
    5
    0 Votes
    5 Posts
    1k Views
    ferdinandF
    Hi @delizade, without further questions or feedback, we will consider this thread as solved by Monday and flag it accordingly. Cheers, Ferdinand
  • Python: "Frame Selected" Within a Thread

    Cinema 4D SDK python s22
    4
    0 Votes
    4 Posts
    712 Views
    ferdinandF
    Hi @flewis, sorry, there has been some mix-up with access rights, you should be now able to access the page. About your fix: It does not really matter if you do it manually or not. While you can decouple the modification of the node attributes - which is allowed from within a thread - from the redraw event, to carry out that newly computed camera transform, you still will have to invoke a redraw, which you cannot do from within your threaded environment. When you invoke such redraw event, the first thing the internal code does, is to check if its running on the main thread and if not, it just gets out. So there is not much won by doing it manually, at least for what from my understanding is the premise of your problem: To constantly frame the viewport to the object that is currently processed by your async code. Cheers, Ferdinand
  • 0 Votes
    4 Posts
    513 Views
    fwilleke80F
    I was in deed calling the code from within PluginStart(). Calling it from PluginMessage(C4DPL_STARTACTIVITY) fixed it. Thank you, Kent! Cheers, Frank
  • PYTHON - FIND ANY ID PORT

    Cinema 4D SDK python r21 sdk
    7
    0 Votes
    7 Posts
    2k Views
    ferdinandF
    Hi @Hugo-BATTISTELLA , without further questions or feedback, we will consider this thread as solved by Monday and flag it accordingly. Cheers, Ferdinand
  • 0 Votes
    3 Posts
    369 Views
    ?
    @zipit Thank you very much, Ferdinand. This helped me a lot!
  • Rotating a GeClipMap

    Cinema 4D SDK windows python sdk r23
    11
    1
    0 Votes
    11 Posts
    2k Views
    ?
    @zipit Thank you for the information.
  • Unique Object Identifier

    Cinema 4D SDK python
    7
    0 Votes
    7 Posts
    2k Views
    ferdinandF
    Hi @Motion4D, I am not quite sure if there will be anything in the pipeline soon, because the limitations of IDs and markers are more of principal nature due to Cinema's heavily procedural architecture; i.e., not really something that can be "fixed". If you have any particular feature in mind, I would ask you to make a separate post with a dedicated feature request. We however already did identify the whole "identifying and object"-thing a few weeks ago as something that is probably not explained well enough at the moment and added it to our to-do-list. There are no guarantees on when this will come though Cheers, Ferdinand
  • How to find an object quickly?

    Cinema 4D SDK python s22
    10
    0 Votes
    10 Posts
    2k Views
    chuanzhenC
    @r_gigante Thanks for your help!
  • 0 Votes
    5 Posts
    1k Views
    M
    I just had time to check this hence the holidays. This works with the correct ID (1036219 = Redshift) the nodes render my "cleaned" C4D file again. Thank you very much @m_magalhaes kind regards mogh