• FieldList Enable Clamping

    Cinema 4D SDK r20 sdk c++
    5
    0 Votes
    5 Posts
    2k Views
    J
    Thanks, that was exactly what I was looking for. John Terenece
  • 0 Votes
    3 Posts
    1k Views
    yesbirdY
    Thanks, @Manuel. The reason was in definition of TAG_MULTIPLE at the moment of registration. Now the tag properties are displayed as I was expecting. .... YB
  • Quicktab SDK Example

    Cinema 4D SDK r20 2023 python sdk
    9
    1
    0 Votes
    9 Posts
    3k Views
    M
    While rethinking about it last night, it may not be that slow if on user interaction you just flush the main group and re-attach already existing dialog. So you need to modify your `def _DrawQuickTabGroup(self)`` method like so to only display visible dialog: def _DrawQuickTabGroup(self, onlyVisible=True): """ Creates and draws all the SubDialog for each tab, take care it does not hide these according to a selection state. Returns: True if success otherwise False. """ # Checks if the quicktab is defined if self._quickTab is None: return False activeIds, activeNames = self.GetActiveTabs() # Flush the content of the group that holds all ours SubDialogs self.LayoutFlushGroup(ID_MAINGROUP) #self.GroupBorderSpace(left=5, top=5, right=5, bottom=5) # Iterates over the number of tab to create and attach the correct SubDialog for tabId, (tabName, tabGui) in enumerate(self._tabList.items()): toDisplay = tabId in activeIds if not toDisplay: continue self.AddSubDialog(ID_QUICKTAB_BASE_GROUP + tabId, c4d.BFH_SCALEFIT | c4d.BFV_SCALEFIT, 0, 0) self.AttachSubDialog(tabGui, ID_QUICKTAB_BASE_GROUP + tabId) self.LayoutChanged(ID_MAINGROUP) return True Then in the Command message instead of calling DisplayCorrectGroup you should call _DrawQuickTabGroup like so: def Command(self, id, msg): if id == ID_QUICKTAB_BAR and self._quickTab: self._DrawQuickTabGroup() return True Regarding your question and classic Tab, find an example in Remove a GeDialog Tab Group but as you can see this is also not possible to remove a tab without redrawing everything . Cheers, Maxime.
  • 0 Votes
    1 Posts
    504 Views
    No one has replied
  • How to get the status of video post in python

    Cinema 4D SDK sdk python
    4
    1
    0 Votes
    4 Posts
    1k Views
    R
    @ferdinand Thank you, the code runs well. └(^o^)┘
  • 0 Votes
    8 Posts
    4k Views
    yesbirdY
    Hi, @Manuel. I understand, thank you. All the best, .... YB
  • Best practices for loading textures?

    Cinema 4D SDK sdk c++ 2023
    3
    0 Votes
    3 Posts
    685 Views
    M
    Hello @jpheneger, without further questions or postings, we will consider this topic as solved by Friday 02/06/2023 and flag it accordingly. Thank you for your understanding, Maxime.
  • SDK typo/discrepancy ? bitmap.Init() regarding bitdepth

    Moved Bugs python sdk
    7
    0 Votes
    7 Posts
    2k Views
    M
    Thank you Ferdinand for your time, and also providing a high / low level solution. As far as I can tell it works all as intended - my code now results in clean colors "measured". (in lowlvl R20 and highlvl 2023) I found a small discrepancy with render instances but that's another topic. Cheers, mogh
  • How to "permanently" store data?

    Cinema 4D SDK
    4
    0 Votes
    4 Posts
    835 Views
    ferdinandF
    Hello @herrmay, Yes, it can be a bit cumbersome to write a whole abstraction layer, but most of the time it is avoidable to do that in the first place. In your case it should be pretty simple. Iterate over all layers you want to save to disk. Get the MAXON_CREATOR_ID UUID of each layer and its data container. Write the UUID and the data container to disk using JSON or HyperFile, I would recommend the latter as it will be less work. You only must convert the UUID bytes to a string, put the string into the file, then the data container and you are done. If you want to, you could also store all layer data in one file per document, or just have one giant file for all documents. Later load these hyper file fragments back and do what you want with the data. When you need the original node, traverse the layers in the active document for a node with the stored UUID. You could also make things fancier and search in all open documents or even store the document path in your serialized data and load that document. Saving things in the document container is a possibility too, you should make sure though to use a plugin ID for that. Cheers, Ferdinand
  • 0 Votes
    4 Posts
    1k Views
    ferdinandF
    Hey @mogh, just to clarify: I found that bit of the documentation before you pointed it out, but in my mind I could not link "needs a document" to "the object has to be present" ... Well, the documentation clearly states it: doc (Optional[c4d.documents.BaseDocument]) – The document for the operation. Should be set if possible. Must be set for MCOMMAND_JOIN, MCOMMAND_MAKEEDITABLE, MCOMMAND_CURRENTSTATETOOBJECT and MCOMMAND_SPLINE_PROJECT. If you set the document, the objects which you pass to this function have to be in the same document. So pay attention that you use one send_modeling_command per document for objects. But that could be more visible. I'll see if I can rework the function documentation a bit to make that important information more prominent. Cheers, Ferdinand
  • C4D Threading in python doesn't work as expect .

    Cinema 4D SDK sdk python 2023
    9
    0 Votes
    9 Posts
    2k Views
    DunhouD
    @ferdinand thanks for your generoso help. I already send you an email with an zip file , and some notes in the front of the codes. Have a good day!
  • Back on "message after tag delete" post

    Cinema 4D SDK python s26 sdk
    5
    0 Votes
    5 Posts
    1k Views
    mocolocoM
    Hi @ferdinand, Thanks a lot one more time for all the detailed examples and informations. I finally opt to a data container of the node, mostly due to the fact that the hooks are volatile and need to be set all the time. I also ran some tests with globals without having encounter issues, but indeed you need to be careful when handling this approach. Cheers, Christophe
  • Render settings Multi-Pass flag

    Cinema 4D SDK c++ sdk
    4
    1
    0 Votes
    4 Posts
    880 Views
    ferdinandF
    Hello @wickedp, I have forked your questions as they both did constitute new topics, find them here: Rendering into Multipassbitmap Depth Pass Adding Layers to a MultipassBitmap Cheers, Ferdinand
  • Can REAL MIN / MAX value be changed on Init?

    Moved Bugs 2023 python s26 sdk
    20
    0 Votes
    20 Posts
    6k Views
    mocolocoM
    Hi there, Was the issue fixed on R2023 or R2024? Thanks, Christophe
  • [SOLVED] ARROWBUTTON resource not accessible for Python?

    Cinema 4D SDK
    5
    0 Votes
    5 Posts
    998 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
  • GeClipMap and init(BaseBitmap)

    Cinema 4D SDK c++ sdk
    13
    0 Votes
    13 Posts
    3k 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.
  • Support for C++20

    Cineware SDK
    3
    0 Votes
    3 Posts
    2k Views
    M
    Thanks for the reply. No problem if it's not backwards compatible. We will adapt our code to the latest version of the SDK. Thank you.
  • Remove render sequence automatic numbering

    Cinema 4D SDK
    8
    0 Votes
    8 Posts
    2k Views
    L
    Hello @ferdinand Thanks a lot for the code above, I really appreciate your help. I changed a few things for match what I was looking for and now it's working perfectly. Thanks again!
  • Retrieving take data and overrides.

    Cineware SDK c++ windows sdk
    3
    1
    0 Votes
    3 Posts
    2k Views
    A
    Hi Manuel, Thank you. I've been expecting this. Hope such support will be added sooner or later Our app: finalmesh.com Alex
  • How to render a animation preview ?

    Cinema 4D SDK sdk s26 python
    7
    0 Votes
    7 Posts
    2k Views
    M
    Hi @Dunhou you can't control the Make Preview plugin, you have to rewrite the function yourself with all the tips previously shared in this topic. Cheers, Maxime.