is this library deterministic/portable if I were to only perform operations using Path64s? (as opposed to PathD) #765
-
Expanding on the meaning of determinism or portability: will all operations yield the same results in different platforms? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment
-
If by this you're meaning that irrespective of language (Delphi, C# or C++) then no, it's not. If you're only concerned with a specific language eg. C++, then results may be reproducable using different compilers on different platforms. I think all the sort algorithms are stable, so that should support reproducability. However, the library doesn't entirely avoid the double type internally, so there are still integer to double type conversions (see GetIntersectPoint function in clipper.core.cpp) and I guess that may introduce variable results with different compilers. |
Beta Was this translation helpful? Give feedback.
If by this you're meaning that irrespective of language (Delphi, C# or C++) then no, it's not.
If you're only concerned with a specific language eg. C++, then results may be reproducable using different compilers on different platforms. I think all the sort algorithms are stable, so that should support reproducability. However, the library doesn't entirely avoid the double type internally, so there are still integer to double type conversions (see GetIntersectPoint function in clipper.core.cpp) and I guess that may introduce variable results with different compilers.