Revision: 74305
http://sourceforge.net/p/brlcad/code/74305
Author: starseeker
Date: 2019-11-06 14:43:32 +0000 (Wed, 06 Nov 2019)
Log Message:
-----------
Validation test was too generous - boxes may overlap without containing the
actual point in question.
Modified Paths:
--------------
brlcad/trunk/src/libbrep/RTree.h
brlcad/trunk/src/libbrep/cdt_ovlps.cpp
Modified: brlcad/trunk/src/libbrep/RTree.h
===================================================================
--- brlcad/trunk/src/libbrep/RTree.h 2019-11-06 08:50:44 UTC (rev 74304)
+++ brlcad/trunk/src/libbrep/RTree.h 2019-11-06 14:43:32 UTC (rev 74305)
@@ -449,6 +449,9 @@
ON_3dPoint p2(a_rect->m_max[0], a_rect->m_max[1], a_rect->m_max[2]);
ON_BoundingBox bb(p1, p2);
FILE *p = fopen(fname, "w");
+ struct bu_color c = BU_COLOR_INIT_ZERO;
+ bu_color_rand(&c, BU_COLOR_RANDOM_LIGHTENED);
+ pl_color_buc(p, &c);
RECT_BBOX_PLOT(p, bb);
fclose(p);
}
Modified: brlcad/trunk/src/libbrep/cdt_ovlps.cpp
===================================================================
--- brlcad/trunk/src/libbrep/cdt_ovlps.cpp 2019-11-06 08:50:44 UTC (rev
74304)
+++ brlcad/trunk/src/libbrep/cdt_ovlps.cpp 2019-11-06 14:43:32 UTC (rev
74305)
@@ -331,13 +331,13 @@
if (vp.DistanceTo(problem) < 0.1) {
std::cout << "Looking for trouble...\n";
}
- std::set<overt_t *> search_verts = vert_search(ov->bb);
- if (!search_verts.size()) {
- std::cout << "Error: no nearby verts for vert " << v_ind << "??\n";
+ std::set<overt_t *> search_vert_bb = vert_search(ov->bb);
+ if (!search_vert_bb.size()) {
+ std::cout << "Error: no nearby verts for vert bb " << v_ind <<
"??\n";
return false;
}
- if (search_verts.find(ov) == search_verts.end()) {
- std::cout << "Error: vert in tree, but search couldn't find: " <<
v_ind << "\n";
+ if (search_vert_bb.find(ov) == search_vert_bb.end()) {
+ std::cout << "Error: vert in tree, but bb search couldn't find: "
<< v_ind << "\n";
std::set<overt_t *> s2 = vert_search(ov->bb);
if (s2.find(ov) == s2.end()) {
std::cout << "Second try didn't work: " << v_ind << "\n";
@@ -344,6 +344,14 @@
}
return false;
}
+
+ ON_BoundingBox pbb(vp, vp);
+ std::set<overt_t *> search_vert = vert_search(pbb);
+ if (!search_vert.size()) {
+ std::cout << "Error: vert point not contained by tree box?? " <<
v_ind << "??\n";
+ return false;
+ }
+
++tree_it;
}
return true;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits