Just wondering if there is an inverse function of CurveArcLengthPoint
i.e., a function that gives the length of a curve between the curve start point and a given other point.
Currently, I use a small function like below, but my gut feeling says this already exists somewhere
As for your curve length issue:
I do not think there is some method which will directly do that. And basically you did it right. The only thing that could be improved is using RhinoCommon methods directly instead of rhinoscriptsyntax functions. In this way you would not have to delete the sub curve:
If I understood you correctly one the vector issue, you want to add two vectors, but the second one should be scaled?
You can sum and multiply the Vector3d type:
You can feed a subdomain into rs.CurveLength to specify a segment of the curve:
import rhinoscriptsyntax as rs
Curveid=rs.GetObject("Select Curve",4)
point=rs.GetPointOnCurve(Curveid,"Select Point on curve")
PointParam=rs.CurveClosestPoint(Curveid,point)
Length=rs.CurveLength(Curveid,-1,(0,PointParam)) #0 is start parameter of the curve!
print Length