Timeline
01/07/19:
- 22:50 Ticket #43 (ModelGeometry: sizes and orientations depend on sampling density and ...) closed by
-
fixed: After improving the serialization of Orient (so that it uses full precision) and using custom floating-point printing procedure (Dragon4), the results became identical for gcc (linux) and VS2017 (windows).
C++Builder 10.3 (windows) which uses the clang compiler yields usually very similar results (with minor differences ~10e-13) and in rare cases, very different results. For example, for
Foraminifera (twisted biserial)
with genotype id=458, differences in area, volume, sizesaxes are in the range of 0.1. Another example isWorm
with genotype id=465, where only the area differs significantly from gcc/VS2017 (the difference is ~0.1). Anyway I am closing this issue since we are aware that different compilers may use different implementations of floating point operations. The main issue was that "sizes and orientations depend on sampling density and model orientation", and this is caused by the very nature of the method responsible for geometry calculations (and using floating point values), unfortunately.
01/06/19:
- 02:44 Changeset [846] by
- - Added support for ternary conditional operator a?b:c - Fixed incorrect stack allocation in some cases of && ||, and for(x in null) - && and || operators always return one of the input expressions (previously the result was in some cases simplified to 0 or 1)
- 02:41 Changeset [845] by
- Made strings at least slightly comparable with zero so 'Math.pi && "xyz" && [9,9,7]' can work as expected in FramScript?
Note: See TracTimeline
for information about the timeline view.