Important: Please read the Qt Code of Conduct -

How to replace default point shape in PCLVisualizer to other shape?

  • Hello All,

    I'm drawing the point cloud data using this library,

    Now I can see point cloud data (In terms of points) on the widgets, but I want to replace all points with another shape (like cross and circle).

    I know we can add shapes (line, sphere, arrow, polygon) to widgets, but I don't want to add, I just want to replace all point to a particular shape.

    So if anyone has done this or has an idea please suggest me.

    Thanks in advance!

  • Lifetime Qt Champion


    What are you doing with theses widgets ?

  • I'm displaying radar point cloud data on widgets. Now I can see all the points, but if I connect multiple radar PCD input then the user should have the option to distinguish the data from other PCD data. So for my concern, I want to add some shapes like circles or cross instead of points.

  • Lifetime Qt Champion

    What are you using to render your points ?

  • Somehow I have added shapes as,
    For Cross:

        pcl::PointXYZ point2(points.x()+2, points.y()+2, points.z());
        pclVisualizer.addLine(point1, point2, id);
        pcl::PointXYZ point3(points.x()+2, points.y()-2, points.z());
        pcl::PointXYZ point4(points.x()-2, points.y()+2, points.z());
        pclVisualizer.addLine(point3, point4, id1);

    For Circle:

        pcl::ModelCoefficients circle_coeff;
        circle_coeff.values.resize (3);    // We need 3 values
        circle_coeff.values[0] = points.x();
        circle_coeff.values[1] = points.y();
        circle_coeff.values[2] = 1;
        pclVisualizer.addCircle(circle_coeff, id);

    Now I can see cross and circle, but the circle is not so clear so far, How I can make it clear or increase its width?

Log in to reply