mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-10 18:51:21 +03:00
0024809: Exception is raised during perform of "bfillds" command on attached shape
On attached shape command "bfillds -s" hangs in Test Harness on the long time. In debug mode exception is raised. Vectors are normalized before calculation of an angle. Added test case bugs/modalg_5/bug24809
This commit is contained in:
parent
622d7f53f5
commit
87696ff746
@ -2172,10 +2172,23 @@ void CalculPtsInterTriEdgeCoplanaires2(const Standard_Integer TriSurfID,
|
||||
IntPolyh_StartPoint &SP2,
|
||||
Standard_Integer &NbPoints)
|
||||
{
|
||||
IntPolyh_Point TestParalleles;
|
||||
TestParalleles.Cross(Edge,Cote);
|
||||
|
||||
if(sqrt(TestParalleles.SquareModulus())>MyConfusionPrecision) {
|
||||
Standard_Real aDE, aDC;
|
||||
//
|
||||
gp_Vec aVE(Edge.X(), Edge.Y(), Edge.Z());
|
||||
gp_Vec aVC(Cote.X(), Cote.Y(), Cote.Z());
|
||||
//
|
||||
aDE = aVE.SquareMagnitude();
|
||||
aDC = aVC.SquareMagnitude();
|
||||
//
|
||||
if (aDE > SquareMyConfusionPrecision) {
|
||||
aVE.Divide(aDE);
|
||||
}
|
||||
//
|
||||
if (aDC > SquareMyConfusionPrecision) {
|
||||
aVC.Divide(aDC);
|
||||
}
|
||||
//
|
||||
if (!aVE.IsParallel(aVC, MyConfusionPrecision)) {
|
||||
///Edge and side are not parallel
|
||||
IntPolyh_Point Per;
|
||||
Per.Cross(NormaleTri,Cote);
|
||||
|
18
tests/bugs/modalg_5/bug24809
Normal file
18
tests/bugs/modalg_5/bug24809
Normal file
@ -0,0 +1,18 @@
|
||||
puts "========="
|
||||
puts "OCC24809"
|
||||
puts "========="
|
||||
puts ""
|
||||
##############################################################################
|
||||
# Exception is raised during perform of "bfillds" command on attached shape
|
||||
##############################################################################
|
||||
|
||||
restore [locate_data_file bug24809_test3.brep] b
|
||||
|
||||
bclearobjects
|
||||
bcleartools
|
||||
set shapes [explode b f]
|
||||
set nbs [llength $shapes]
|
||||
for {set i 1} {$i <= $nbs} {incr i} {
|
||||
baddobjects b_$i
|
||||
}
|
||||
bfillds -s
|
Loading…
x
Reference in New Issue
Block a user