![]() |
LuciadCPillar C# 2024.1.02
|
This class is a factory that provides new instances of a Model
.
More...
Static Public Member Functions | |
static Luciad.Models.Model | Decode (Luciad.Formats.Geopackage.GeoPackageDataSource dataSource) |
Creates a model for a OGC GeoPackage file. More... | |
static Luciad.Models.Model | Decode (Luciad.Formats.Geopackage.GeoPackageDataSource dataSource, Luciad.Formats.Geopackage.GeoPackageModelDecoderOptions options) |
Creates a model for a OGC GeoPackage file. More... | |
static System.Collections.Generic.IList< Luciad.Formats.Geopackage.GeoPackageTableMetadata > | DiscoverTables (string source, bool includeUnsupportedDataTypes) |
Discovers the available tables in the given source file. More... | |
This class is a factory that provides new instances of a Model
.
This specific model can be either a IFeatureModel
or a IRasterModel
giving the ability to access the data within a GeoPackage file.
|
inlinestatic |
Creates a model for a OGC GeoPackage file.
dataSource | The data source description to use for data retrieval. |
System.IO.IOException | when decoding the GeoPackage file fails. |
|
inlinestatic |
Creates a model for a OGC GeoPackage file.
The GeoPackage decoder allows decoding files following the OGC GeoPackage specification.
The supported table types are
GeoPackageTableMetadata.typeFeatures
GeoPackageTableMetadata.typeTiles
GeoPackageTableMetadata.type2dGriddedCoverage
Use the method GeoPackageModelDecoder.DiscoverTables
to retrieve the list of tables within the GeoPackage file.
Geometry Type Codes | Description for geometry in model |
---|---|
Point | Point |
LineString | Polyline |
CircularString | CircularArcBy3Points (or a collection of...) |
Polygon | Polygon |
MultiPoint | MultiGeometry with Point sub-geometries |
MultiLineString | MultiGeometry with Polyline sub-geometries |
MultiPolygon | MultiGeometry with Polygon sub-geometries |
GeometryCollection | MultiGeometry |
Custom Geometry Type Codes | Description for geometry in model |
---|---|
LcdCircle | Patch with CircleByCenterPoint as base geometry |
LcdEllipse | Patch with Ellipse as base geometry |
LcdEllipticalArc | EllipticalArc |
For curve geometries there is an implicit curve interpolation based on the type of Coordinate Reference System (CRS). When the CRS is a geodetic coordinate reference, e.g. WGS84, the interpolation is geodesic, otherwise the curve interpolation is linear.
FeatureQuery
expression filter can be used to order and filter the features that has to be loaded in memory. The filtering is done by the database and only the resulted features are loaded in memory.GeoPackageModelDecoderOptions
. The decoded model's IFeatureModel.GetUpdater
method returns an IFeatureModelUpdater
which can be used to modify the model. Changes to the model are not automatically persisted into the gpkg file, persisting is done using the FeatureModelPersistenceManager
, accessed using IFeatureModel.GetPersistenceManager
.One way conflicts can happen is if features which already have an id are added to the model; for performance reasons the uniqueness of the id is only checked against the in-memory features, not against those in the GeoPackage file. Until the conflict is resolved by persisting the changes, the shadowed features in the GeoPackage file are not visible (i.e. they don't appear in query results).
The following tile formats are supported:
A sub-set of the Tiled Gridded Coverage Data, version 1.0, extension is supported to read elevation data.
The following elevation data formats are supported:
Decoding of GeoPackage files is limited to coordinate references supported by the CoordinateReferenceProvider.Create
method.
dataSource | The data source description to use for data retrieval. |
options | Options for decoding GeoPackage data, e.g. an option to make a feature model editable. |
System.IO.IOException | when decoding the GeoPackage file fails. |
|
inlinestatic |
Discovers the available tables in the given source file.
source | The absolute path to the GeoPackage file. The extension of the file should be '.gpkg'. |
includeUnsupportedDataTypes | Whether to include unsupported data types. |
System.IO.IOException | when discovering the tables fails. |