Which rhinoscriptsyntax functions do you need to have implemented next?

I could use the ObjectMesh methods (density, max angle, etc,) for use with madCAM. It’s one of the few scripts I have that I couldn’t rework in Python.



@DanBayn You can access those via RhinoCommon currently if you need this for V5…


Here is a sample script I used to test…

GetCustomMeshParameters.py (832 Bytes)


1 Like

Hi all, and thank you very much for the feedback,

Noted, RH-41282

Noted, RH-41283

Some of the RhinoScript methods need to be ported, purely geometric ones. As you can see from the requests, everything considered RhinoScript/VBScript is a project that follows users’ requests and, as such, may have needs that are other than in Python. Also, if we are lucky some of these requests might make it in V6 SR0 (no promise): this way we can set priorities. Finally, there are already in Python at least a handful of functions that are not present in VBScript: you guessed it: users’ requests.

Here I think @dale can help more. Probably, this should be split into another topic.

It’s already available in Rhino WIP. At this point, there might be technical reasons why this could not be added to Rhino 5.

I’ll defer this request till @stevebaer can say something more.

This is likely something that would be better in a plug-in. As such maybe a Python plug-in?

I actually fought a long battle (several weeks) against deprecated code in RhinoScriptSyntax. I declared that this issue was fixed, and so did the tester. RH-34759
If you happen to find any obsolete code printout in the current Rhino WIP, please let me know.

The deprecation message is output by the IronPython runtime. If you find an obsolete warning, we can try the mechanisms explained here: 27.6. warnings — Warning control — IronPython 2.7.2b1 documentation (I didn’t do that yet).

Noted, RH-41287
@Helvetosaur I however do not understand how LastLoadedScriptFile() might help with AddStartupScript(). VBScript startup scripts are a list of files, so LastLoaded() will not be very helpful, no?

Noted, RH-41289. Thank you, Mitch @Helvetosaur for the example for V5.

This has been very helpful so far!

4 posts were split to a new topic: AddAlias, LastLoadedScript and AddStartupScript in Python: creating commands

Thanks Mitch, I’ll take a look at that.

Updating the compiler is on my 6.1 list. This doesn’t necessarily mean that it won’t happen until 6.1, it just isn’t necessary to be completed before shipping an initial release of 6.0.

In other words, it is on my short list

This is a project that I would love to see get started. It seems like we could make an open source module that wraps up Eto functionality and exposes it in an easy to use in a ‘pythonic’ way. Docking dialogs specifically are going to be tricky and will require some changes in Rhino first.

Thanks @stevebaer. Does that mean that once the compiler suppors python modules this will work in Rhino 5 too ?

Me too :wink: Is it possible for Winforms too or exclusive with ETO ?


I don’t see why not at the moment, but I haven’t gotten into the nitty gritty details yet.

I guess it all depends on how such a module would be put together.

@stevebaer, this would be really great as i almost abandoned compiling my scripts once modules are involved.


I’ve mentioned this in the past, but it’s probably worth repeating now that this the Python functions are being addressed. Can we have the various listbox windows remember their previous locations? If I recall correctly, PropertyListBox is the only one that will open in the last place it was closed. All of the rest revert back to the top left side of the screen.

I found my old post on this subject:



Reported RH-41351

7 posts were split to a new topic: Sort and arrange order of layers programmatically: request

Is there already a way to use ViewCapturetofile in rs? I’m just about to look into using this in python.

Hi @siemen

Just script the ViewCaptureToFile command using rs.Command.

– Dale

RH-41282 is fixed in the latest WIP

1 Like

I would like to see rhinoscriptsyntax functions for splitting and trimming surfaces using a curve (or curves) on the surface (instead of using a brep as is used in the SplitBrep() and TrimBrep() functions). The functions could be something like:

SplitSurfaceByCurve(surface_id, curve_id)
TrimSurfaceByCurve(surface_id, curve_id, point)

Where surface_id is the guid of the surface to be split/trimmed, curve_id is the guid (or list of guids) for the cutting curve(s), and point is a 3d point on the surface indicating which portion to delete during trimming. The SplitSurfaceByCurve function wouldn’t have to be much more than a wrapper around the RhinoCommon Brep.Split method, but would hopefully be easier to use for those who aren’t as familiar with RhinoCommon.

1 Like

Reported: RH-41493

Late to the party here, but @piac I do not see rs.IsExtrusion anywhere… Thx, --Mitch

Thanks, reported: RH-43346.

Adding to the list:


Thx, --Mitch