• [SOLVED] ARROWBUTTON resource not accessible for Python?

    5
    0 Votes
    5 Posts
    720 Views
    ferdinandF
    Great to hear! One thing I forgot to mention: For ICONID1 XXX and ICONID2 YYY you can use any of the built-in icon IDs as listed here. When you want to use your own icons, you must make sure the icon IDs are registered before the node which is using them in its description. Simply put the c4d.gui.RegisterIcon call before the RegisterXXXPlugin call of the plugin using them. Cheers, Ferdinand
  • Switch render engine to Redshift (In memory)

    python
    4
    0 Votes
    4 Posts
    712 Views
    ferdinandF
    Hi @everyone, just as an FYI, the example is slightly outdated. With 2023.0.0 or newer, there is no need to manually define a symbol for the Redshift renderer, as one can use the newly exposed VPrsrenderer symbol (c4d.VPrsrenderer in Python). I have updated the C++ example. Cheers, Ferdinand
  • Cinema 4D R2023 - c4d.plugins.RegisterObjectPlugin issue

    2023 python
    6
    0 Votes
    6 Posts
    935 Views
    M
    @baca said in Cinema 4D R2023 - c4d.plugins.RegisterObjectPlugin issue: Any suggestion how to properly handle that kind of issues -- just catch exception and warn user using message box somehow? Correct you can catch the OsError and check if there is the word 50 in the exception message. Would it be reasonable to switch to NodeData from ObjectData -- It depends of your plugin if this is at the end an ObjectData then it's irrelevant, if this is just an object that you store in a list in memory or in a custom GeListHead then NodeData is perfectly relevant. does RegisterNodePlugin has separate 50 plugins registrations? Yes each type have 50 plugins. What's the logic behind plugin initialization order -- alphabetical, date-based, random? Folders from g_additionalModulePath are iterated by alphabetical order and each files are then iterated by alphabetical order too. Cheers, Maxime.
  • 3D Mouse Slider Focus

    python windows r19 maxon api
    13
    1
    0 Votes
    13 Posts
    3k Views
    CairynC
    @charly CollieMouse rotates around the current selection or the explicit rotation center (the one you set with the INS shortcut). It will not rotate around the mouse pointer (I think... I implemented so many modes over time that I tend to forget the options...). The mouse pointer only exists in 2D space anyway so the actual rotation would happen around a projection of the mouse position into the scene, and if you move the mouse, the rotational center would change... not sure whether that is even a usable mode. The mode I'd recommend would be around the explicit center: Position the mouse, press INS (or whatever shortcut you use), and then use the 3D mouse to rotate around that. C4D shows the explicit center as green cross so you always know where it is. At the moment there is no R2023 version of CollieMouse anyway, so the point is moot. But you can reach me under cairyn (at) tigress (dot) com if you require specialty development.
  • CreateRepositoryFromUrl results in TypeError in 2023

    python 2023
    4
    0 Votes
    4 Posts
    636 Views
    T
    Hi @m_adam, this works perfectly. Thank you for your fast response.
  • How to use RemoveConnections?

    2023 python
    3
    0 Votes
    3 Posts
    284 Views
    B
    @Manuel Gotcha. Thanks for the clarification. Works as expected.
  • Simple Organisational Structure Generation Script

    2023 python
    6
    0 Votes
    6 Posts
    979 Views
    ManuelM
    @nealhulme you can have a look at our forum guidelines we have a section that explains how to mark your thread as a question. Then you can select a post as the answer or mark the thread solved. I forgot, welcome to the forum, i did not saw it was your first post. Cheers, Manuel
  • Skin Weights File Parser?

    python 2023
    3
    0 Votes
    3 Posts
    324 Views
    ManuelM
    hi, this is out of scope of the support and i never used configparser. Maybe maxime or Ferdinand will have some nice tips out of their head without having to investigate. I am happy you found a solution by pre-processing the file first. Cheers, Manuel
  • Complete Replica of a Native Objects UI?

    2023 python
    7
    1
    0 Votes
    7 Posts
    1k Views
    B
    @iplai @ferdinand Thanks for providing details especially the third party API. Seems like a handy utility library I'll see what I can do with it.
  • Merge Undos for the BeginTransaction() method?

    2023 python
    8
    0 Votes
    8 Posts
    1k Views
    B
    @ferdinand gotcha. thanks for clarification and adding links.
  • Wrong Polygon indices

    c++
    3
    1
    0 Votes
    3 Posts
    424 Views
    F
    Hi @m_adam, I just tested your suggestion and worked flawless, thank you very much. Cheers and happy holidays
  • 0 Votes
    2 Posts
    285 Views
    ManuelM
    hi, welcome to the forum and thanks for reaching us out. Thanks for the question and the clarity of it. The issue here is that you are changing the Time value of the keys but not their indexes. One function that could help you is SortKeysByTime but as you can see, it is marked as private. I am not sure why it is marked private here. There might have some cases where this function will not give you the correct result. you could create your own algorithm to sort those keys. Another solution could be to delete those keys and re-insert them, they will be sorted as you insert them. Cheers, Manuel
  • Load XGroup via Python

    python
    2
    0 Votes
    2 Posts
    312 Views
    M
    Hi @cgweasel unfortunately this is not exposed, Xpresso is no longer developed except for critical issues, it is very likely that this will not be added to the API. Cheers, Maxime.
  • Timeline playing - MSG or method to get it?

    2023 python s26
    3
    0 Votes
    3 Posts
    527 Views
    mocolocoM
    Hello @m_adam, Thanks a lot, it works like a charm! Have a good day, Christophe
  • Volume Object Example

    2023 c++
    5
    0 Votes
    5 Posts
    759 Views
    D
    Thanks! That worked for me! Dan
  • Does XRef or XRef simple are now accessible with Python?

    2023 python s26
    7
    0 Votes
    7 Posts
    1k Views
    ferdinandF
    Hey @mocoloco, Should, that's why I asked. Yeah, that is not the style of the classic API, there are only little error messages and things like that. What you can also do, is use the return value of SetParameter, a boolean. It will be False when setting the parameter failed. I used 'Ge' to design all [...] Eh, I understand, you mean from GeDialog, or what? I think it just stands for GenericDialog, it also pops up in thing like GeListNode or GeClipMap. There are some really old entities in the classic API and naming conventions were different then Ge is at least not a name for interface gadgets in our APIs. Cheers, Ferdinand
  • PreferenceData plugin, Text disappears when directory is set

    python r19 sdk
    10
    0 Votes
    10 Posts
    2k Views
    DunhouD
    @m_adam Thanks a lot for this example A big shout out !
  • GeClipMap and init(BaseBitmap)

    c++ sdk
    13
    0 Votes
    13 Posts
    2k Views
    WickedPW
    Sounds like what I'm doing should be OK then. If I run into any problems, I'll pop back in for further advice. Thanks @ferdinand, your help is always appreciated. We can close this one. WP.
  • Info for ITEMTREE/customgui_itemtree

    8
    1
    0 Votes
    8 Posts
    2k Views
    M
    Hi @khor unfortunately Fritz is in holiday, but from what I see this is not possible since few types are not public. I will confirm with him when he will be back, in the meantime I wish you a nice Christmas. Cheers, Maxime.
  • 0 Votes
    9 Posts
    7k Views
    mocolocoM
    Good morning @ferdinand! I modified the whole code to always do my changes inside TagData.Message now instead of doing them in TagData.Execute, which should prevent any crash - even if I didn't got one, it seems far better to stick on the good rules and habit. Have a good day! Christophe