2010/4/18 Jelle Feringa <[email protected]>

> You're right, but I far as I know the use of a C++ debugger is the only way
> "to get a stacktrace from a segfault" if the segfault comes from OCC.
>
>
> Correct, but I wouldnt go for it after not having exhausted _all_ other
> methods ;')
>
> This method allows you to test lots of possibilities in a very short
>> time...
>> Though I do think the tolerance your setting is not reasonable for
>> most CAD kernels...
>>
>
> Can you go further with this interesting argument?  What is, according to
> you, a "reasonable tolerance for a CAD kernel"?
>
>
> Well, I should say "practical tolerance", usually 0.001
> If you use really really high tolerances ( < 0.001 ) than the algorithms in
> the kernel, all based on calculus just have to work so much harder, with far
> less error margin.
> So the smaller your tolerance, the more sensitive your geometry becomes for
> error, more CPU cycles are used...
> The point is; use practical tolerances, don't set these greater nor lower
> than you explicitly need.
> My experience ( surely domain specific! ) is that you rarely need to go
> lower than 0.01
> In architecture we deal with different tolerances than other industries
> however.
> I can imagine that you need very low tolerances for mechanical parts for
> instance.
>
> Offsetting is a very complex operation, and a tolerance of 0.00001 is very
> very low... almost as low as the tolerances used in OCC  ( 1e-5, 1e-6 ), so
> I'm not surprised that you run into problems...
> ( tolerances are a complex topic however, an angular tolerance of 0.01 is
> completely unacceptable for instance, OCC uses 1e-12 if I recall
> correctly... )
>
> -jelle
>
>
The tolerance you talk about is the 'absolute' computation tolerance (it's
pure mathematics). I think it also has to be connected to the size of the
geometry. For instance, a tolerance of 10-6m is a non sense when dealing
with the assembly of aircraft wings. But this order of magnitude is relevant
to the watch industry. I would then say that the relative tolerance (which
is engineering) is the criterion leading to the computational tolerance that
has to be used. Then this one has to be compared to the 'minimum tolerance'
of the CAD kernel.
_______________________________________________
Pythonocc-users mailing list
[email protected]
https://mail.gna.org/listinfo/pythonocc-users

Reply via email to