예제 #1
0
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;
}
예제 #2
0
Point3D
Line3D::intersectPlane(Plane3D &p) {
  Eigen::Vector4d point;

  this->plucker_vector2matrix(this->m, this->v);
  point = this->m * p.getPlane();  
  return Point3D(point); 
}