How to automatically find out if your Rhino document is set to millimetres or metres:
private void RunScript(ref object scale)
{
int rtnval = 1;
Rhino.RhinoDoc doc = Rhino.RhinoDoc.ActiveDoc;
Rhino.UnitSystem system = doc.ModelUnitSystem;
if(system.ToString() == "Meters") rtnval = 1;
else rtnval = 1000;
scale = rtnval;
}
This script returns a value of 1 if the document is in metres, or 1000 otherwise. (I assume that the user will only be using mm or m.)
To use, create a C# component in Grasshopper and copy the part between the curly brackets to the code of the C# component. Make sure that the component has an output called ‘scale’.
…or download the component from below:
Download
