algorithmic modeling for Rhino


So this may be really obvious but I can't work it out for the life of me.

I have a curve and a point, both known, I want to be able to draw a line from the point such that when it intersects with the curve the curve and the line both have an equal tangent (See image).

Any help would be greatly appreciated as this is driving me slightly mad.


Views: 587

Replies to This Discussion

I'm really just trying to find a way to reproduce the results of the rhino command "tangent from curve" in GH

Hi there,

again I'm using "my" custom "rolled up" torus Cartesian derivative graph to this kind of stuff...

please give me some more time to fix latest errors XD, I would like to attach only a clean work...

Somehow low accuracy: I'm trying to make an adaptive subdivision of the curve to increase precision only where needed.

No tree support: for now it works only with 1 point and 1 curve, I'm trying to create a solution that can handle at least a simple list of points and a simple list of curves as input.

I don't see any other option than to iteratively search along the curve. Galapagos might help if you have limited amount of curves and points.

Yeah, I think I'm coming to the same conclusion, I've been using hoop snake to do it but its slow, inaccurate a and generally pretty clunky. 

Here, I didn't manage to make it works with lists of points/curves...

just 1 point and 1 curve.

It have almost the same exactly results as tangent in rhino and is enough fast for me...

It my "know-how in derivative torus-graph" XP

Hope it helps.


Thanks to Pieter Segern now we can input simple lists!


With cross reference component it should be also possible to manage well custom combinations.

Updated the cluster with some fixes.

Done a user object!

Removed internalized data from user object :P

And this is how to get a cross reference output

(ex. 2 points + 3 curves > 6 branches output)


Your Incredible!!! Thank you so much






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service