Example #1
0
template <typename PointT, typename PointNT> void
pcl::SurfelSmoothing<PointT, PointNT>::computeSmoothedCloud (PointCloudInPtr &output_positions,
                                                             NormalCloudPtr &output_normals)
{
  if (!initCompute ())
  {
    PCL_ERROR ("[pcl::SurfelSmoothing::computeSmoothedCloud]: SurfelSmoothing not initialized properly, skipping computeSmoothedCloud ().\n");
    return;
  }

  tree_->setInputCloud (input_);

  output_positions->header = input_->header;
  output_positions->height = input_->height;
  output_positions->width = input_->width;

  output_normals->header = input_->header;
  output_normals->height = input_->height;
  output_normals->width = input_->width;

  output_positions->points.resize (input_->points.size ());
  output_normals->points.resize (input_->points.size ());
  for (size_t i = 0; i < input_->points.size (); ++i)
  {
    smoothPoint (i, output_positions->points[i], output_normals->points[i]);
  }
}
Example #2
0
void								Landscape::smoothMap(void)
{
	sPoint							closestPoint;
	std::vector<sPoint>::iterator	it;

	for (it = _immovablePoints.begin(); it != _immovablePoints.end(); ++it)
	{
		findClosestPoint((*it), closestPoint);
		std::cout << "Closest point from:\t" 
				  << it->x << ", " 
				  << it->y << ", " 
				  << it->z << std::endl
				  << "found at:\t\t" 
				  << closestPoint.x << ", " 
				  << closestPoint.y << ", " 
				  << closestPoint.z << std::endl;
		smoothPoint(*it, closestPoint);
		std::cout << "Fill map:\tDONE" << std::endl;
	}
}
void KarbonCalligraphicShape::smoothLastPoints()
{
    int index = pointCount() / 2;
    smoothPoint(index - 2);
    smoothPoint(index + 1);
}