mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0030100: Modeling Algorithms - ShapeUpgrade_UnifySameDomain is unable to unify faces based on the same toroidal surface
When performing intersection of toroidal faces check first if they are based on the same surface. Test cases for the issue.
This commit is contained in:
@@ -1072,7 +1072,9 @@ void IntPatch_Intersection::Perform(const Handle(Adaptor3d_HSurface)& theS1,
|
||||
bToCheck = aTor1.MajorRadius() > aTor1.MinorRadius();
|
||||
if (typs1 == typs2) {
|
||||
const gp_Torus aTor2 = aGeomSurf->Torus();
|
||||
bToCheck = aTor2.MajorRadius() > aTor2.MinorRadius();
|
||||
bToCheck = (bToCheck && (aTor2.MajorRadius() > aTor2.MinorRadius())) ||
|
||||
(Abs(aTor1.MajorRadius() - aTor2.MajorRadius()) < TolTang &&
|
||||
Abs(aTor1.MinorRadius() - aTor2.MinorRadius()) < TolTang);
|
||||
}
|
||||
//
|
||||
if (aCTType == GeomAbs_Torus) {
|
||||
|
Reference in New Issue
Block a user