mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-14 13:30:48 +03:00
0032228: Data Exchange - Shape becomes invalid after STEP export then import
Location of edge is applied to geom curve before analysis of vertices projections
This commit is contained in:
@@ -187,7 +187,8 @@ void TopoDSToStep_MakeStepEdge::Init(const TopoDS_Edge& aEdge,
|
||||
Handle(Geom_Curve) C = CA.Curve().Curve();
|
||||
if (!C.IsNull()) {
|
||||
C = Handle(Geom_Curve)::DownCast(C->Copy());
|
||||
|
||||
gp_Trsf Tr1 = CA.Trsf();
|
||||
C->Transform(Tr1);
|
||||
if (C->IsPeriodic())
|
||||
{
|
||||
Standard_Real dpar = CA.LastParameter() - CA.FirstParameter();
|
||||
@@ -236,8 +237,6 @@ void TopoDSToStep_MakeStepEdge::Init(const TopoDS_Edge& aEdge,
|
||||
}
|
||||
}
|
||||
}
|
||||
gp_Trsf Tr1 = CA.Trsf();
|
||||
C->Transform(Tr1);
|
||||
GeomToStep_MakeCurve MkCurve(C);
|
||||
Gpms = MkCurve.Value();
|
||||
}
|
||||
|
17
tests/bugs/step/bug32228
Normal file
17
tests/bugs/step/bug32228
Normal file
@@ -0,0 +1,17 @@
|
||||
puts "# ====================================================================="
|
||||
puts "# 0032228: Data Exchange - Shape becomes invalid after STEP export then import"
|
||||
puts "# ====================================================================="
|
||||
puts ""
|
||||
|
||||
# Reading file
|
||||
brestore [locate_data_file bug32228.brep] s
|
||||
set aTmpFile "$imagedir/${casename}.brep"
|
||||
testwritestep "$aTmpFile" s
|
||||
testreadstep "$aTmpFile" s1
|
||||
file delete "$aTmpFile"
|
||||
|
||||
# Checking
|
||||
checknbshapes s1 -vertex 47 -edge 72 -wire 35 -face 28
|
||||
checkshape s1 f
|
||||
checkmaxtol s1 -ref 1.e-7
|
||||
checkprops s1 -v 586991 -deps 0.01
|
Reference in New Issue
Block a user