Data structure

In the current version of VARIANT, we store an MT in a data structure which explicitly describes the DAG and the local updates. Each triangle in the model is encoded by storing its geometry, including elevation, as well as its attributes. The connection between a node and the triangles created and removed in the corresponding update is encoded by associating triangles to arcs of the DAG (see [De Floriani et al.1998,] for further details). a triangle t is associated with the arc directed from the update creating t to the update deleting t (see Figure [*]). The storage cost of this data structure is linearly proportional to the number of triangles of the MT: experimental results show that it is about four times larger than the cost of a single resolution model encoding just the TIN at the highest resolution available. Lighter data structures could be adopted for special classes of MTs [,Hoppe1998,], which strongly reduce the overhead necessary to manage multiresolution. However, explicit encoding has been adopted for a number of reasons: it can encode an MT independently of the technique used to build it, thus allowing us to experiment the system with different construction techniques (see also Section [*]); it allows us maintaining details for all entities at all levels of resolution in the model; and, last but not least, it is directly supported by our object oriented library for managing MT models [], which is a suitable tool for fast prototyping and transparent extension of the system.

[CONFRONTARE ANCHE CON LAVORO LIBRERIA SULLE CARATTERISTICHE DELLA STRUTTURA E DELLA LIB]