コード例 #1
0
void DistanceFieldFitter::initializeFromMesh(const arm_navigation_msgs::Shape &mesh)
{
    std::vector<btVector3> btVectors;
    //we use a slightly larger resolution than the distance field, in an attempt to bring
    //down pre-computation time
    sampleMesh(mesh, btVectors,  1.5 * distance_field_resolution_ );
    initializeFromBtVectors(btVectors);
}
コード例 #2
0
ファイル: model_fitter.cpp プロジェクト: ArthurVal/riddle_ork
void DistanceFieldFitter::initializeFromMesh(const shape_msgs::Mesh &mesh)
{
  std::vector<cv::Point3f> btVectors;
  model_points_.reserve(mesh.vertices.size());
  typedef std::vector<geometry_msgs::Point>::const_iterator I;
  for (I i = mesh.vertices.begin(); i != mesh.vertices.end(); i++)
    model_points_.push_back(cv::Point3f(i->x,i->y,i->z));
  // 20mm resolution
  //sampleMesh(mesh, model_points_, 0.02 );

  //we use a slightly larger resolution than the distance field, in an attempt to bring
  //down pre-computation time
  sampleMesh(mesh, btVectors,  1.5 * distance_field_resolution_ ); 
  initializeFromVector(btVectors);
}