1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-03 17:56:21 +03:00

OCC22294 Problem with reading of attached file with OCCT642

This commit is contained in:
EMV 2011-04-28 15:18:41 +00:00 committed by bugmaster
parent 5b181c6297
commit b4e5ed666a

View File

@ -98,6 +98,7 @@
#include <IGESToBRep.hxx>
#include <IGESToBRep_AlgoContainer.hxx>
#include <IGESToBRep_ToolContainer.hxx>
#include <BRepBuilderAPI_Transform.hxx>
//=======================================================================
//function : IGESToBRep_TopoCurve
@ -911,10 +912,8 @@ TopoDS_Shape IGESToBRep_TopoCurve::TransferTopoBasicCurve
}
IGESToBRep_BasicCurve BC(*this);
// 14.05.2009 skl for OCC21131
BC.SetModeTransfer(Standard_False);
Handle(Geom_Curve) C = BC.TransferBasicCurve(start);
if (C.IsNull()) {
@ -1007,15 +1006,21 @@ TopoDS_Shape IGESToBRep_TopoCurve::TransferTopoBasicCurve
// BRep_Builder B;
// B.UpdateVertex (V1, epsgeom);
// B.UpdateVertex (V2, epsgeom);
/* 14.05.2009 skl for OCC21131
if (start->HasTransf()) {
// 14.05.2009 skl for OCC21131
// 15.03.2011 emv for OCC22294 begin
Standard_Boolean bIsNeedTransf = start->IsKind(STANDARD_TYPE(IGESGeom_SplineCurve));
if (start->HasTransf() && bIsNeedTransf) {
gp_Trsf T;
SetEpsilon(1.E-04);
if (IGESData_ToolLocation::ConvertLocation
(GetEpsilon(),start->CompoundLocation(),T, GetUnitFactor())) {
TopLoc_Location L(T);
myshape.Move(L);
(GetEpsilon(),start->CompoundLocation(),T, GetUnitFactor())) {
//TopLoc_Location L(T);
BRepBuilderAPI_Transform trf(T);
trf.Perform(myshape);
if (trf.IsDone()){
myshape = trf.Shape();
}
//myshape.Move(L);
}
else {
Message_Msg Msg1035("IGES_1035");
@ -1023,7 +1028,7 @@ TopoDS_Shape IGESToBRep_TopoCurve::TransferTopoBasicCurve
}
//AddWarning(start, "Transformation skipped (not a similarity)");
}
*/
//15.03.2011 emv for OCC22294 end
// debug mjm du 26/07/96 en attendant developpement meilleur
// sur traitement des Wire et non des Edge dans les programmes appelant