BRep_Tool::Surface()调用注意事项

BRep_Tool::Surface()重载了两个函数,一个是带TopLoc_Location,这个函数返回的Geom_surface是不带位置信息的,而另一个函数则带位置信息

如:

拉伸体出来的上下两个面,如果是带TopLoc_Location参数返回可以两个面是相同的,而不带参数的则返回两个不同的面

 

带参数的:

TopLoc_Location location;
Handle(Geom_Surface) aGeometricSurface = BRep_Tool::Surface(face, location);

Handle(Geom_Plane) surf = Handle(Geom_Plane)::DownCast(aGeometricSurface);
gp_Pln apln1 = surf->Pln();
gp_Dir dirF1 = apln1.Axis().Direction();

 

不带参数的:

Handle(Geom_Plane) surf = Handle(Geom_Plane)::DownCast(BRep_Tool::Surface(face));

gp_Pln apln = surf->Pln();
gp_Dir dirF = apln.Axis().Direction();

posted @ 2024-07-23 18:02  unicornsir  阅读(29)  评论(0编辑  收藏  举报