public Plane(Vector3 point0, Vector3 point1, Vector3 point2) { this.Normal = Vector3Ex.Cross((point1 - point0), (point2 - point0)).GetNormal(); this.DistanceFromOrigin = Vector3Ex.Dot(Normal, point0); }
public Plane(Vector3 planeNormal, Vector3 pointOnPlane) { this.Normal = planeNormal.GetNormal(); this.DistanceFromOrigin = Vector3Ex.Dot(planeNormal, pointOnPlane); }
public double GetDistanceFromPlane(Vector3 positionToCheck) { double distanceToPosition = Vector3Ex.Dot(Normal, positionToCheck); return(distanceToPosition - DistanceFromOrigin); }