bool isInside( Vector3<T> &point; ) {
    T a = 0, b = 0, c = 0;
    switch( zeroaxis ) {
    case XAxis:
      a = ( s1.getX() * point.getZ() + s1.getY() * point.getY() + s1.getZ() );
      b = ( s2.getX() * point.getZ() + s2.getY() * point.getY() + s2.getZ() );
      c = ( s3.getX() * point.getZ() + s3.getY() * point.getY() + s3.getZ() );
      break;
    case YAxis:
      a = ( s1.getX() * point.getX() + s1.getY() * point.getZ() + s1.getZ() );
      b = ( s2.getX() * point.getX() + s2.getY() * point.getZ() + s2.getZ() );
      c = ( s3.getX() * point.getX() + s3.getY() * point.getZ() + s3.getZ() );
      break;
    case ZAxis:
      a = ( s1.getX() * point.getX() + s1.getY() * point.getY() + s1.getZ() );
      b = ( s2.getX() * point.getX() + s2.getY() * point.getY() + s2.getZ() );
      c = ( s3.getX() * point.getX() + s3.getY() * point.getY() + s3.getZ() );
      break;
    }
    return ( a < T( 0 ) ) && ( b < T( 0 ) ) && ( c < T( 0 ) );
  }

Add a code snippet to your website: www.paste.org