Objects Structure🍋
Diagram🍋
flowchart TB
id1(GeoRefObject) --> id2(GridObject)
id2(GridObject) --> id3(BlockModel)
id2(GridObject) --> id4(GriddedSurface)
id2(GridObject) --> id5(Voxel)
id1(GeoRefObject) --> id6(Drillholes)
id1(GeoRefObject) --> id7(PointCloud)
id1(GeoRefObject) --> id8(Surface)
id8(Surface) --> id9(Solid)
style id1 stroke:#333,stroke-width:4px
Detailed Structures🍋
GeoRefObject
🍋
GeoRefObject is the Base class for GeoLime 3D objects. A GeoRefObject cannot be instantiated but allows all the different subclasses to inherit common behavioud & methods.
GridObject
🍋
GridObject is the common class for 3D objects with volumetric elementary unit. It allows to store data on node or element (volumetric unit). A GridObject cannot be instantiated but allows all the different subclasses to inherit common behaviour & methods.
BlockModel
🍋
BlockModel represents explicit GridObject where all cells have the same size. It is called explicit as all cells are store in the database. Cells might not be continuous and do not have to all be defined in the working box. BlockModel coordinates are centers of the cells.
GriddedSurface
🍋
GriddedSurface represent implicit 2D GridObject where all cells have the same size. For each XY in the grid plane there is only one Z. DTM for example where elevation is mesured at fixed interval can be load in GeoLime as a GriddedSurface.
Voxel
🍋
Voxel represents implicit GridObject where all cells have the same size. This class can be seen as an extension of the BlockModel, where all cell in the working box have to be defined.
Drillholes
🍋
Drillholes Object represents group of drillholes. Each drilllhole is caracterized by a unique Hole ID.
PointClound
🍋
PointCloud Object is the simplest GeoRefObject being only a set of unrelated points.
Surface
🍋
Surface Object is composed of a set of points being the nodes and triangle being the geometry allowing to link nodes in order to create a surface.
Solid
🍋
Solid Object is composed of a set of points being the nodes and triangle being the geometry allowing to link nodes in order to create a closed surface. This a subset of Surface where the surface is closed, allowing volumetric computation and point enclosure checks.