From ae9ae096d040db676af183d5c8b6783b5ab69fee Mon Sep 17 00:00:00 2001 From: Paolo Cignoni cignoni Date: Tue, 20 Sep 2011 15:44:17 +0000 Subject: [PATCH] removed small bug that prevented the alignment of already perfectly aligned meshes... --- src/meshlabplugins/edit_align/align/AlignPair.cpp | 11 ++++++----- src/meshlabplugins/edit_align/align/OccupancyGrid.h | 2 +- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/meshlabplugins/edit_align/align/AlignPair.cpp b/src/meshlabplugins/edit_align/align/AlignPair.cpp index c5a369f4e..247530d70 100644 --- a/src/meshlabplugins/edit_align/align/AlignPair.cpp +++ b/src/meshlabplugins/edit_align/align/AlignPair.cpp @@ -151,10 +151,11 @@ void AlignPair::Stat::HTMLDump(FILE *fp) /* - -Chiamata dopo ogni iterazione dell ICP per scartare le coppie di punti -secondo i due valori di filtraggio in percentile PassHi e PassLo -E' l'unica funzione ad usare PointNum e MinPointNum; +This function is used to choose remove outliers after each ICP iteration. +All the points with a distance over the given Percentile are discarded. +It uses two parameters +MaxPointNum an (unused) hard limit on the number of points that are choosen +MinPointNum the minimum number of points that have to be chosen to be usable */ bool AlignPair::ChoosePoints( vector &Ps, // vertici corrispondenti su src (rossi) @@ -175,7 +176,7 @@ bool AlignPair::ChoosePoints( vector &Ps, // vertici corrispondenti s { int index = fnd+myrnd.generate(lastgood-fnd); double dd=Distance(Ps[index],Pt[index]); - if(dd