1414import de .ii .xtraplatform .docs .DocTable ;
1515import de .ii .xtraplatform .docs .DocTable .ColumnSet ;
1616import de .ii .xtraplatform .docs .DocVar ;
17- import de .ii .xtraplatform .entities .domain .AutoEntity ;
1817import de .ii .xtraplatform .entities .domain .EntityDataBuilder ;
1918import de .ii .xtraplatform .entities .domain .EntityDataDefaults ;
2019import de .ii .xtraplatform .entities .domain .maptobuilder .BuildableMap ;
21- import de .ii .xtraplatform .tiles .domain .Cache ;
22- import de .ii .xtraplatform .tiles .domain .SeedingOptions ;
23- import de .ii .xtraplatform .tiles .domain .WithCaches ;
24- import java .util .List ;
2520import java .util .Map ;
2621import java .util .Optional ;
2722import javax .annotation .Nullable ;
3025/**
3126 * # Features
3227 *
33- * @langEn In this tile provider, the tiles in Mapbox Vector Tiles format are derived from a
34- * [Feature Provider](../feature/README.md). Additionally, raster tiles in PNG format can be
35- * derived from the vector tiles using [xtratiler](../../tools/xtratiler/README.md).
28+ * @langEn In this 3D tile provider, the 3D Tiles 1.1 in glTF format are derived from a [Feature
29+ * Provider](../feature/README.md).
3630 * <p>## Configuration
3731 * <p>{@docTable:properties}
3832 * <p>{@docVar:tilesetDefaults}
3933 * <p>{@docTable:tilesetDefaults}
4034 * <p>{@docVar:tileset}
4135 * <p>{@docTable:tileset}
42- * <p>{@docVar:rasterTileset}
43- * <p>{@docTable:rasterTileset}
44- * <p>{@docVar:cache}
45- * <p>{@docTable:cache}
4636 * <p>{@docVar:seeding}
4737 * <p>{@docTable:seeding}
4838 * <p>## Example
4939 * <p>{@docVar:examples}
50- * @langDe Bei diesem Tile-Provider werden die Kacheln im Format Mapbox Vector Tiles aus einem
51- * [Feature Provider](../feature/README.md) abgeleitet. Zusätzlich können Raster-Kacheln im
52- * PNG-Format aus den Vektor-Kacheln mit [xtratiler](../../tools/xtratiler/README.md) abgeleitet
53- * werden.
40+ * @langDe Bei diesem 3D Tile-Provider werden die 3D Tiles 1.1 im Format glTF aus einem [Feature
41+ * Provider](../feature/README.md) abgeleitet.
5442 * <p>## Konfiguration
5543 * <p>{@docTable:properties}
5644 * <p>{@docVar:tilesetDefaults}
5745 * <p>{@docTable:tilesetDefaults}
5846 * <p>{@docVar:tileset}
5947 * <p>{@docTable:tileset}
60- * <p>{@docVar:rasterTileset}
61- * <p>{@docTable:rasterTileset}
62- * <p>{@docVar:cache}
63- * <p>{@docTable:cache}
6448 * <p>{@docVar:seeding}
6549 * <p>{@docTable:seeding}
6650 * <p>## Beispiel
6751 * <p>{@docVar:examples}
68- * @ref:cfgProperties {@link de.ii.xtraplatform.tiles .domain.ImmutableTileProviderFeaturesData }
69- * @ref:tilesetDefaults {@link de.ii.xtraplatform.tiles .domain.TilesetFeaturesDefaults }
52+ * @ref:cfgProperties {@link de.ii.xtraplatform.tiles3d .domain.ImmutableTile3dProviderFeaturesData }
53+ * @ref:tilesetDefaults {@link de.ii.xtraplatform.tiles3d .domain.Tileset3dFeaturesDefaults }
7054 * @ref:tilesetDefaultsTable {@link
71- * de.ii.xtraplatform.tiles.domain.ImmutableTilesetFeaturesDefaults}
72- * @ref:tileset {@link de.ii.xtraplatform.tiles.domain.TilesetFeatures}
73- * @ref:tilesetTable {@link de.ii.xtraplatform.tiles.domain.ImmutableTilesetFeatures}
74- * @ref:rasterTileset {@link de.ii.xtraplatform.tiles.domain.TilesetRaster}
75- * @ref:rasterTilesetTable {@link de.ii.xtraplatform.tiles.domain.ImmutableTilesetRaster}
76- * @ref:seeding {@link de.ii.xtraplatform.tiles.domain.SeedingOptions}
77- * @ref:seedingTable {@link de.ii.xtraplatform.tiles.domain.ImmutableSeedingOptions}
78- * @ref:cache {@link de.ii.xtraplatform.tiles.domain.Cache}
79- * @ref:cacheTable {@link de.ii.xtraplatform.tiles.domain.ImmutableCache}
55+ * de.ii.xtraplatform.tiles3d.domain.ImmutableTileset3dFeaturesDefaults}
56+ * @ref:tileset {@link de.ii.xtraplatform.tiles3d.domain.Tileset3dFeatures}
57+ * @ref:tilesetTable {@link de.ii.xtraplatform.tiles3d.domain.ImmutableTileset3dFeatures}
58+ * @ref:seeding {@link de.ii.xtraplatform.tiles3d.domain.SeedingOptions3d}
59+ * @ref:seedingTable {@link de.ii.xtraplatform.tiles3d.domain.ImmutableSeedingOptions3d}
8060 * @examplesAll <code>
8161 * ```yaml
82- * id: vineyards-tiles
83- * providerType: TILE
62+ * id: cologne_lod2-3dtiles
63+ * providerType: 3DTILE
8464 * providerSubType: FEATURES
85- * caches:
86- * - type: IMMUTABLE
87- * storage: MBTILES
88- * levels:
89- * WebMercatorQuad:
90- * min: 5
91- * max: 12
92- * - type: DYNAMIC
93- * storage: MBTILES
94- * seeded: false
95- * levels:
96- * WebMercatorQuad:
97- * min: 13
98- * max: 18
65+ * seeding:
66+ * runOnStartup: true
67+ * purge: true
68+ * jobSize: S
9969 * tilesetDefaults:
100- * levels:
101- * WebMercatorQuad:
102- * min: 5
103- * max: 18
70+ * featureProvider: cologne_lod2
71+ * clampToEllipsoid: true
10472 * tilesets:
105- * __all__:
106- * id: __all__
107- * combine: ['*']
108- * vineyards:
109- * id: vineyards
73+ * building:
74+ * id: building
75+ * featureType: building
76+ * geometricErrorRoot: 4096.0
77+ * subtreeLevels: 3
78+ * contentLevels:
79+ * min: 2
80+ * max: 2
11081 * ```
11182 * </code>
11283 */
11384@ DocFile (
114- path = "providers/tile " ,
85+ path = "providers/tile3d " ,
11586 name = "10-features.md" ,
11687 tables = {
11788 @ DocTable (
135106 @ DocStep (type = Step .JSON_PROPERTIES )
136107 },
137108 columnSet = ColumnSet .JSON_PROPERTIES ),
138- @ DocTable (
139- name = "rasterTileset" ,
140- rows = {
141- @ DocStep (type = Step .TAG_REFS , params = "{@ref:rasterTilesetTable}" ),
142- @ DocStep (type = Step .JSON_PROPERTIES )
143- },
144- columnSet = ColumnSet .JSON_PROPERTIES ),
145109 @ DocTable (
146110 name = "seeding" ,
147111 rows = {
148112 @ DocStep (type = Step .TAG_REFS , params = "{@ref:seedingTable}" ),
149113 @ DocStep (type = Step .JSON_PROPERTIES )
150114 },
151115 columnSet = ColumnSet .JSON_PROPERTIES ),
152- @ DocTable (
153- name = "cache" ,
154- rows = {
155- @ DocStep (type = Step .TAG_REFS , params = "{@ref:cacheTable}" ),
156- @ DocStep (type = Step .JSON_PROPERTIES )
157- },
158- columnSet = ColumnSet .JSON_PROPERTIES ),
159116 },
160117 vars = {
161118 @ DocVar (
170127 @ DocStep (type = Step .TAG_REFS , params = "{@ref:tileset}" ),
171128 @ DocStep (type = Step .TAG , params = "{@bodyBlock}" )
172129 }),
173- @ DocVar (
174- name = "rasterTileset" ,
175- value = {
176- @ DocStep (type = Step .TAG_REFS , params = "{@ref:rasterTileset}" ),
177- @ DocStep (type = Step .TAG , params = "{@bodyBlock}" )
178- }),
179130 @ DocVar (
180131 name = "seeding" ,
181132 value = {
182133 @ DocStep (type = Step .TAG_REFS , params = "{@ref:seeding}" ),
183134 @ DocStep (type = Step .TAG , params = "{@bodyBlock}" )
184135 }),
185- @ DocVar (
186- name = "cache" ,
187- value = {
188- @ DocStep (type = Step .TAG_REFS , params = "{@ref:cache}" ),
189- @ DocStep (type = Step .TAG , params = "{@bodyBlock}" )
190- }),
191136 @ DocVar (
192137 name = "examples" ,
193- value = {
194- // @DocStep(type = Step.TAG_REFS, params = "{@ref:cfg}"),
195- @ DocStep (type = Step .TAG , params = "{@examples}" )
196- }),
138+ value = {@ DocStep (type = Step .TAG , params = "{@examples}" )}),
197139 })
198140@ Value .Immutable
199141@ JsonDeserialize (builder = ImmutableTile3dProviderFeaturesData .Builder .class )
200- public interface Tile3dProviderFeaturesData extends Tile3dProviderData , WithCaches , AutoEntity {
142+ public interface Tile3dProviderFeaturesData extends Tile3dProviderData {
201143
202144 String PROVIDER_SUBTYPE = "FEATURES" ;
203145 String ENTITY_SUBTYPE = String .format ("%s/%s" , PROVIDER_TYPE , PROVIDER_SUBTYPE ).toLowerCase ();
@@ -209,44 +151,20 @@ public interface Tile3dProviderFeaturesData extends Tile3dProviderData, WithCach
209151 @ Override
210152 String getProviderSubType ();
211153
212- @ Override
213- Optional <Boolean > getAuto ();
214-
215- /**
216- * @langEn Defaults for all `tilesets`, see [Tileset Defaults](#tileset-defaults).
217- * @langDe Defaults für alle `tilesets`, siehe [Tileset Defaults](#tileset-defaults).
218- * @since v3.4
219- */
220154 @ Nullable
221155 @ Override
222156 Tileset3dFeaturesDefaults getTilesetDefaults ();
223157
224- /**
225- * @langEn Definition of tilesets, see [Tileset](#tileset).
226- * @langDe Definition von Tilesets, see [Tileset](#tileset).
227- * @since v3.4
228- * @default {}
229- */
230158 @ Override
231159 BuildableMap <Tileset3dFeatures , ImmutableTileset3dFeatures .Builder > getTilesets ();
232160
233- /**
234- * @langEn List of cache definitions, see [Cache](#cache).
235- * @langDe Liste von Cache-Definitionen, siehe [Cache](#cache).
236- * @since v3.4
237- * @default []
238- */
239- @ Override
240- List <Cache > getCaches ();
241-
242161 /**
243162 * @langEn Controls how and when tiles are precomputed, see [Seeding](#seeding).
244163 * @langDe Steuert wie und wann Kacheln vorberechnet werden, siehe [Seeding](#seeding).
245- * @since v3.4
164+ * @since v4.6
246165 * @default {}
247166 */
248- @ Override
249- Optional <SeedingOptions > getSeeding ();
167+ Optional <SeedingOptions3d > getSeeding ();
250168
251169 abstract class Builder
252170 extends Tile3dProviderData .Builder <ImmutableTile3dProviderFeaturesData .Builder >
0 commit comments