diff --git a/doc/salome/gui/GEOM/images/tolerances.png b/doc/salome/gui/GEOM/images/tolerances.png new file mode 100644 index 000000000..69b136767 Binary files /dev/null and b/doc/salome/gui/GEOM/images/tolerances.png differ diff --git a/doc/salome/gui/GEOM/input/faq.doc b/doc/salome/gui/GEOM/input/faq.doc index 78fa0d58c..3976f44ea 100644 --- a/doc/salome/gui/GEOM/input/faq.doc +++ b/doc/salome/gui/GEOM/input/faq.doc @@ -6,6 +6,7 @@ Here you can find the answers to some frequently asked questions: diff --git a/doc/salome/gui/GEOM/input/size_models_range.doc b/doc/salome/gui/GEOM/input/size_models_range.doc new file mode 100644 index 000000000..5f77a22e3 --- /dev/null +++ b/doc/salome/gui/GEOM/input/size_models_range.doc @@ -0,0 +1,87 @@ +/*! + +\page size_models_range Sizes of Models in Salome + +\tableofcontents + +This document determines the range of numbers (tolerances, locations +and sizes) that are to be taken into account for any 3D model design +in Salome. Although it is not obligatory to create models within this range, +algorithms can fail or return unexpected result in this case. + +This document refers mainly to Open CASCADE Technology (OCCT). However it +concerns Salome as well as OCCT is a modeling core of Salome %GEOM module. + +Any model in 3D-space has its location and sizes. The last two things in Salome +and OCCT are represented by the double precision floating point numbers. + +The goal of the document is to define the range of numbers that can be used in +modeling algorithms provided by Salome and Open CASCADE Technology. + +\section sec1 Maximal Size of the Model + +The Maximal Size of the model is a number defined as the maximal diameter of +enclosed sphere built for the model. In OCCT any model has a location defined +relative the absolute origin. Thus the maximal diameter above should be built +taking into account the model itself and its location. + +In Open CASCADE there are two tolerances: Tolerance Confusion (TolC) +and Tolerance Angular (TolA) (see OCCT Precision package for more details). +These values are used for geometric comparisons. They are not used inside +low-level algorithms (intersection for e.g.), where more precise values are +used instead. The value TolC guarantees that the error associated with +the computations for given geometric entity is not greater than TolC. + +- TolC - precision value when checking coincidence of two points + [by default 1.e-7]; +- TolA - precision value when checking the equality of two angles + [by default 1.e-12]. + +For more information on tolerance definition please see +Chapter 4 of this document. To see limitations +that are due to modeling errors or inaccuracies of tolerance usage please +refer to Chapter 9.2.2 of the same document. + +To provide robust geometric modeling the computations should be consistent, +i.e. the one tolerance value should be used for all computations. To provide +consistent computations the values TolC and TolA should be consistent: + +
Smax = TolC / TolA             (1)
+ +\image html tolerances.png "TolC, TolA and Maximal Size Consistency" + +In accordance with (1) the Maximal Size for the Model is [by default]: + +
Smax = 1.e-7 / 1.e-12 = 1.e+5  (2)
+ +\section sec2 Minimal Size of the Model + +The Minimal Size of the Model is defined as maximal diameter of enclosed +sphere built for the smallest BRep entity of the Model. + +All models in Open CASCADE Technology are represented using double precision +floating point numbers. This representation contains approximately 14-16 +significant digits. + +From the experience of using it is considered that the least four significant +digits contain rounding-off errors occurring during the computation. So +(taking in account the worst cases), there are ten reliable significant digits +for double precision floating point numbers. Having the estimation it is +possible to compute the value of the Minimal size of the model: + +
Smin=Smax / 1.e+10             (3)
+ +In accordance with (2) for the default value it will be [by default]: + +
Smin=1.e-5.                    (4)
+ +\section sec3 Full Range of Sizes + +The values Smax (2), Smin (4) are theoretical. Taking into +account the practical purposes of improving the reliability the lower limit +should be restricted by one order. Thus, the full Range of Sizes of the Models +is: + +
[Smin, Smax] = [1.e-4, 1.e+5]  (5)
+ +*/