Unsolved .0001 adding problem
Copy link to clipboard
Copied
Unbelievable how this is still an issue after many versions. I created 120 x 120 rectangles and separated them with a 30 px distance. The result? .0001 px in position and .0002 px added to size at the end.
Can't understand what kind of math AI does to mess up a rounded result.
Explore related tutorials & articles
Copy link to clipboard
Copied
Illustrator it's all unsolved..
Copy link to clipboard
Copied
Piter,
Teri Pettit on the actual accuracy:
"Illustrator preserves values to 0.0001 accuracy when files are saved. We don't write out more than that to save file space. All distances are saved in pts regardless of how they are entered and displayed.
Internally while the file is still open distances are preserved to the accuracy of a 32 bit floating point number expressed in points. An exact number of decimal places cannot be given because it is in the nature of floating points that they have more decimal places of accuracy on small numbers than they do on large numbers. That's what it means for the "point" to "float" - when it doesn't need as much room to represent the integer part, it moves over to give more memory to the fractional part. Near the center of the artboard (where the internal coordinates are in the range of about 8200 pts) I believe they have about 7 or 8 decimal places of accuracy, way up in the top left corner they have about 11 decimal places of accuracy, and way down at the bottom right corner of the pasteboard they have about 3 and a half decimal places of accuracy. (What it means for a number to have a fractional number of decimal places of accuracy is that adjacent representable numbers differ by that fraction. Remember, the program isn't putting the numbers in decimal form at all until it writes them out or displays them; internally they are binary.)
One way you can verify that even more than 4 decimal places of accuracy are used internally is to accumulate a bunch of transforms. Make a small vertical line, copy-paste-in-front so that you have two copies at the same place, select the top one, specify that you want to move it "0.00001 pt" horizontally, and then hit Cmd-D 100 times. Select both of them and you will see that they are 0.001 pt apart. (It would work even with 0.000001 pt, but I wouldn't want to ask you to hit Cmd-D 1000 times.)
Since options like stroke width always have small integer parts, they internally have extremely high precision while the file is open, although like all values they are rounded to 4 decimal places when saved."
As posted by Doug in this post (#10),
https://community.adobe.com/t5/illustrator-discussions/measurement-precision-fail/m-p/10562213#M1417...
in this thread,
https://community.adobe.com/t5/illustrator-discussions/measurement-precision-fail/td-p/10562203
Copy link to clipboard
Copied
I can't understand why anyone worries about an "error" of 0.00003 mm or so, or considers it a bug to "fix". If you had a million objects this size they would still be too small to see with the naked eye... what sort of problems does this issue cause you with design accuracy?
Copy link to clipboard
Copied
Stacked side by side, that would be 30mm.
My eyes are bad, but I could see that.
Copy link to clipboard
Copied
I didn't explain that well. If you had objects 0.00003 mm square and put them in a row, they would be invisible because the line is too thin. To approach visibility you'd have to make a 2D shape, so 1000 x 1000 objects make a square 0.03 mm on the side. The threshold for visibility is about 0.1mm, so you'd actually need about ten such squares to be visible. 0.116, so to give the 8 significant figures the OP is complaining about, we would need exactly 14,951,111 such objects. Oh, but wait 32-bit floating point has only 7 significant figures. Hmm... so somewhere between 14,951,110 and 14,951,120. Such inaccuracy!
Copy link to clipboard
Copied
Ah, well in that case you could have a billion trillion and still not see them...
But I take your point that it makes no difference - to the art - but it does make a difference to how you work if you have to constantly take into account the floating 4 significant figures....
Copy link to clipboard
Copied
Piter, others that may be concerned,
As far as I (mis)remember, those last digit discrepancies have been disturbing rather than scathing, except in connexion with some scripting solutions where they can give errors.
There have been some strange unrelated cases with obviously wrong values more digits off, which seem to confirm the old saying that Illy sometimes moves in mysterious ways.
And there have been/are some opposite unrelated cases with repeated use of values appearing in boxes causing accumulated inaccuracies.
Copy link to clipboard
Copied
Well, for me this is a major problem cause I create manuals for other people to reproduce things and I cannot put "even though that circle shows as 29.999 x 29.888 you must create it 30 x 30"
Take a look at the image below for example, I have scaled down a compound shape and what was a simple circle in the middle is no longer centered or even:
Copy link to clipboard
Copied
It is still centred and even for all practical purposes, even if there is a difference at the 7th significant figure. If you feel this is a concern for your people, because they too worry about false precision (reference: https://en.wikipedia.org/wiki/False_precision) you can say. "The size is 30 x 30. Because Illustrator shows so many decimal places, this could show as anything between 29.998 and 30.002 - do not be concerned that this will affect the output."
Copy link to clipboard
Copied
Ten-thousandth of a point/pixel is imperceptible.
Copy link to clipboard
Copied
But sometimes it will result in something unwanted. An artbord of 29,998 pt by 30.002 pt will not result in a 30X30 px export, but will be 30X31 px.
Copy link to clipboard
Copied
Piter, everyone,
I just looked it up in the Artboard section of my old Illy Archive (which I started in 2004 after looking in vain for some priceless threads from earlier years and then being told by Len (Hewitt) that old threads were doomed when entering the then forum archive and fell into the abyss after about one year, and ended in 2009 when we were told that threads would be kept (only to find out in 2019 that two thirds of all threads had been deleted, so almost everything from before 2017 was lost)).
Based on threads between 2003 and 2005, mostly from posts by Teri (Pettit) herself, it can be established that up until AI 6 (up to) 4 decimal places were used, from AI 7 till AI 10 this was reduced to 3 decimal places following a feature request by those tiring of getting many decimal mm values, in AI CS /AI 11) this was changed back to 4 decimal places following feature (return) requests by those tiring of getting many truncated inch values when using sixteenths (it was also pointed out by at least James (E Talmage) that the truncation resulted in actual errors when multiplying truncated values through the Transform palette), and in AI CS2/AI 12 it was changed again so that 4 decimal places were used for inches and cm whereas 3 decimal places were used for mm and pt.
It is worth mentioning that there was a(n external) patch for AI CS (made available on a Czech forum) used by many to correct the .9999 and .0001 errors in Illustrator when working with mm.
It is also worth mentioning that there was an Adobe consideration whether to round any shown value to the nearest integer when the (4 decimal places) value was closer than 0.0005 to it.
As it appears, there were feature requests about this very matter (more than) two decades ago, long before the current request options,
https://illustrator.uservoice.com/forums/333657-illustrator-desktop-feature-requests
https://illustrator.uservoice.com/
Maybe it is time to consider a new round.
As a curiousity, there were additional complications mentioned back then, including different fundamental accuracies (in points as the native unit) depending on position on the Workspace/pasteboard (usually referred to as the Canvas now) and size as mentioned above with links, and also including the fundamental inability to obtain exact/accurate values in metric units,
and also including the fundamental way that objects are drawn and the astonishing effects it can have on the actual/shown values in connexion with ClickDragging depending on zoom level; but those are other stories.
All of the above appeared in one of the then two Illy tribes, but I am convinced that more or less the same occurred in the other one. The two were merged in 2009.
Copy link to clipboard
Copied
Try to turn on "preview bounds" in the align panel.

