Which rhinoscriptsyntax functions do you need to have implemented next?

In Rhino WIP, we’ve been adding to Python all VBScript functions that users requested or mentioned in the past…

After next week’s WIP, this job will be done.

Next, we would like to know if you have requests or priorities for functions that are still missing.

Do you need other functions?

Note: some RhinoScript/VBScript function do not make full sense in Python.


Hi Giulio,

i would like to have a simple (and super fast) method to get all nearest neighbours in a pointcloud with the option to define how many neighbours per pointcloud point it returns or optional max distance value. It should return a list of list containing the point indices.



Hi Giulio,

Not sure if these are in already but recall at some point Python scripter ran into not having these to work with:

(import / export viewdisplaymode)

In general, apart from the set of methods that don’t make sense for Python ( and I realize it may be lots of work left ) why would we have to specify the needed missing ones instead of just going through the list of all RS methods help (including the cool ones recently added in WIP ) and making sure RhinoScriptSyntax has them all as well ?

thanks for working on this.


I would like to see added a Rhinoscript method to stop the document from saving (or copy and paste between open documents).

This would allow me to distribute my plug-in without a time limit.


Mesh.ExtractNonManifoldEdges, but I would prefer having it available in RhinoCommon first, then in Python as well. :wink:


// Rolf

Hi Giulio,

one long time wish for the RhinoScript compiler, please add support to use a python module file as a library as it is possible for RhinoScript (vb). I would like to see a proper GUI for the compiler as well, really missing the one Monkey had. I do also miss the licensing features of the old compiler.

For RhinoScript python i would lke to have a way to create dockable panels accepting a Windows.Form or ETO Form.

To make it easier to find depricated code in V6, please print out line numbers along with the deprication messages and provide a way to suppress the messages.


How about AddStartupScript() and LastLoadedScriptFile() - to allow python scripts to be drag’n’drop loaded like Rhinoscript ones can now… Don’t know if there are other roadblocks to this procedure though…


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: https://ironpython-test.readthedocs.io/en/latest/library/warnings.html (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.