• PYTHON - FIND ANY ID PORT

    python r21 sdk
    7
    0 Votes
    7 Posts
    1k 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
  • Sizing Plugin Dialogs

    python s22 sdk
    9
    1
    1 Votes
    9 Posts
    1k Views
    ferdinandF
    Hi @blastframe, without further questions or feedback, by Monday we will consider this thread as solved and flag it accordingly. Cheers, Ferdinand
  • Python Tag Plugin Doesn't Work Properly With Resource Files

    python r23 c++
    6
    1
    0 Votes
    6 Posts
    1k Views
    beatgramB
    @m_magalhaes Anyway thanks for the support, Manuel! I love this great community.
  • BaseContainer containers

    c++ sdk
    3
    0 Votes
    3 Posts
    365 Views
    ManuelM
    Hi, you have two function to retrieve the BaseContainer from an object and a container inside a BaseContainer. You can either retrieve a pointer or a reference. All function retrieve a pointer to the data and the references are just returning a dereference's pointer. To retrieve the data from the object you have GetDataInstance and GetDataInstanceRef and to retrieve a BaseContainer inside another one you have GetContainer and GetContainerInstance. Neither of them return a copy. About the issue, there's no issue as long as the object exist in memory. Depending of the context (specially if you are using threads) this can be more or less safe. Cheers, Manuel
  • Turn Bezier spline to linear spline

    8
    0 Votes
    8 Posts
    2k Views
    Y
    @ferdinand Oh, thanks! Quite a nice idea!
  • 0 Votes
    3 Posts
    801 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
    855 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
  • Errors when recompiling R20 plugin to R21

    6
    0 Votes
    6 Posts
    1k Views
    r_giganteR
    hi @Boony2000 , these are Visual Studio Intellisense errors which you can safely ignore. If they bother you switch the filter from "Build + Intellisense" to "Build". Cheers, R
  • MacOS BigSur on M1 Macbook Air zlib not loading

    python r23 macos
    6
    0 Votes
    6 Posts
    1k Views
    M
    Correct here are all the one we expect to fail: bz2 curses gzip lzma zlib As a quick reminder, Python 3.7.7 doesn't officially support M1, and only Python 3.9.1 (released in December does fully support it). Cheers, Maxime.
  • This topic is deleted!

    1
    0 Votes
    1 Posts
    3 Views
    No one has replied
  • How to know when Apply button is grayed out (disabled)

    r20 c++
    4
    0 Votes
    4 Posts
    661 Views
    ManuelM
    hi, one side note, there is GetDEnabling and GetEnabling you can have more information in our manual GetEnabling will call GetDEnabling. There are pretty the same but the one you implement is GetDEnabling. Cheers, Manuel.
  • BaseContainer Sort broken?

    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.
  • Updating F-Curves in Timeline on EditSlider Drag

    python sdk r23 windows
    4
    0 Votes
    4 Posts
    476 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
  • CCurve.FindPrevUnmuted & CCurve.FindNextUnmuted

    r23 windows python sdk
    3
    0 Votes
    3 Posts
    464 Views
    ?
    @ferdinand Thank you for this; it makes things much clearer. I am very grateful we have the forum to clarify these issues.
  • Collect System Information/Configuration

    r23 c++
    2
    0 Votes
    2 Posts
    356 Views
    ManuelM
    hi, you can have a look at our manual about MachineInterface you will find all the machine information under those attributs Cheers, Manuel
  • Creating a Keyframe similar to Ctrl-Clicking the Curve

    r23 windows python
    3
    2
    0 Votes
    3 Posts
    382 Views
    ?
    @ferdinand That was exactly what I was seeking, thank you, Ferdinand!
  • Description & Example in Documentation for CCurve.AddKey

    python sdk
    2
    0 Votes
    2 Posts
    254 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
  • Access GradientCustomGui in NodeData::GetDDescription

    c++ sdk
    4
    0 Votes
    4 Posts
    718 Views
    D
    Hi, @m_adam, thanks for the effort. I suspected it will not be possible without a custom GUI/data implementation - I guess I will go with this approach. Cheers, Deyan
  • ShowPopupDialog Freezes Cinema R21

    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
  • Plugin compiled on macOS Catalina for R23, not working on Big Sur?

    r23 macos c++
    22
    0 Votes
    22 Posts
    14k Views
    r_giganteR
    @kbar said in Plugin compiled on macOS Catalina for R23, not working on Big Sur?: @fwilleke80 I think setting the hardened runtime when you code sign solves the timestamp issue. I don’t set a timestamp. codesign --force --options runtime --sign 'Developer ID Application: YOURCOMPANYNAME' 'sdk/plugins/yourplugin/yourplugin.xlib' Thanks a lot Kent, for pointing this out! The one below is the string I use which, as said by Kent, doesn't need the timestamp because of the hardened runtime. codesign -f -s "Developer ID Application: <YOUR DEV ID>" --options runtime <binary file>.xlib Documentation updated accordingly