If you find that the area of before and after input is slightly different, it is caused by the Snap Rounding algorithm that we use in the software, to cater the imprecise input from users. Provided in this article is a simple example (may as well download the project provided above) for an easy understanding. For more details for technical understanding, you may refer to this website; CGAL 5.0.2 – 2D Rounding.
As you notice, the area of the input by the user is 529.316 m2 and the output coming out from the software after analysis is 528.9 m2. The small discrepancy between the results is due to Snap Rounding algorithm.
What is Snap Rounding? #
Snap Rounding is a method to approximate line segments by creating grids and modifying the line segment vertex to be at least half of the pixel grid, in order to convert the line into a fixed precision representation.
Before Snap Rounding:
After Snap Rounding:
How does it affect the outcome #
50 mm is the size of pixels given in the MiTS software by default. Therefore, the line segments are created based on the dimension of the pixel (line is adjusted to be at the centre of the pixel dimension). Therefore, the bigger the pixel size, the higher the tolerance of the line adjustment and causes discrepancy in the results in terms of dimension, cut/fill area and volume between before and after analysis due to the modification. However, if you need to be precisely the same between after result and the before, the pixel needs to be reduced but the drawback is that it will take longer to analyse and prone to create overlapped platforms (which is explained in this blog post; “EW3D: How does EW3D Handle Inaccuracy In Input”).
Take a look at the example below (project file is provided at the top of this article):
Pixel Size : 50 mm (default)
Pixel Size: 5 mm (Lower Tolerance)
If the area is affected by snap rounding, of course the volume of cut/fill also will be affected.
Pixel Size: 50 mm (default)
Pixel Size: 5 mm
Snap rounding algorithm is the modification made towards the line segment in order to cater the imprecise input. The vertex of the line segment will be adjusted to be at the center of the pixel grid. Therefore, the bigger the pixel size, the higher the tolerance is and will reduce the overlapping platform as explained in the blog post “EW3D: How does EW3D Handle Inaccuracy In Input”.
If the pixel size is reduced, the tolerance is lowered and the discrepancy between user input and after modification will be lowered, although the discrepancy between 50 mm pixel with 5 mm is too small (less than 1%). It also has its own disadvantage, which is the platforms are inclined to be overlapped and are meticulous to adjust them. More explanation, you may refer to the blog post “EW3D: How does EW3D Handle Inaccuracy In Input”.