mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-05-16 10:54:53 +03:00
0030905: Modeling Algorithms - Faulty shapes in UnifySameDomain
Make face FORWARD before adding wire in it.
This commit is contained in:
parent
e837b3a26c
commit
c5cee3222f
@ -2691,10 +2691,11 @@ void ShapeUpgrade_UnifySameDomain::IntUnifyFaces(const TopoDS_Shape& theInpShape
|
|||||||
}
|
}
|
||||||
else if (NewFaces.Length() == 1)
|
else if (NewFaces.Length() == 1)
|
||||||
{
|
{
|
||||||
|
TopoDS_Shape aNewFace = NewFaces(1).Oriented (TopAbs_FORWARD);
|
||||||
for (Standard_Integer ii = 1; ii <= NewWires.Length(); ii++)
|
for (Standard_Integer ii = 1; ii <= NewWires.Length(); ii++)
|
||||||
BB.Add(NewFaces(1), NewWires(ii));
|
BB.Add(aNewFace, NewWires(ii));
|
||||||
for (Standard_Integer ii = 1; ii <= InternalWires.Length(); ii++)
|
for (Standard_Integer ii = 1; ii <= InternalWires.Length(); ii++)
|
||||||
BB.Add(NewFaces(1), InternalWires(ii));
|
BB.Add(aNewFace, InternalWires(ii));
|
||||||
myContext->Merge(faces, NewFaces(1));
|
myContext->Merge(faces, NewFaces(1));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
16
tests/bugs/modalg_7/bug30905
Normal file
16
tests/bugs/modalg_7/bug30905
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
puts "======================================================="
|
||||||
|
puts "0030905: Modeling Algorithms - Invalid shapes in UnifySameDomain"
|
||||||
|
puts "======================================================="
|
||||||
|
puts ""
|
||||||
|
|
||||||
|
restore [locate_data_file bug30905.brep] a
|
||||||
|
|
||||||
|
unifysamedom result a
|
||||||
|
|
||||||
|
checkshape result
|
||||||
|
|
||||||
|
checknbshapes result -solid 1 -shell 1 -face 56 -wire 61 -edge 148 -vertex 93 -t
|
||||||
|
|
||||||
|
checkprops result -s 835.815 -v 339.409
|
||||||
|
|
||||||
|
checkview -display result -2d -path ${imagedir}/${test_image}.png
|
Loading…
x
Reference in New Issue
Block a user