Eigen::VectorXd Line3D::getLine(Plane3D &p1, Plane3D &p2) { Eigen::VectorXd v(6); this->m = p1.getPlane() * p2.getPlane().transpose() - p2.getPlane() * p1.getPlane().transpose(); this->plucker_matrix2vector(this->m, v); this->plucker_vector_swap(v); return v; }
Point3D Line3D::intersectPlane(Plane3D &p) { Eigen::Vector4d point; this->plucker_vector2matrix(this->m, this->v); point = this->m * p.getPlane(); return Point3D(point); }