[cgma-dev] r5088 - cgm/trunk/geom/OCC

Hong-Jun Kim hongjun at mcs.anl.gov
Fri Aug 19 11:31:08 CDT 2011


Hi, Jane

It works for all test files.
Thank you for your work.

Hong-Jun

----- Original Message -----
From: "Jiangtao Hu" <jiangtao_ma at yahoo.com>
To: "Hong-Jun Kim" <hongjun at mcs.anl.gov>
Cc: cgma-dev at mcs.anl.gov
Sent: Thursday, August 18, 2011 10:13:37 AM
Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC

Hi, Hong-Jun 

Please see r5105 for fix of your model. Thanks. 

Jane 

--- On Tue, 8/16/11, Hong-Jun Kim <hongjun at mcs.anl.gov> wrote: 



From: Hong-Jun Kim <hongjun at mcs.anl.gov> 
Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
To: "Jiangtao Hu" <jiangtao_ma at yahoo.com> 
Cc: cgma-dev at mcs.anl.gov 
Date: Tuesday, August 16, 2011, 5:27 PM 


Hi, Jane 

I thought merged entities had wrong edge directions, but it is because the original geometry had wrong edge directions set in loading, then merge comparison failed to find overlapped pairs merged. 

So, I attached the original step geometry with modified "test_edge_orient" test code which checks edge directions respect to 2 parent faces for all imported volumes. 

Please check the "test_edge_orient" test in OCC with the attached step file which is passed in ACIS kernel. 
Thanks. 

Hong-Jun 


