1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

Compare commits

...

2 Commits

Author SHA1 Message Date
atereshi
41ab234207 0027122: Data Exchange - invalid shapes are produced during model translation due to huge face tolerance
Problem: The shape has two faces that dimensions are less than tolerance in the specified STEP file. This situation produces the invalid shape.
Change: Shape process has operator FixFaceSize, that is exactly suitable for this shape. The only option of FixFaceSize operator was added to InterfaceStatic, to manage the operator from DRAW command.
Result: The shape without artifacts can be reproduced from STEP file with an extra healing procedure.
2022-11-07 13:02:07 +03:00
smoskvin
d404757de0 Increment OCCT version up to 7.8.0dev 2022-11-02 22:23:14 +03:00
3 changed files with 33 additions and 5 deletions

View File

@@ -239,6 +239,7 @@ STEPControl_Controller::STEPControl_Controller ()
Interface_Static::Init ("XSTEP", "FromSTEP.FixShape.FixNonAdjacentIntersectingEdgesMode", 't', "-1");
Interface_Static::Init ("XSTEP", "FromSTEP.FixShape.FixVertexPositionMode", 't', "0");
Interface_Static::Init ("XSTEP", "FromSTEP.FixShape.FixVertexToleranceMode", 't', "-1");
Interface_Static::Init ("XSTEP", "FromSTEP.FixFaceSize.Tolerance", 't', "1.e-7");
// ika 28.07.16: Parameter to read all top level solids and shells,
// should be used only in case of invalid shape_representation without links to shapes.

View File

@@ -34,7 +34,7 @@
// Primary definitions
#define OCC_VERSION_MAJOR 7
#define OCC_VERSION_MINOR 7
#define OCC_VERSION_MINOR 8
#define OCC_VERSION_MAINTENANCE 0
//! This macro must be commented in official release, and set to non-empty
@@ -42,12 +42,12 @@
//! - "dev" for development version between releases
//! - "beta..." or "rc..." for beta releases or release candidates
//! - "project..." for version containing project-specific fixes
//#define OCC_VERSION_DEVELOPMENT "dev"
#define OCC_VERSION_DEVELOPMENT "dev"
// Derived (manually): version as real and string (major.minor)
#define OCC_VERSION 7.7
#define OCC_VERSION_STRING "7.7"
#define OCC_VERSION_COMPLETE "7.7.0"
#define OCC_VERSION 7.8
#define OCC_VERSION_STRING "7.8"
#define OCC_VERSION_COMPLETE "7.8.0"
//! Derived: extended version as string ("major.minor.maintenance.dev")
#ifdef OCC_VERSION_DEVELOPMENT

27
tests/bugs/step/bug27122 Normal file
View File

@@ -0,0 +1,27 @@
puts "================"
puts "OCC27122"
puts "================"
puts ""
#####################################################################
# STEP import regression: invalid shapes are produced during model translation due to huge face tolerance
#####################################################################
pload XDE
# Empty resource file name to take params from InterfaceStatic
param "read.step.resource.name" "\"\""
# Add FixFaceSize operator
param "FromSTEP.exec.op" FixShape,FixFaceSize
# Set a tolerance exceeding the size of the problem face to FixFaceSize operator
param "FromSTEP.FixFaceSize.Tolerance" 0.0508
stepread [locate_data_file bug27122_280696.stp] a *
# restore old params
param "read.step.resource.name" STEP
param "FromSTEP.exec.op" FixShape
param "FromSTEP.FixFaceSize.Tolerance" 1.e-7
checknbshapes a_1 -t -face 10
checkview -display a_1 -3d -path ${imagedir}/${test_image}.png