2021-03-25, 18:42

I'm a newbie, so I am nervous about asking... can someone confirm that either A) I'm talking BS, or B) there are rounding errors in the Official LDraw Primitive .dat files?

These are mostly derived from PrimGen2 (- but I haven't checked all). Some of these files are perhaps 10 years old. Has anybody noticed this before?

AKAIK the standard is for the vectors in .dat files to be shown to 4 decimal places, removing trailing zeros.

For Rings, Cones the vector points for higher values of radii are a multiple of the cos/sin values of the segment angles times the radius. However, it would appear that the rounding is carried out on the cos/sin for the base radius (1, as used for Circle, Disc, etc), and <then> multiplied. That would be a No-No. For the base and lower radii, the error may be only 0.0001 in a few cases. But for the higher radii, these rounding errors mount up and impact the third decimal position.

So, BS or BUG?

tery

These are mostly derived from PrimGen2 (- but I haven't checked all). Some of these files are perhaps 10 years old. Has anybody noticed this before?

AKAIK the standard is for the vectors in .dat files to be shown to 4 decimal places, removing trailing zeros.

For Rings, Cones the vector points for higher values of radii are a multiple of the cos/sin values of the segment angles times the radius. However, it would appear that the rounding is carried out on the cos/sin for the base radius (1, as used for Circle, Disc, etc), and <then> multiplied. That would be a No-No. For the base and lower radii, the error may be only 0.0001 in a few cases. But for the higher radii, these rounding errors mount up and impact the third decimal position.

So, BS or BUG?

tery