Grasshopper

algorithmic modeling for Rhino

Finding Point in space at equal distance between 3 points

Hey guys,
I am trying to find a point which is at equal distance from many points in space.. for example if i hava 3 points say A, B, C  (say forming a triangle or any shape), i want to tell grasshopper to find a point which is as equal distande from A, B, C..  I dunn want to create a shape out of it, its juss with points.. which shape i just give area command and i get the centre point..

Any idea?
Thanks
Tushar

Views: 7116

Replies to This Discussion

Make Spheres around all 3 points of the same radius. Intersect sphere A with B, which will give a circle. Intersect the circle with sphere C, which will give you 2 points. These are your required points.

Matter of fact, connect these two points to form a line, and any point on this line will always be the same distance from all the 3 points.
Hey Suryansh,
Its a bit confusing.. I didnt understand the Sphere part.. Could u please consider the drawing in 2d for my better understanding.. Its not necessary that there are 3 points, could be more.. If possibe can u post an example please..

Thank u
Make any 3 points in Rhino, and adjust the radius of the spheres until all 3 touch.


If you have 4 points, intersect the line you get from the above process with the 4th sphere, which will also give you 2 points (both equidistant from the original 4). If you have 5 or more points, I'm not sure if a solution is possible.
Thanks a lot Suryansh.. I understood now.. Will Try out Something with more points as i need approx 8 points
That sounds like a rather roundabout way to solve this.

Much simpler just to make perpendicular planes at the midpoints of 2 of the lines between the points and intersect them :

Hey Daniel,
How about having 8 points and then finding a common point which is equidistant from all? even in this i am not getting point equidistant to all 3 points.. i dunno whether i have done it correct or not..


You did take midpoints right ?

As for 8 points - any more than 4 points and it won't generally be possible
Hey thanks a lot Daniel.. i'll try to divide the no. of points to group of 4 ..Lets c what i get..

Thank u
That certainly looks like the faster way of doing it, only with mathematical intersections. Good stuff!
Hey guys

I think you've complicated the subject a bit...

1. For any three different points in space the point equally distant from each of them is the center of the circle which passes through those points:


2. For more than three different points in space the solutions exists only if those points lay on a sphere:


However, for any number of points the solution above should give you a point with minimally deviated distances from the given set. In other words - as close as you can get to eqidistant.

Cheers,
JJ
Hey Jacek,
Nice Solution.. I think it works.. its doesnt give me equidistant, but give me the central point for the set of points..
Thank u
Not so fast, Tushar :)

I think you might be confusing the centroid point of a point cloud with the concept of an equidistant point, which we've discussed above.

You've mentioned the Area component in your first post, which gives you the centroid of a given shape.
In order to find the centroid of a point cloud you'd need to average the points' xyz coordinates.

Like this, for example:


Or this:

Which is basically the same thing, only more straightforward.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service