# Length of ellipse or hyperbola arc?

Let’s say one draws an ellipse
then one ‘trims’ it with a line or plane, so now one has just a ‘piece’ of the original ellipse
is there any way to ‘measure’ this ellipse-arc?

I tried: Properties => Details - and it doesn’t show a length

am I barking up the wrong tree?
me

Try the Length command

THANK YOU!

ah HA! -said the blind man as he fell over the log in the dark…

it’s RIGHT THERE - next to ‘distance’ which i’d been trying for - well we won’t go there

THANK YOU!

Right. Distance is a straight line distance between points.
Length is along the curve or edge.

Bill,
there is also a length dimension in the dimensions toolbar/menu. It will leave an annotated text with the length value of the curve you click on. This will update as the curve changes. Very handy sometimes!

thank YOU!!!

Fm: Bill’s iPhone 6+

Here’s mitch’s handy script for measuring a portion of a curve.

! -_RunPythonScript (""“Measures the length of a subsection of a curve chosen by 2 points
Script by Mitch Heynick 26 April 2014"”"

import rhinoscriptsyntax as rs

def LengthAlongCrvTwoPts():
crv=rs.GetObject(“Select curve to measure”,4,True)
if not crv: return
pt1=rs.GetPointOnCurve(crv,“Pick first point on curve”)
if not pt1: return
pt2=rs.GetPointOnCurve(crv,“Pick second point on curve”)
if not pt2: return

``````sd=[rs.CurveClosestPoint(crv,pt1),rs.CurveClosestPoint(crv,pt2)]
if sd[0]>sd[1]: sd.reverse()
length=rs.CurveLength(crv,sub_domain=sd)
prec=rs.UnitDistanceDisplayPrecision()
units=rs.UnitSystemName(abbreviate=True)
print "Length along curve between points = {} {}".format(round(length,prec),units)
``````

LengthAlongCrvTwoPts() )

Then to use it, heres a two part macro for ya

1. It will have you pick two points using your near osnap or other osnaps(put on left click of button). This is to pick the points before mitch’s script.
2. The second macro (to put on right click of button), will delete those two points. Handy if you are testing various measures, etc…

! _point
pause
_sellast
_setobjectname pt49g5
_point
pause
_sellast
_setobjectname pt50g5

macro 2

! _-selname pt49g5
_delete
_-selname pt50g5
_delete

THANK YOU!, for your time and attention…

I am ‘just’ learning about python scripting on Rhino,
I’ve used python in other realms, this helps me with that
effort, also…

what would be the ‘difference’ from using this script
and/or using the ‘length’ command?

???

Bill

=======================================================================

First, you do not need the macros above to run the script, it is independent.

The script is for measuring the length between two arbitrary points on a given curve.

The Length command measures the length of the entire curve, or the combined lengths of a set of curves.

HTH, --Mitch

Arbitrary Points - that is the key thing I didn’t quite understand…

a significant improvement over the whole length; whatever it might be!

# thanks again!

Oohh, I didn’t know you could select multiple things for length! Thanks again Mitch.