----- Original Message ----- 
> From: "Hong-Jun Kim" < hongjun at mcs.anl.gov > 
> To: "Jiangtao Hu" < jiangtao_ma at yahoo.com > 
> Cc: cgma-dev at mcs.anl.gov 
> Sent: Monday, August 15, 2011 4:06:57 PM 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> Thank you for your fix. 
> 
> It works for most test geometries except the one with merged entities. 
> It looks there are wrong merged edge directions respect to parent 
> surfaces. 
> 
> I am trying to make a test code for this, but before that, can you 
> think any suspected code for this problem? 
> Thanks. 
> 
> ----------------------------- 
> Hong-Jun Kim 
> Post-doc researcher 
> MCS, Argonne National Laboratory 
> 9700 S. Cass Ave. B240/R2147 
> Argonne, IL 60439 
> 630-252-4791 
> hongjun at mcs.anl.gov 
> ----------------------------- 
> 
> ----- Original Message ----- 
> From: "Jiangtao Hu" < jiangtao_ma at yahoo.com > 
> To: "Jane Hu" < janejhu at gmail.com >, "Hong-Jun Kim" 
> < hongjun at mcs.anl.gov > 
> Cc: cgma-dev at mcs.anl.gov 
> Sent: Monday, August 15, 2011 12:32:21 PM 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> 
> Hi, Hong-Jun, 
> 
> Please see r5102 for fix of your model. Thanks for fixing the nightly 
> build issues. 
> 
> Jane 
> 
> --- On Fri, 8/12/11, Hong-Jun Kim < hongjun at mcs.anl.gov > wrote: 
> 
> 
> 
> From: Hong-Jun Kim < hongjun at mcs.anl.gov > 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> To: "Jane Hu" < janejhu at gmail.com > 
> Cc: cgma-dev at mcs.anl.gov , "Jiangtao Hu" < jiangtao_ma at yahoo.com > 
> Date: Friday, August 12, 2011, 5:53 PM 
> 
> 
> Hi, Jane 
> 
> Could you please check the attached step file for "test_edge_orient" 
> again? 
> 4 similar shaped faces have problems in the test with OCC kernel. 
> Thanks. 
> 
> ----------------------------- 
> Hong-Jun Kim 
> Post-doc researcher 
> MCS, Argonne National Laboratory 
> 9700 S. Cass Ave. B240/R2147 
> Argonne, IL 60439 
> 630-252-4791 
> hongjun at mcs.anl.gov 
> ----------------------------- 
> 
> ----- Original Message ----- 
> From: "Jane Hu" < janejhu at gmail.com > 
> To: "Jiangtao Hu" < jiangtao_ma at yahoo.com > 
> Cc: "Hong-Jun Kim" < hongjun at mcs.anl.gov >, cgma-dev at mcs.anl.gov 
> Sent: Friday, August 12, 2011 12:31:22 PM 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> 
> Hi, Hong-Jun 
> 
> Please use r5098 to fix the problem seen in your model. Thanks. 
> 
> Jane 
> 
> 
> On Thu, Aug 11, 2011 at 10:58 PM, Jiangtao Hu < jiangtao_ma at yahoo.com 
> > wrote: 
> 
> 
> 
> 
> Sure, I'll look into this case tomorrow. Thanks for the model and your 
> time finding it. 
> 
> Jane 
> 
> --- On Thu, 8/11/11, Hong-Jun Kim < hongjun at mcs.anl.gov > wrote: 
> 
> 
> 
> 
> From: Hong-Jun Kim < hongjun at mcs.anl.gov > 
> 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> To: jiangtao_ma at yahoo.com 
> Cc: cgma-dev at mcs.anl.gov 
> Date: Thursday, August 11, 2011, 5:12 PM 
> 
> 
> 
> 
> 
> Hi, jane 
> 
> I attached a step geometry file (with a picture) having problem in OCC 
> kernel. 
> It passes the "test_edge_orient" in ACIS kernel but doesn't in OCC. 
> Could you please check this file? 
> Thanks. 
> 
> Hong-Jun 
> 
> ----- Original Message ----- 
> From: "Hong-Jun Kim" < hongjun at mcs.anl.gov > 
> To: cgma-dev at mcs.anl.gov 
> Sent: Thursday, August 11, 2011 3:06:25 PM 
> Subject: Re: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> 
> Thank you for this change. 
> 
> I am testing it with complex geometries and it looks there are some 
> improvement but it is not working for some cases. 
> I am still finding where the problem is coming from and let me inform 
> you the result. 
> Thanks. 
> 
> Hong-Jun 
> 
> ----- Original Message ----- 
> > From: "jiangtao ma" < jiangtao_ma at yahoo.com > 
> > To: cgma-dev at mcs.anl.gov 
> > Sent: Thursday, August 11, 2011 9:21:55 AM 
> > Subject: [cgma-dev] r5088 - cgm/trunk/geom/OCC 
> > Author: janehu 
> > Date: 2011-08-11 09:21:55 -0500 (Thu, 11 Aug 2011) 
> > New Revision: 5088 
> > 
> > Modified: 
> > cgm/trunk/geom/OCC/OCCCurve.cpp 
> > cgm/trunk/geom/OCC/OCCModifyEngine.cpp 
> > cgm/trunk/geom/OCC/OCCQueryEngine.cpp 
> > cgm/trunk/geom/OCC/OCCSurface.cpp 
> > Log: 
> > Added changes to make coedge and loop direction correct. For 
> > surfaces, 
> > opposite to acis where face is always forward direction respect to 
> > its 
> > volume, OCC surfaces and shell might be reversed direction with 
> > respect to its solid. This may cause volume mesh fail, I am looking 
> > into it now, and might need to change some logic in the geom level 
> > of 
> > cgm. 
> > 
> > Modified: cgm/trunk/geom/OCC/OCCCurve.cpp 
> > =================================================================== 
> > --- cgm/trunk/geom/OCC/OCCCurve.cpp 2011-08-09 22:27:32 UTC (rev 
> > 5087) 
> > +++ cgm/trunk/geom/OCC/OCCCurve.cpp 2011-08-11 14:21:55 UTC (rev 
> > 5088) 
> > @@ -123,10 +123,10 @@ 
> > 
> > void OCCCurve::set_TopoDS_Edge(TopoDS_Edge edge) 
> > { 
> > - if(edge.IsEqual(*myTopoDSEdge)) 
> > + if(edge.IsSame(*myTopoDSEdge)) 
> > return; 
> > 
> > - if(!edge.IsSame(*myTopoDSEdge)) 
> > + else 
> > { 
> > DLIList<OCCPoint*> points ; 
> > this->get_points(points); 
> > @@ -737,8 +737,7 @@ 
> > double OCCCurve::start_param() 
> > { 
> > double start = 0.0, end = 0.0; 
> > - 
> > - get_param_range( start, end ); 
> > + get_param_range( start, end ); 
> > return start; 
> > } 
> > 
> > @@ -781,29 +780,22 @@ 
> > { 
> > TopTools_IndexedMapOfShape M; 
> > TopExp::MapShapes(*myTopoDSEdge, TopAbs_VERTEX, M); 
> > - TopologyBridge *point1, *point2; 
> > - if (M.Extent()==1) { 
> > - point1 = OCCQueryEngine::instance()->occ_to_cgm(M(1)); 
> > - if (point1) 
> > - children.append_unique(point1); 
> > - } else if (M.Extent()==2) { 
> > - if ( fabs(BRep_Tool::Parameter(TopoDS::Vertex(M(1)), 
> > *myTopoDSEdge)-start_param()) > 
> > - fabs(BRep_Tool::Parameter(TopoDS::Vertex(M(2)), 
> > *myTopoDSEdge)-start_param()) ) { 
> > - point1 = OCCQueryEngine::instance()->occ_to_cgm(M(2)); 
> > - point2 = OCCQueryEngine::instance()->occ_to_cgm(M(1)); 
> > - } else { 
> > - point1 = OCCQueryEngine::instance()->occ_to_cgm(M(1)); 
> > - point2 = OCCQueryEngine::instance()->occ_to_cgm(M(2)); 
> > - } 
> > - if (point1 && point1 == point2) { 
> > - children.append_unique(point1); 
> > - } else { 
> > - if (point1) 
> > - children.append_unique(point1); 
> > - if (point2) 


More information about the cgma-dev mailing list