public boolean isNumericallyIdentical(final Plane p){
  if (Math.abs(this.y * p.z - this.z * p.y) >= MINIMUM_RESOLUTION)   return false;
  if (Math.abs(this.z * p.x - this.x * p.z) >= MINIMUM_RESOLUTION)   return false;
  if (Math.abs(this.x * p.y - this.y * p.x) >= MINIMUM_RESOLUTION)   return false;
  final double denom=1.0 / (p.x * p.x + p.y * p.y + p.z * p.z);
  return evaluateIsZero(-p.x * p.D * denom,-p.y * p.D * denom,-p.z * p.D * denom);
}

public boolean isNumericallyIdentical ( final Plane p ) { if ( Math . abs ( this . y * p . z - this . z * p . y ) >= MINIMUM_RESOLUTION ) return false ; if ( Math . abs ( this . z * p . x - this . x * p . z ) >= MINIMUM_RESOLUTION ) return false ; if ( Math . abs ( this . x * p . y - this . y * p . x ) >= MINIMUM_RESOLUTION ) return false ; final double denom = 1.0 / ( p . x * p . x + p . y * p . y + p . z * p . z ) ; return evaluateIsZero ( - p . x * p . D * denom , - p . y * p . D * denom , - p . z * p . D * denom ) ; }
returns true if this plane and the other plane are identical within the margin of error .
