本文整理汇总了C++中typenamehelperlistt::iterator类的典型用法代码示例。如果您正苦于以下问题:C++ iterator类的具体用法?C++ iterator怎么用?C++ iterator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了iterator类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1:
template <typename PointT> void
pcl::SupervoxelClustering<PointT>::reseedSupervoxels ()
{
//Go through each supervoxel and remove all it's leaves
for (typename HelperListT::iterator sv_itr = supervoxel_helpers_.begin (); sv_itr != supervoxel_helpers_.end (); ++sv_itr)
{
sv_itr->removeAllLeaves ();
}
std::vector<int> closest_index;
std::vector<float> distance;
//Now go through each supervoxel, find voxel closest to its center, add it in
for (typename HelperListT::iterator sv_itr = supervoxel_helpers_.begin (); sv_itr != supervoxel_helpers_.end (); ++sv_itr)
{
PointT point;
sv_itr->getXYZ (point.x, point.y, point.z);
voxel_kdtree_->nearestKSearch (point, 1, closest_index, distance);
LeafContainerT* seed_leaf = adjacency_octree_->at (closest_index[0]);
if (seed_leaf)
{
sv_itr->addLeaf (seed_leaf);
}
else
{
PCL_WARN ("Could not find leaf in pcl::SupervoxelClustering<PointT>::reseedSupervoxels - supervoxel will be deleted \n");
}
}
}
开发者ID:4ker,项目名称:pcl,代码行数:30,代码来源:supervoxel_clustering.hpp
示例2: reseedSupervoxels
template <typename PointT> void
pcl::SupervoxelClustering<PointT>::refineSupervoxels (int num_itr, std::map<uint32_t,typename Supervoxel<PointT>::Ptr > &supervoxel_clusters)
{
if (supervoxel_helpers_.size () == 0)
{
PCL_ERROR ("[pcl::SupervoxelClustering::refineVoxelNormals] Supervoxels not extracted, doing nothing - (Call extract first!) \n");
return;
}
int max_depth = static_cast<int> (1.8f*seed_resolution_/resolution_);
for (int i = 0; i < num_itr; ++i)
{
for (typename HelperListT::iterator sv_itr = supervoxel_helpers_.begin (); sv_itr != supervoxel_helpers_.end (); ++sv_itr)
{
sv_itr->refineNormals ();
}
reseedSupervoxels ();
expandSupervoxels (max_depth);
}
makeSupervoxels (supervoxel_clusters);
}
开发者ID:4ker,项目名称:pcl,代码行数:25,代码来源:supervoxel_clustering.hpp
示例3: initializeLabelColors
template <typename PointT> void
pcl::SupervoxelClustering<PointT>::makeSupervoxels (std::map<uint32_t,typename Supervoxel<PointT>::Ptr > &supervoxel_clusters)
{
supervoxel_clusters.clear ();
for (typename HelperListT::iterator sv_itr = supervoxel_helpers_.begin (); sv_itr != supervoxel_helpers_.end (); ++sv_itr)
{
uint32_t label = sv_itr->getLabel ();
supervoxel_clusters[label] = boost::make_shared<Supervoxel<PointT> > ();
sv_itr->getXYZ (supervoxel_clusters[label]->centroid_.x,supervoxel_clusters[label]->centroid_.y,supervoxel_clusters[label]->centroid_.z);
sv_itr->getRGB (supervoxel_clusters[label]->centroid_.rgba);
sv_itr->getNormal (supervoxel_clusters[label]->normal_);
sv_itr->getVoxels (supervoxel_clusters[label]->voxels_);
sv_itr->getNormals (supervoxel_clusters[label]->normals_);
}
//Make sure that color vector is big enough
initializeLabelColors ();
}
开发者ID:5irius,项目名称:pcl,代码行数:17,代码来源:supervoxel_clustering.hpp
注:本文中的typenamehelperlistt::iterator类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论