Intersecting 3 Planes (PlanePlanePlane Intersection)

Hello there,

I just wondered if there was a way to intersect 3 planes (=PlanePlanePlaneIntersection), resulting in a point…
I did not find anything in the rhinoscriptsyntax, I guess I am not too profound in RhinoCommon.

I could pretty much think of a workaround: Intersecting 2 planes and then intersect a line with the last plane, but maybe there is something more elegant?

Thanks,
T.

Hi @tobias.stoltmann,

There is Intersection.PlanePlanePlane method:

import Rhino.Geometry as rg

succ, interscPt = rg.Intersect.Intersection.PlanePlanePlane(pln1, pln2, pln3)
1 Like

@djordje, Thanks a lot.
I should have seen that myself.

So I have one more question (which shoudl acutally be asked in another thread here).
Is it possible to have an intersection from a point a vector would be starting with a plane?
I am creating a line so far and am using PlaneCurveIntersection so far, but I guess there must be something more elegant, right?

Thanks,
T.

Hi @tobias.stoltmann,

So an intersection between a vector (from a given vector start point) and a plane?
Did I understand that correctly?

@djordje
Yes, exactly.

If rs.PlaneCurveIntersection is working, you can use that one as well.

This one works too, and considers the vector as an infinite length:

vec_length = 10  # any value. Does not matter, as it will consider vector to have an infinite length
ln = rg.Line(startPt, vec, vec_length)

succ, interscT = rg.Intersect.Intersection.LinePlane(ln, pln)

if succ:
    interscPt = ln.PointAt(interscT)
1 Like

@djordje
Excellent, yes.

1 Like