• 0 Votes
    3 Posts
    1k Views
    ferdinandF
    Hello @davidweidemann, Thank you for reaching out to us and solving your own question :). To give a bit of background information, parameters can be composed in Cinema 4D. The simplest example is a parameter of type c4d.Vector. You can access the relative position of an object like this: >>> Cube[c4d.ID_BASEOBJECT_REL_POSITION] Vector(0, 0, 0) But as users might want to access and animate the components of that vector individually, the vector is dealt with and represented as a parameter actually as a set of sub-channels, one for each of its components. >>> Cube[c4d.ID_BASEOBJECT_REL_POSITION,c4d.VECTOR_X] 0.0 >>> Cube[c4d.ID_BASEOBJECT_REL_POSITION,c4d.VECTOR_Y] 0.0 >>> Cube[c4d.ID_BASEOBJECT_REL_POSITION,c4d.VECTOR_Z] 0.0 >>> This is why DescId are composed out of up to three DescLevel. To access the component of a vector you need two DescLevel, e.g., c4d.ID_BASEOBJECT_REL_POSITION and c4d.VECTOR_X. And while you might not be able to deal with the enclosing parameter, you might be able to deal with its subchannels. The input and output ports of an RSColorAbs Redshift node are of type RsColorAlpha, a parameter type that is composed of a Vector and a float, so it is effectively a four-component vector. This parameter type is not exposed to the Python API, so the API has no clue what to do with it. But it can deal with the subchannels. # Python has no clue about that parameter type at REDSHIFT_SHADER_RSMATHABSCOLOR_INPUT. >>> RSColorAbs[c4d.REDSHIFT_SHADER_RSMATHABSCOLOR_INPUT] Traceback (most recent call last): File "console", line 1, in <module> AttributeError: Parameter value not accessible (object unknown in Python) # But we can access the subchannels which are standard types. This is a two DescLevel access >>> RSColorAbs[c4d.REDSHIFT_SHADER_RSMATHABSCOLOR_INPUT,c4d.REDSHIFT_COLORALPHA_COLOR] Vector(0, 0, 0) # We can even reach into the subchannels of a subchannel, here for example to access the red # component of the RGBA vector tuple that is represented by the type RsColorAlpha. >>> RSColorAbs[c4d.REDSHIFT_SHADER_RSMATHABSCOLOR_INPUT,c4d.REDSHIFT_COLORALPHA_COLOR, c4d.VECTOR_X] 0.0 Cheers, Ferdinand
  • 0 Votes
    4 Posts
    697 Views
    ferdinandF
    Hello @till-niese, I did not say or want to imply that this is expected, I will have to test it myself. In the meantime, you can use maxon::Url as shown above to normalize paths if that is of importance for you. I will report back here when I have tried replicating your findings. When there is a bug, we will have to decide if we will fix it. The classic API is a dormant API and the bug, if it is there, does not seem to critical. I cannot tell you right away "that is a bug, and we will fix it (or not)", as this involves multiple operating systems and serialization of paths, which both can be tricky subjects. Cheers, Ferdinand
  • 0 Votes
    7 Posts
    2k Views
    ferdinandF
    Hello @z-prich, without any further activity before Wednesday, the 16.03.2022, we will consider this topic as solved and remove the "unsolved" state of this topic. Thank you for your understanding, Ferdinand
  • 0 Votes
    3 Posts
    714 Views
    M
    Thanks, @m_magalhaes yes my code is inside the drawcell() method. I didn' have any luck with c4d.gui.GetIcon(lIconID) but i got c4d.bitmaps.InitResourceBitmap(resource_id) working. here are my 3 lines of code that got me an icon. ICON_SIZE = drawinfo["height"] bmp = c4d.bitmaps.InitResourceBitmap(12098) geUserArea.DrawBitmap(bmp, drawinfo["xpos"], drawinfo["ypos"], ICON_SIZE, ICON_SIZE, 0, 0, bmp.GetBw(), bmp.GetBh(), c4d.BMP_ALLOWALPHA) kind regards mogh
  • Compare Matrices Matrix with matrix.__eq__

    Cinema 4D SDK r25 python
    3
    0 Votes
    3 Posts
    782 Views
    M
    I was suspecting something like this ... Thanks for taking the time to type a solution which I could copy ...
  • How to activate the recent Saved Document

    Cinema 4D SDK python r25
    3
    0 Votes
    3 Posts
    555 Views
    M
    No stupid me, overlocked this ... thanks for the hint Frank.
  • Set "Strength" on Constraint tag via Python Xpresso Node?

    Cinema 4D SDK
    2
    0 Votes
    2 Posts
    469 Views
    J
    Ok, nevermind... I got something working about 3 minutes after posting this question. I'll paste below what worked for my needs. Maybe this will help someone else, or maybe you all have a more direct method to achieve this. def main(): #inputs to the Xpresso Node are Link (named "LayerLink") and Float (named "FieldtInfluence") myObject = LayerLink myTag = myObject.GetTag(1019364) myTag.SetParameter(c4d.ID_CA_CONSTRAINT_TAG_AIM_TWEIGHT, FieldInfluence, c4d.DESCFLAGS_SET_0)
  • 0 Votes
    3 Posts
    661 Views
    ferdinandF
    Hello @Tomoya, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • Python Generator and texte

    Cinema 4D SDK python r25
    3
    2
    0 Votes
    3 Posts
    547 Views
    B
    Hello, Thanks a lot for your help !
  • R25 project tool

    Cinema 4D SDK c++ windows project tool r25 sdk
    6
    0 Votes
    6 Posts
    1k Views
    ManuelM
    hxx files are created by the preprocesssor when you compile.They are created in the Generate subfolder of each project. Frameworks should work out of the box (even if sometimes, we have some bugs_ Cheers, manuel
  • UserData

    Moved Cinema 4D SDK python r25 windows
    4
    1
    0 Votes
    4 Posts
    1k Views
    ferdinandF
    Hello @bokibo, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • 0 Votes
    5 Posts
    2k Views
    H
    Many thanks for your help and thorough explanations, Ferdinand! Much appreciated! I'll go create a temp document and clones, and don't expect much more resistance from this particular issue. Thanks again, and have a happy holiday season!
  • 0 Votes
    3 Posts
    753 Views
    ferdinandF
    Hello @RenoBozo, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • MSG_MENUPREPARE called twice for same object

    Cinema 4D SDK r25 c++
    4
    0 Votes
    4 Posts
    572 Views
    ferdinandF
    Hello @kikizg, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • Multi-line Tabs

    Cinema 4D SDK r20 r21 r23 r25 s22 s24 c++
    3
    1
    0 Votes
    3 Posts
    957 Views
    ManuelM
    Hi, Without more question we will consider this thread as solved and close it. Cheers, Manuel
  • 0 Votes
    4 Posts
    1k Views
    ferdinandF
    Hello @wuzelwazel, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • The oldest SDK for Cinema 4D 19-25

    Cinema 4D SDK sdk r19 r20 r21 r25 r23 s22 s24
    7
    0 Votes
    7 Posts
    2k Views
    ferdinandF
    Hello @jeremyliu1989, without any further questions or postings, we will consider this thread as solved by Friday the 4th, February 2022. Thank you for your understanding, Ferdinand
  • Remove settings from Render Settings

    Cinema 4D SDK r23 s24 r25 c++
    2
    1
    0 Votes
    2 Posts
    440 Views
    ManuelM
    Hi, you must overload the RenderEngineCheck function and return false if the passed ID are those settings. The documentation has some example. Cheers, Manuel
  • 0 Votes
    7 Posts
    2k Views
    F
    That's exactly what I was looking for. Thank you, Ferdinand
  • Number of Init() calls in ObjectData

    Moved Bugs python r25
    3
    0 Votes
    3 Posts
    1k Views
    a_blockA
    Hi Ferdinand, thanks for the quick and detailed answer, even trying to find workarounds. I had hoped, I could spare you this extra effort by saying, that it's no functional issue on my end. I am already satisfied with the confirmation. Often it is enough to be able to stop worrying about my own mental integrity. And while this new behavior certainly will not improve performance, I can happily ignore performance issues beyond my own responsibility. Regarding the GeDialog stuff: No worries, either. As mentioned back then, no future fix/solution can help me there and I went down a different route to get the project done with support for R19 to present. Yet, I'm thankful for your tenacity and that the issue is still being researched. Some meals simply need time to develop their flavours. Thanks and cheers, Andreas