@Anonymous wrote:
.... this lisp seems to have a limitation of around 13 decimals places. Past that it starts identifying lines of differing lengths as having the same length. ....
Wow.... Are we talking angstroms here, or what?
If I read it correctly, the routine divides the range of length between the shortest and longest Lines into 254 equal pieces, and gives a color to Lines within each sub-range representing where that sub-range lies within the overall range. If two Lines are given the same color, it isn't identifying them as having the same length, but only as falling within the same 1/254th sub-range of the overall length range. If the overall range between shortest and longest is 254 units, each sub-range will be 1 unit long, and a Line that's, say, 54.0000000253 units longer than the shortest Line will fall in the same sub-range, and therefore be given the same color, as something 54.99999999418 units longer. Greater precision is not going to make any difference to that determination, except perhaps with Lines whose lengths fall very close to the break points between sub-ranges.
If you have Lines that differ in length only down at the 13th decimal place or beyond, and you want them given different colors, maybe what you want is a different method of categorization. Should it sort the Lines by length, and regardless of how much difference there is in the lengths of adjacent Lines in the sorted list, give them colors based on their position in the list, rather than their actual length relative to the overall range?
AutoCAD can't handle anything beyond 16 significant figues, and the number of decimal places that limits it to depends on what there is before the decimal point, and if only a 0, how many more 0's there are after the decimal point before it gets to non-0 numerals. So whether it can think about things beyond 13 decimal places depends on the kinds of sizes you're talking about.
Kent Cooper, AIA