HydroCouple  2.0.0
HydroCouple Interface Definitions
Loading...
Searching...
No Matches
hydrocouplespatial.h File Reference

Geospatial interface definitions for the HydroCouple component-based modeling framework. More...

#include "hydrocouple.h"
Include dependency graph for hydrocouplespatial.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  HydroCouple::Spatial::ISpatialReferenceSystem
 ISpatialReferenceSystem describes the coordinate reference system for spatial geometric objects. More...
 
class  HydroCouple::Spatial::IEnvelope
 IEnvelope represents the minimum bounding box of a geometry. More...
 
class  HydroCouple::Spatial::IGeometry
 IGeometry is the root class of the geometry hierarchy. More...
 
class  HydroCouple::Spatial::IGeometryCollection
 An IGeometryCollection is a geometric object that is a collection of some number of IGeometry objects. More...
 
class  HydroCouple::Spatial::IPoint
 An IPoint is a 0-dimensional geometric object and represents a single location in coordinate space. More...
 
class  HydroCouple::Spatial::IMultiPoint
 An IMultiPoint is a 0-dimensional IGeometryCollection. More...
 
class  HydroCouple::Spatial::IVertex
 The IVertex class is an IPoint of a topologically aware IGeometry. More...
 
class  HydroCouple::Spatial::ICurve
 A Curve is a 1-dimensional geometric object usually stored as a sequence of IPoints, with the subtype of ICurve specifying the form of the interpolation between IPoints. More...
 
class  HydroCouple::Spatial::IMultiCurve
 An IMultiCurve is a 1-dimensional IGeometryCollection whose elements are ICurves. More...
 
class  HydroCouple::Spatial::ILineString
 An ILineString is a Curve with linear interpolation between Points. Each consecutive pair of Points defines a Line segment. More...
 
class  HydroCouple::Spatial::IMultiLineString
 An IMultiLineString is an IMultiCurve whose elements are ILineStrings. More...
 
class  HydroCouple::Spatial::ILine
 The ILine class is an ILineString with exactly 2 IPoints. More...
 
class  HydroCouple::Spatial::ILinearRing
 An ILinearRing is an ILineString that is both isClosed() and isSimple(). More...
 
class  HydroCouple::Spatial::IEdge
 A directed edge from one vertex to another, adjacent to two faces. Based on Dani Lischinski's code from Graphics Gems IV. Original quad-edge data structure due to Guibas and Stolfi (1985). Does not inherit from geometry to reduce size. since each edge has 4 pointers. More...
 
class  HydroCouple::Spatial::ISurface
 A ISurface is a 2-dimensional IGeometry object. More...
 
class  HydroCouple::Spatial::IMultiSurface
 A MultiSurface is a 2-dimensional GeometryCollection whose elements are Surfaces, all using coordinates from the same coordinate reference system. More...
 
class  HydroCouple::Spatial::IPolygon
 A IPolygon is a planar ISurface defined by 1 exterior boundary and 0 or more interior boundaries. More...
 
class  HydroCouple::Spatial::IMultiPolygon
 An IMultiPolygon is an IMultiSurface whose elements are IPolygons. More...
 
class  HydroCouple::Spatial::ITriangle
 An ITriangle is a IPolygon with 3 distinct, non-collinear vertices and no interior boundary. More...
 
class  HydroCouple::Spatial::INetwork
 INetwork represents a graph structure of connected vertices and edges. More...
 
class  HydroCouple::Spatial::IPolyhedralSurface
 An IPolyhedralSurface is a contiguous collection of polygons, which share common boundary segments. More...
 
class  HydroCouple::Spatial::ITIN
 An ITIN is a triangulated irregular network IPolyhedralSurface consisting only of ITriangle patches. More...
 
class  HydroCouple::Spatial::IRaster
 A Raster spatial feature. More...
 
class  HydroCouple::Spatial::IRasterBand
 IRasterBand is a single raster band for an IRaster. More...
 
