Forums » Forum général »
Récupération d'un point du pointcloud
Added by Théveny Frédéric over 10 years ago
Je suis en train de convertir mon plugin et j’ai un soucis avec la portée d’une fonction qui est passée protected depuis la dernière MAJ.
Je cherche a parcourir un ensemble de points selectionnés, voici l’ancien code :
CT_SPCIR selected = actionPick->graphicsView()->getSelectedPoints(); CT_AbstractCloudIndex* indexCloud = selected->abstractCloudIndex(); (...) size_t size = indexCloud->size(); for (size_t i = 0 ; i < size ; i++) { size_t index = indexCloud->indexAt(i); const CT_Point &point = PS_REPOSITORY->globalPointCloud()->constTAt(index); (...)
l’ennui c’est que globalPointCloud() est maintenant protected, comment adapter mon code ?
Y a t’il un autre moyen pour récupérer les coordonnées du point à partir de son index ?
merci !
Replies (2)
RE: Récupération d'un point du pointcloud - Added by Krebs Michaël over 10 years ago
Bonjour Fred,
oui il y a bien une nouvelle méthode. Je t’invite à lire le wiki Fr_points. Mais je te met le code ci-dessous :
CT_SPCIR selected = actionPick->graphicsView()->getSelectedPoints(); // création de l'itérateur CT_PointIterator it(selected); // parcours tant qu'il y a des points while(it.hasNext()) { it.next(); // récupération du point const CT_Point &p = it.currentPoint(); // on peut si l'on veut récupérer son index dans le nuage global size_t globalIndex = it.currentGlobalIndex(); // traitement ....... }
RE: Récupération d'un point du pointcloud - Added by Théveny Frédéric over 10 years ago
super
je vais tester ça de suite.
merci !