/// Generates an oriented hyperplane from its normal vector.
Generates an oriented hyperplane from its normal vector.
Generates an oriented hyperplane from its normal vector .
pub fn new(normal: Vector<T>, pos: T) -> Self {
        let rank = normal.len();
        let mut subspace = Subspace::new(&normal * pos);
        let mut e = Vector::zeros(rank);
        for i in 0..rank {
            e[i] = T::ONE;
            e += &normal * (pos - e.dot(&normal));
            subspace.add(&e);
            e[i] = T::ZERO;
        }
        Self { subspace, normal }
    }
pub fn new ( normal : Vector < T > , pos : T ) -> Self { let rank = normal . len ( ) ; let mut subspace = Subspace :: new ( & normal * pos ) ; let mut e = Vector :: zeros ( rank ) ; for i in 0 .. rank { e [ i ] = T :: ONE ; e += & normal * ( pos - e . dot ( & normal ) ) ; subspace . add ( & e ) ; e [ i ] = T :: ZERO ; } Self { subspace , normal } }
Generates an oriented hyperplane from its normal vector.
Generates an oriented hyperplane from its normal vector .
normal
Vector<T>
pos
T