Determine the x coordinate where a curve crosses a certain y coordinate

I need to determine the x coordinate where a curve crosses a certain y coordinate. For example, the curve passes through y:100, and I can see that the x value is close to 50, but I need to know the exact value of x (eg, x:50.32). The only method I know of is to draw a line on y:100 (ie, from 45,100 to 55,100) and utilize the intersection. Is there any other way? Thanks.

Hello - I can’t think of a better way in plain Rhino.
@surfski - here’s a python script that does what I think you want -

To use the Python script use RunPythonScript, or a macro:

_-RunPythonScript "Full path to py file inside double-quotes"

This asks for the curve, an axis and a point. For the point you can just type in the one coordinate you care about. (3.2 KB)


@pascal Thanks! This may do the job, but I’m not sure how to use it. It works if I click on a point. But not having luck entering a coordinate. Everything I’ve tried just results in some combination of 0’s, 1’s, and Trues. In my original example, I know y:100 and want x. What should I enter in the Pick Point filed, and select in the Axis dropdown?

Hello - just enter the coordinate you care about for now - like if you want y=100 then type 100 and Enter. make sure the axis set is Y… any luck?


Got it! My first test line may not have been where I thought it was (ie, it didn’t pass through y:100). Thanks again.

I have a related question. When drawing an angled line, is there a way to specify that it end at y:100.00? I can zoom in and hope my cursor lands on 100.00, draw it long and use another line through 100.00 to trim it, or do some geometry, but I’ve always wondered if there’s a way as part of the command. Thanks!

yes and no…, there was a similar thread here:


The .x, .y, .z commands are what I needed - thanks again!