Aggregate
Un agrégat est une collection de géométries de tout type qui est traitée comme une seule unité. Les agrégats peuvent être ou non homogènes et/ou hiérarchiques.
Géométries hiérarchiques
Une géométrie hiérarchique est une collection de géométries qui peut, à son tour, contenir d'autres collections (agrégats ou multis) à une profondeur arbitraire. Le cas typique d'une géométrie hiérarchique est un agrégat qui contient des agrégats. Ce comportement imbriqué permet de représenter les relations hiérarchiques entre les géométries.
Par exemple, un agrégat hiérarchique nommé Maison peut contenir d'autres agrégats nommés Toit et Murs, où Murs est un agrégat qui contient quatre faces. Les propriétés associées à la maison dans son ensemble peuvent être stockées en tant que traits au niveau supérieur, mais les propriétés qui ne concernent qu'un sous-groupe, comme le type de bardeaux, peuvent être stockées en tant que traits sur l'agrégat Toit.
En option, les agrégats peuvent posséder une matrice de transformation. Les agrégats peuvent également avoir une apparence avant ou arrière, et peuvent être à simple ou double coté.
Agrégats homogènes
Un agrégat homogène est constitué d'entités de même fme_type.
Les agrégats qui contiennent d'autres collections (agrégats ou multis) ne les empêchent pas d'être homogènes. Seuls les nœuds "feuilles" d'un agrégat doivent partager le même type.
Par exemple, une collection de géométries de surface dans un agrégat serait considérée comme un agrégat homogène (fme_type
= fme_surface
).
Certains types d'agrégats homogènes peuvent également être représentés comme des géométries multiples. Par exemple, une collection composée uniquement de points peut également être représentée comme une géométrie multi-points.
Attributs d'agrégats homogènes
- fme_geometry = fme_aggregate
- fme_type = <type of contained geometries>
Agrégats non homogènes
Un agrégat non homogène est constitué d'entités de types de géométrie différents.
Par exemple, une collection de points, lignes, et polygones dans un agrégat serait considérée comme un agrégat non homogène, (fme_type
= fme_collection
).
Attribut d'agrégats non homogènes
- fme_geometry = fme_aggregate
- fme_type = fme_collection