mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-06 18:26:22 +03:00
parent
095999010f
commit
0f9f1f4ea0
@ -648,6 +648,8 @@ static Standard_Boolean IsSweepParallelSpine (const Handle(GeomFill_LocationLaw)
|
|||||||
|
|
||||||
// (1.1.b) Cas Cylindrique
|
// (1.1.b) Cas Cylindrique
|
||||||
if ( (SectionType == GeomAbs_Circle) && IsTrsf) {
|
if ( (SectionType == GeomAbs_Circle) && IsTrsf) {
|
||||||
|
const Standard_Real TolProd = 1.e-6;
|
||||||
|
|
||||||
gp_Circ C = AC.Circle();
|
gp_Circ C = AC.Circle();
|
||||||
C.Transform(Tf2);
|
C.Transform(Tf2);
|
||||||
|
|
||||||
@ -655,7 +657,7 @@ static Standard_Boolean IsSweepParallelSpine (const Handle(GeomFill_LocationLaw)
|
|||||||
DS.Normalize();
|
DS.Normalize();
|
||||||
levier = Abs(DS.CrossMagnitude(DP)) * C.Radius();
|
levier = Abs(DS.CrossMagnitude(DP)) * C.Radius();
|
||||||
SError = levier * Abs(Last - First);
|
SError = levier * Abs(Last - First);
|
||||||
if (SError <= Tol) {
|
if (SError <= TolProd) {
|
||||||
Ok = Standard_True;
|
Ok = Standard_True;
|
||||||
gp_Ax3 axe (C.Location(), DP, C.Position().XDirection());
|
gp_Ax3 axe (C.Location(), DP, C.Position().XDirection());
|
||||||
S = new (Geom_CylindricalSurface)
|
S = new (Geom_CylindricalSurface)
|
||||||
|
25
tests/bugs/modalg_5/bug25887
Normal file
25
tests/bugs/modalg_5/bug25887
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
puts "========"
|
||||||
|
puts "OCC25887"
|
||||||
|
puts "========"
|
||||||
|
puts ""
|
||||||
|
#############################
|
||||||
|
# Invalid pipe construction
|
||||||
|
#############################
|
||||||
|
|
||||||
|
restore [locate_data_file OCC25887_shape.brep] a
|
||||||
|
|
||||||
|
smallview
|
||||||
|
|
||||||
|
explode a
|
||||||
|
|
||||||
|
pipe res a_1 a_2 1
|
||||||
|
|
||||||
|
donly res
|
||||||
|
fit
|
||||||
|
|
||||||
|
set bug_info [checkshape res]
|
||||||
|
if {[string compare $bug_info "This shape seems to be valid"] != 0} {
|
||||||
|
puts "ERROR: OCC25887 is reproduced."
|
||||||
|
}
|
||||||
|
|
||||||
|
set only_screen_axo 1
|
Loading…
x
Reference in New Issue
Block a user