is possible that this script gives coordinates output with more precission of decimals for example 8 to 15 decimals in the output numbers? also possible to get a list of documents as input in a python node out of a package?
Sorry I forgot to reply to your previous message. But as you can see there is only a rounding for the angle.
Any other rounding is done by Dynamo when creating the Dynamo points.
Keep in mind that the number of decimals is a made up and theoretical thing after a certain point in any application. Letâs say you were working in miles (limiting your project to 22 units from the origin before you reach the limit of Revitâs geometry engine). Youâll obviously want to go smaller than that, but how small is practical?
Well for reference:
0.000000000000001 miles is 0.001 times the width of a Glucose Molecule. This is molecular scale, so unless your detailing looks like this you may have gone too far.
0.00000000001 miles is 0.003 times the length of a Cellâs Nucleus. If the building is going to have itâs accuracy verified using a microscope to confirm the location of each cellâs nucleons at the building scale, than youâd need this.
0.0000001 miles is 1.6 times the width of a Strand of Hair. Now hair has different sizes so this is a bit more out there as a unit of measure, but that is at least something you visually observe without a magnifying glass. That doesnât mean the contractors can build to that tolerance, but you likely want to stop here as a means of accuracy review. If the building is off by a hair width and a half than I guess there could be problems with some edge case, but generally you need to account for this much movement of material via thermal expansion anyway - have them measure again on a cold or hot day if it is an issue.
At 0.000001 miles is 0.95 times the width of a Strand of Spaghetti. This is about 6/100ths of an inch or 1.6mm. You donât want to go much bigger, though you may want to go a order of magnitude smaller.
Obviously if you are in different units (say meters, or light years) your âstop pointâ will vary further. But at some point you will want to stop chasing precision as you very quickly hit the limit of our ability to accurately model the physical world.
Also keep in mind that while Revitâs accuracy may be (mathematically) to 15 decimal places, the working range is only to about 1/256" (~0.004). So while you may be able to work out the math to that accuracy, you will never have a model anywhere close to that.
I want to see at least 6 or 8 decimals in the output numbers, because the result is not right in some cases I had, in Revit shows instead of 0mm, it shows -0.00000008347 mm, therefore shared coordinate system would not match with other files and I can see that graphically with coordinate annotation tag in Revit and in properties tab of Revit
This is actually due to the very issue youâre suggesting (working outside the reasonable bounds of accuracy). Dynamo will return whatever level of accuracy exists in the model. The problem is that Dynamo has a higher precision than Revit. So sometimes when converting values from Revit to Dynamo (especially those affected by coordinates), Dynamo will include additional precision that does not exist in the Revit model and potentially return false values. The way to get around this is to round your Dynamo values to a reasonable level of accuracy (I usually go 5 or 6 decimal places).
The thing is that the accuracy is shown in Revit but not in Dynamo custom node of Geniusloci, then I am expecting to get same number of decimals numbers than Revit does graphycally in the properties tab or tags with 12 decimals as maximum possible in Revit.
I mean Dynamo interpretated all is fine but it is not, because I believed in a package node that shows only 3 decimals in coordinate points.
Ah I see. Interesting. Iâm not familiar enough with the node to know where your rounding is occurring but Iâd first make sure that all values are doubles. You might even try specifying any constants at the higher precision youâre looking for.
It still seems like the difference wouldnât matter as the model canât handle that level of precision.
Are your projects being built so accurate that you are specifying things âin quantum motion, as a sphere of shimmering pointsâ? Why would you even have it set at that value in Revit?
If you are having problems with two values that are essentially the same not matching, just round both to the 5th or 6th decimal place as @Nick_Boyts suggested, then you can try matching them up.
but the stupid Revit modifies the decimals of numbers for unknown reason when it was expecting a full real number, zero decimals and we are talking about project coordinates, anything else it does not matter much but this issue is king
then I am thinking to extract the double X, Y and Z separately and convert those numbers to string because creating point or using math operations, Dynamo rounds the values