Features
In this 3D tile provider, the 3D Tiles 1.1 in glTF format are derived from a Feature Provider. The tilesets use implicit quadtree tiling, subtrees are encoded using the binary format for compactness.
The only refinement strategy that * is supported is ADD. Use the contentFilters configuration option to specify at which * level of the tile hierarchy a building will be represented. Each building should be included * on exactly one level.
Limitations
The provider currently depends on the building block Features - glTF and inherits its limitations.
In addition, the following information in Subtrees is not supported: property tables, tile metadata, content metadata, and subtree metadata.
Configuration
| Name | Default | Description | Type | Since |
|---|---|---|---|---|
id | Unique identifier of the entity, has to match the filename. Allowed characters are (A-Z, a-z), numbers (0-9), underscore and hyphen. | string | v2.0 | |
enabled | true | Option to disable the entity, which means it will not be available to other entities and background tasks will not be running. | boolean | v2.0 |
providerType | Always 3DTILE. | string | v2.0 | |
providerSubType | Always FEATURES. | string | v2.0 | |
tilesetDefaults | Defaults for all tilesets. | object | v4.6 | |
tilesets | {} | Definition of tilesets. | object | v4.6 |
seeding | {} | Controls how and when tiles are precomputed, see Seeding. | object | v4.6 |
Tileset Defaults
Defaults that are applied to each Tileset.
| Name | Default | Description | Type | Since |
|---|---|---|---|---|
geometricErrorRoot | 0 | The error, in meters, introduced if a tile at level 0 (root) is rendered and its children at level 1 are not. At runtime, the geometric error is used to compute screen space error (SSE), i.e., the error measured in pixels. | number | v4.6 |
clampToEllipsoid | false | If set to true, each feature will be translated vertically so that the bottom of the feature is on the WGS 84 ellipsoid. Use this option, if the data is intended to be rendered without a terrain model. | boolean | v4.6 |
subtreeLevels | 3 | The number of levels in each Subtree. | number | v4.6 |
contentLevels | null | min is the first level of the tileset which will contain buildings. The value will depend on the spatial extent of the dataset, i.e., at what level of the implicit tiling scheme large buildings can be displayed. max is the last level of the tileset which will contain buildings. The value will depend on the spatial extent of the dataset, i.e., at what level of the implicit tiling scheme small buildings can be displayed in detail. | object | v4.6 |
contentFilters | [] | A CQL2 text filter expression for each level between the firstLevelWithContent and the maxLevel to select the buildings to include in the tile on that level. Since the refinement strategy is always ADD, specify disjoint filter expressions, so that each building will be included on exactly one level. | array | v4.6 |
tileFilters | [ ... ] | A CQL2 text filter expression for each level between the firstLevelWithContent and the maxLevel to select the buildings to include in the tile on that level or in any of the child tiles. This filter expression is the same as all the contentFilters on this or higher levels combined with an OR. This is also the default value. However, depending on the filter expressions, this may lead to inefficient tile filters and to improve performance the tile filters can also be specified explicitly. | array | v4.6 |
featureProvider | null | The id of the feature provider. By default the tile provider id without -3dtiles is used. | string | v4.6 |
Tileset
All options from Tileset Defaults are also available and can be overriden here.
| Name | Default | Description | Type | Since |
|---|---|---|---|---|
id | The tileset id. | string | v4.6 | |
featureType | null | The name of the feature type. By default the tileset id is used. | string | v4.6 |
Seeding
Controls how and when caches are computed.
| Name | Default | Description | Type | Since |
|---|---|---|---|---|
runOnStartup | true | If disabled, the seeding will not run when the API starts. | boolean | v2.0 |
runPeriodic | null | A crontab pattern to run the seeding periodically. There will only ever be one seeding in progress, so if the next run is scheduled before the last one finished, it will be skipped. | string | v2.0 |
runOnDatasetChange | true | If disabled, the seeding will not run on dataset change events. See Dataset Changes. | boolean | v4.3 |
runOnFeatureChange | true | If disabled, the seeding will not run on feature change events. See Dataset Changes. | boolean | v4.5 |
purge | false | If enabled the tile cache will be purged before the seeding starts. | boolean | v2.0 |
priority | 1000 | The priority of the seeding job. This controls the order in which this seeding job is executed compared to other seeding jobs. A higher number means that the seeding job is executed earlier. | number | v4.5 |
Storage
The files of the tilesets are stored in the resource store in the * directory 3dtiles/{apiId}/cache_dyn/{tileset}/.
Example
id: cologne_lod2-3dtiles
providerType: 3DTILE
providerSubType: FEATURES
seeding:
runOnStartup: true
purge: true
jobSize: S
tilesetDefaults:
featureProvider: cologne_lod2
clampToEllipsoid: true
tilesets:
building:
id: building
featureType: building
geometricErrorRoot: 4096.0
subtreeLevels: 3
contentLevels:
min: 2
max: 2