The Trilateral transformation  Basic Concepts Why Homography and RubberSheeting are not suitable for maps based on land surveys? Although the Homography and RubberSheeting transformations are robust mathematical algorithms, they are not the optimal solution for those maps created by a real land survey, such as Cadastral maps. We’ll try to explain this. As we’ve seen in the section Basic Concepts  Homography, the Homography transformation is based on the assumption that the map is a perspective projection of the terrain (Fig. BC.H3). This is the perfect method for maps generated through an aerial photographic survey. But this is not the case with Cadastral maps. These maps have been surveyed many decades or even centuries ago as the result of a field survey. So the question is: Stated that a Cadastral map is not a perspective projection of the terrain, is it correct to adopt the Homography transformation? Answer: No, it is not. On the other hand, the RubberSheeting transformation described in the previous section has been studied for adapting the deformed map to a regular grid of control points. The RubberSheeting scenario is the following: one point might need a big correction, whereas another point might need a small correction and yet another point might need no change at all (Fig. BC.R1 in section Basic Concepts  Rubber Sheeting). But in a typical Cadastral map we don’t know in advance the different correction required for control points. The only thing that we have is a set of corresponding mapreal points, but we completely ignore how good the mutual position is for each of them, i.e. how much we should move a map control point to place it in its real position? So here the question is: If the starting situation is not the one assumed by the RubberSheeting algorithm, is correct to adopt this transformation? Answer: No, it is not. Well, it was for to the above considerations that we came to the conclusion that the Homography and RubberSheeting algorithms were unfit for maps based on a traditional topographic survey on the field. That’s why Tecnobit studied a more appropriate solution: the Trilateral transformation. But even though the Homography and RubberSheeting transformations are not suitable for this type of maps, the starting situation and the operation to perform are those already described in section Transformations  Homography and are summarized here:
1.First of all we survey on the land a number of control points that are present on the map and physically available on the ground, after having verified their mapreal correspondence.
2.We then calculate the surveyed point's coordinates in the desired reference system, such as a simple local system with origin at the first station and orientation in the direction of the zero for horizontal angles. 3.We apply the Barycentric transformation in order to evaluate the deviations of each control point so that we can exclude those where the error exceeds the desired tolerance.
4.Finally, we can apply the Trilateral transformation to the points that passed the Barycentric analysis. The algorithm The Trilateral algorithm follows the same criteria as the Homography and Rubber Sheeting transformations but is much simpler because it acts on triangles instead of quadrilateral. So, the first operation, once we have our set of corresponding mapreal point coordinates, is to apply a triangulation in order to divide the area into single triangles. This is the same operation also performed in the Homography and RubberSheeting techniques but in those cases the triangles are then transformed into quadrilaterals by considering all pairs of adjacent triangles. Obviously we don’t need such manipulation in the Trilateral solution because it acts directly on the triangles themselves. So the Trilateral algorithm considers each single triangle as described here. Fig. TR.T1 shows the initial situation: given a triangle on the map, we want to relate it to the corresponding triangle on the survey (reality) so that we can calculate the position in the field of a point in the map inside that triangle (the blue spot in Fig. TR.T1). How do we achieve this goal? Well, for triangle vertices the solution is straightforward: we simply need to migrate them from the map to their correspondent vertices in the survey as shown in Fig. TR.T2.
Fig. TR.T1 – The Trilateral transformation relates each triangle on the map to its corresponding triangle on the survey.
Fig. TR.T2 – Triangle vertices are directly moved from the map to the survey.
For the internal point things are a bit more complicated, but not too much. With reference to Fig. TR.T3, the internal point in the map is projected from a vertex to the opposite side, thus determining the length of the two segments a, b. Then these two segments are calculated for the survey triangle (a’, b’) with the same proportion so that the same projection is reproduced in this triangle. Finally, this projection is joined to the corresponding vertex. The operation just described is then repeated for the other two vertices as shown in Fig. TR.T4. Of course, due to map deformation, the three conjunctions in the survey triangle do not intersect at a single point as in the map triangle, but they form a small internal triangle, which we can call the “deformation triangle”. In fact, the size of this internal triangle tells us how big the deformation is: the bigger the triangle, the bigger the deformation is. Finally the map point is moved to the barycenter of the deformation triangle in the survey.
Fig. TR.T3 – The internal point in the map is projected from a vertex to the opposite side, and then the two projections are calculated for the triangle in the survey by applying a simple proportion.
Fig. TR.T4 – The point on the map is moved to the barycenter of the deformation triangle in the survey.
In the Transformations  Trilateral section you'll find a practical example on how to perform this transformation with CorrMap.