class  HydroCouple::Spatial::IRegularGrid2D
 IRegularGrid2D represents a two-dimensional structured grid of nodes and cells. More...
 
class  HydroCouple::Spatial::IRegularGrid3D
 IRegularGrid3D represents a three-dimensional structured grid of nodes and cells. More...
 
class  HydroCouple::Spatial::IGeometryComponentDataItem
 IGeometryComponentDataItem is an IComponentDataItem whose data is associated with a collection of IGeometry objects. This class must be implemented as an abstract class. More...
 
class  HydroCouple::Spatial::INetworkComponentDataItem
 INetworkComponentDataItem is an IComponentDataItem whose data is associated with an INetwork of edges and vertices. More...
 
class  HydroCouple::Spatial::IPolyhedralSurfaceComponentDataItem
 IPolyhedralSurfaceComponentDataItem is an IComponentDataItem whose data is associated with an IPolyhedralSurface mesh of patches, edges, and vertices. More...
 
class  HydroCouple::Spatial::ITINComponentDataItem
 ITINComponentDataItem is an IPolyhedralSurfaceComponentDataItem whose surface consists exclusively of ITriangle patches. More...
 
class  HydroCouple::Spatial::IRasterComponentDataItem
 IRasterComponentDataItem is an IComponentDataItem whose data is associated with an IRaster of pixel bands arranged in a regular grid. More...
 
class  HydroCouple::Spatial::IRegularGrid2DComponentDataItem
 IRegularGrid2DComponentDataItem is an IComponentDataItem whose data is associated with an IRegularGrid2D of cells, edges, and vertices. More...
 
class  HydroCouple::Spatial::IRegularGrid3DComponentDataItem
 IRegularGrid3DComponentDataItem is an IComponentDataItem whose data is associated with an IRegularGrid3D of cells, faces, and vertices. More...
 

Namespaces

namespace  HydroCouple
 HydroCouple namespace contains the core interface specifications for the HydroCouple component-based modeling framework interface specification.
 
namespace  HydroCouple::Spatial
 HydroCouple's interfaces that have a spatial component.
 

Enumerations

enum class  HydroCouple::Spatial::MeshDataObjectType {
  HydroCouple::Spatial::Cell ,
  HydroCouple::Spatial::Vertex ,
  HydroCouple::Spatial::Edge ,
  HydroCouple::Spatial::Face
}
 The MeshDataObjectType enum describes the part of the geometry of the mesh that data corresponds to. More...
 
enum class  HydroCouple::Spatial::NetworkDataObjectType {
  HydroCouple::Spatial::Node ,
  HydroCouple::Spatial::Edge
}
 The types of data available in a network. More...
 
enum class  HydroCouple::Spatial::SpatialDataType {
  HydroCouple::Spatial::Scalar ,
  HydroCouple::Spatial::MultiScalar ,
  HydroCouple::Spatial::Vector ,
  HydroCouple::Spatial::Tensor
}
 SpatialDataType describes the type of spatial data (applicable to meshes, networks, and other spatial structures). More...
 
enum class  HydroCouple::Spatial::RegularGridType {
  HydroCouple::Spatial::Cartesian ,
  HydroCouple::Spatial::Rectilinear ,
  HydroCouple::Spatial::Curvilinear
}
 The types of regular grids. More...
 

Detailed Description

Geospatial interface definitions for the HydroCouple component-based modeling framework.

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Version
2.0.0

This header file contains the geospatial interface definitions for the HydroCouple component-based modeling framework. It defines interfaces following the OGC Simple Features Access specification for geometry types, spatial reference systems, mesh/network data structures, raster data, regular grids, and their corresponding component data item interfaces.

License\n
This file and its associated files and libraries are free software. You can redistribute it and/or modify it under the terms of the MIT License as published by the Free Software Foundation. This file and its associated files are distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the MIT License for details.
Date
2014-2026