[MOAB-dev] ReadCGM question
Tim Tautges
tautges at mcs.anl.gov
Wed Nov 3 15:50:13 CDT 2010
On 11/03/2010 03:43 PM, Steve Jackson wrote:
> In MOAB's ReadCGM.cpp, around line 490, there is the following check:
>
>
> // edge is a CGM RefEdge
> // start_vtx and end_vtx are RefVertices representing the start_vertex() and end_vertex() of edge
> // points is a list of CubitVectors produced by calling get_graphics() on edge
>
> // check proximity of vertices to end coordinates
> if ((start_vtx->coordinates() - points.front()).length()> GEOMETRY_RESABS
> || ( end_vtx->coordinates() - points.back() ).length()> GEOMETRY_RESABS ) {
> std::cerr<< "Warning: vertices not at ends of curve "<< edge->id()<< std::endl;
> }
>
> This warning often produces large quantities of annoying messages. (I have one geometry where it produces tens of thousands of lines of output when the file is loaded into MOAB.) I want to fix this, but first wanted to check with others on the most correct fix.
>
> * If this check is correct (i.e. users should be legitimately concerned by it), I propose to make the warning message print only up to ten times, with a summary of the number of suppressed warnings if more than that occur.
>
I'm fine with this, and might also suggest protecting this check with an #ifndef NDEBUG.
> * I think it would it be more correct to replace GEOMETRY_RESABS with faceting_tol, i.e. the tolerance value that was used in calling edge->get_graphics(). Does anyone disagree?
>
The points in a faceting should be within GEOMETRY_RESABS, the faceting tol is maximal dist between the edge/facet and
the geometric curve/surface.
- tim
> ~S
>
>
--
================================================================
"You will keep in perfect peace him whose mind is
steadfast, because he trusts in you." Isaiah 26:3
Tim Tautges Argonne National Laboratory
(tautges at mcs.anl.gov) (telecommuting from UW-Madison)
phone: (608) 263-8485 1500 Engineering Dr.
fax: (608) 263-4499 Madison, WI 53706
More information about the moab-dev
mailing list