Ok, tested on Max 2014-2017 and it works. On Max 2018+ things change significantly with QT and none of this works as is. But here might be another …
Definitely RegisterDialogBar() does create a window wrapper for the rollout. That’s why we lose some rollout features as stated in the Help file. The…
Looking further into this, It seems that for .Net controls a new handle is attached to the window. I suppose everything is handled by this handle? Bu…
It must be possible at least with native windows, like the Track View Editor. I don’t know about MXS rollouts. Perhaps they have some kind of limitati…
I couldn’t find anything about how to doing it with the SDK. However, for .Net forms (like the Scene or Layer Explorer), there is a class WinFormsCUI…
Convert a string to an array of characters: fn StringToCharArray str = (dotnetobject “system.string” str).ToCharArray() Convert an array of character…
Down to 1 ms with undo: ( delete objects sp = converttopoly (sphere segs:128 wirecolor:[128,0,0]) max create mode seed 0 positions = for j =…
denisT: Jorge, i suggest to split the first place as usually Yes, you got it. Don’t even need to test it. This was a smart move: ep.getedgesus…
This version is slower on my end than the previous optimization. Although if<>then may be generally slower, in this case I found that it is bas…
denisT: ~20% faster Mmm, well, fair 5-20% optimization of my algorithm, so I’ll give it a
denisT: try to beat mine 50-80% faster fn GetEndEdgesAndVerts mdf = ( if not iskindof mdf edit_poly do return #(#{},#{}) GetEdgeVert …
One possible solution: ( fn GetMinimumArrayValues amount:1 array:#() = ( tmp = deepcopy array mmax = (amax tmp)+1 result = for j = 1 to am…
There is an example of this in the SDK. maxscript\mxsagni\common_funcs.cpp get_IMeshSelData_for_mod()
Here are other two resources:
Try: polyop.setvertselection geo (polyop.getvertselection geo) or polyop.propagateflags geo #vertex 0 #vertex 0