No announcement yet.

Dimension accuracy

  • Filter
  • Time
  • Show
Clear All
new posts

    Dimension accuracy

    I am starting a project using our standard template which is in ft and inches. I then go into units and change them mm, and the rounding to 0.000000000001. If I take a grid and copy it over 5000 mm, and then dimension between the two, the dimension returns 5000.000000000006. What is going on?

    So another odd thing...

    I started another project from a metric template, change the rounding to the same thing, and tried it again, and it works. However, if I do a third grid and dimension them, the dimension reads the 2400 that I input for the copy when the dimensions are not inline. However, if I make the dimensions line up it will change what the dimension reads.
    Attached Files


      I've seen that happen in projects where cad was traced. I posted a video of it a few weeks ago: where moving the dim placement (not the witness line) actually changed the dim value. Scary stuff.

      Has to do with elements snapping parallel to elements that are slightly skewed... Like cad files. If that issue is present in your template out of the gate?? Yikes.
      Aaron "selfish AND petulant" Maller |P A R A L L A X T E A M | Practice Technology Implementation
      @Web | @Twitter | @LinkedIn | @Email


        IIRC it has to do with Floating Point math calculations. As I understand it not all decimal values work out exactly in floating binary format. I also seem to recall that Revit is only working to six decimal places of accuracy (Float goes to 7 digits). If you are familiar with a Double (using Access and field formatting) it goes to 15 digits. If you want to dig deeper you can check out StackOverflow for threads on the subject. If a mathematician wants to set me straight please do! I am not a mathematician but I did stay in a Holiday Inn Express recently.

        Edit: per Chris' link (Thanks! I knew I read it before) to Leonid and Irwin's replies Revit uses Double precision which extends to a maximum of 15 digits, but Revit only displays up to 12.

        Originally posted by Irwin at AUGI
        ...The difference you are seeing is approximately one part in 10 to the 14th power -- it is around one ten thousandth of the diameter of a hydrogen atom. Revit uses double precision numbers for all calculations (as do all CAD systems), and they are only good to around 14 or 15 digits.

        Regarding your concern about angles, if an error of this magnitude were introduced into the angle between two walls, and the length of the walls was the distance from the Earth to the Sun, then the error in the distance between the ends of the walls would be around 1 mm...
        Last edited by Steve_Stafford; January 21, 2014, 10:23 PM.


          No mathematician either, but did some searching on this very topic a year ago.

          Particular attention to Leonid Raiz (LRaiz) one of the founders of Revit.
          Revit Accuracy - Page 2

          If you want to get your geek on...
          Lahey - Floating point
          Double-precision floating-point format - Wikipedia, the free encyclopedia

          Layout some garbage bags before you attempt this one... it'll hurt.
          What Every Computer Scientist Should Know About Floating-Point Arithmetic
          Chris Heinaranta | Architectural Technologist


            Dimension accuracy

            Without going into the specifics of your particular example, or floating point rounding, Revit has a fundamental issue with units. Revit stores the basic length unit in feet, regardless of the project's specified unit of measurement. This means that almost all dimensions have significant rounding errors. Even 4 inches is 0.3333.. of a foot. Don't even think about metric. Whenever these values are used in calculations the errors compound. Other units are stored in metric (force, mass) making the system even less cohesive. Comments as to the accuracy used in construction are completely irrelevant when designing a 3D CAD/Graphics application.
            The Building Coder: Units


              It comes up every time someone uses the stock model pattern for stock modular running bond brick, hehehe. Te Revit.pat way of making that pattern adds a 1/256" every three bricks. Oopsie.

              But it's workable if you have a plan, and if you don't round anything.
              Aaron "selfish AND petulant" Maller |P A R A L L A X T E A M | Practice Technology Implementation
              @Web | @Twitter | @LinkedIn | @Email


                one ten thousandth of the diameter of a hydrogen atom.
                Love that one.
                Dave Plumb
                BWBR Architects; St Paul, MN

                CADsplaining: When a BIM rookie tells you how you should have done something.


                  Yep the floating point issue has been with us since the start of CAD. There's no way to get around it entirely. The best you can achieve is to ensure that your project origin point is as close to the building as you can get it. The further away it is the worse this error becomes.

                  And even that is not the "only" problem - you tend to think only in terms of distances when you hear floating point inaccuracy. What about angles? Is 90deg "exactly" 90deg? I know in ACAD there is an issue with this: Inaccuracy between lines

                  To avoid the possible "snapping to off-axis objects" you could always Hide/Isolate when drawing your grids. Also when copying a grid, be sure to turn on "Constrain" - that'll ensure that you don't inadvertently copy it at a non-perpendicular angle.


                    Originally posted by irneb
                    ...Yep the floating point issue has been with us since the start of CAD...
                    ...more like since computers


                    Related Topics