Author: janehu Date: 2008-12-04 11:32:31 -0600 (Thu, 04 Dec 2008) New Revision: 2467 Modified: cgm/trunk/geom/OCC/OCCQueryEngine.cpp Log: Fixed the problem of transformation for surface's points when drawing. Modified: cgm/trunk/geom/OCC/OCCQueryEngine.cpp =================================================================== --- cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2008-12-04 16:44:16 UTC (rev 2466) +++ cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2008-12-04 17:32:31 UTC (rev 2467) @@ -273,6 +273,8 @@ TopLoc_Location L; Handle_Poly_Triangulation facets = BRep_Tool::Triangulation(*Topo_Face, L); + gp_Trsf tf = L.Transformation(); + if(facets.IsNull() || facets->NbTriangles() == 0) { //do triangulation @@ -336,6 +338,9 @@ for (int i = 0; i < number_points ; i ++) { gp_Pnt gp_pnt = points.Value(i); + if( !L.IsIdentity()) + gp_pnt.Transform(tf); + GPoint gPnt; gPnt.x = gp_pnt.X(); gPnt.y = gp_pnt.Y();
participants (1)
-
janehu@mcs.anl.gov