@giro3d/piero 25.10.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +9 -0
- package/README.md +134 -0
- package/dist/Components.cjs.js +2605 -0
- package/dist/Components.es.js +43490 -0
- package/dist/assets/ParserWorker-Bd30oD5I.js +5 -0
- package/dist/assets/style.css +9 -0
- package/dist/basedecoder.cjs.js +1 -0
- package/dist/basedecoder.es.js +88 -0
- package/dist/decoder.cjs.js +1 -0
- package/dist/decoder.es.js +9 -0
- package/dist/deflate.cjs.js +1 -0
- package/dist/deflate.es.js +10 -0
- package/dist/index.cjs.js +93 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.es.js +65240 -0
- package/dist/jpeg.cjs.js +1 -0
- package/dist/jpeg.es.js +514 -0
- package/dist/lerc.cjs.js +1 -0
- package/dist/lerc.es.js +1027 -0
- package/dist/lzw.cjs.js +1 -0
- package/dist/lzw.es.js +84 -0
- package/dist/modules.cjs.js +2973 -0
- package/dist/modules.d.ts +2 -0
- package/dist/modules.es.js +87571 -0
- package/dist/packbits.cjs.js +1 -0
- package/dist/packbits.es.js +24 -0
- package/dist/pako.esm.cjs.js +1 -0
- package/dist/pako.esm.es.js +1053 -0
- package/dist/piero_logo.png +0 -0
- package/dist/piero_logo_compact.png +0 -0
- package/dist/raw.cjs.js +1 -0
- package/dist/raw.es.js +9 -0
- package/dist/sponsors/bpi_france.png +0 -0
- package/dist/sponsors/france_2030.png +0 -0
- package/dist/sponsors/france_relance.png +0 -0
- package/dist/sponsors/oslandia.png +0 -0
- package/dist/sponsors/ue_next_generation.png +0 -0
- package/dist/src/App.vue.d.ts +6 -0
- package/dist/src/api/BookmarkApi.d.ts +6 -0
- package/dist/src/api/DatasetApi.d.ts +61 -0
- package/dist/src/api/ViewApi.d.ts +4 -0
- package/dist/src/api/index.d.ts +4 -0
- package/dist/src/components/AlertToast.vue.d.ts +4 -0
- package/dist/src/components/AttributeGroup.vue.d.ts +7 -0
- package/dist/src/components/AttributeItem.vue.d.ts +6 -0
- package/dist/src/components/AttributePanel.vue.d.ts +14 -0
- package/dist/src/components/ColorFragment.vue.d.ts +6 -0
- package/dist/src/components/Configuration.d.ts +14 -0
- package/dist/src/components/CoordinateFragment.vue.d.ts +10 -0
- package/dist/src/components/DropdownView.vue.d.ts +13 -0
- package/dist/src/components/LinkFragment.vue.d.ts +10 -0
- package/dist/src/components/LoadingScreen.vue.d.ts +2 -0
- package/dist/src/components/MainView.vue.d.ts +5 -0
- package/dist/src/components/MinimapView.vue.d.ts +4 -0
- package/dist/src/components/ModalOverlay.vue.d.ts +17 -0
- package/dist/src/components/NavigationButtons.vue.d.ts +2 -0
- package/dist/src/components/OpacitySlider.vue.d.ts +10 -0
- package/dist/src/components/PanelContainer.vue.d.ts +10 -0
- package/dist/src/components/ProgressBar.vue.d.ts +14 -0
- package/dist/src/components/SearchOverlay.vue.d.ts +8 -0
- package/dist/src/components/SpinnerControl.vue.d.ts +2 -0
- package/dist/src/components/StatusBar.vue.d.ts +10 -0
- package/dist/src/components/SwitchToggle.vue.d.ts +17 -0
- package/dist/src/components/VisibilityControl.vue.d.ts +9 -0
- package/dist/src/components/atoms/ButtonArea.vue.d.ts +9 -0
- package/dist/src/components/atoms/ButtonWithIcon.vue.d.ts +11 -0
- package/dist/src/components/atoms/CompactList.vue.d.ts +9 -0
- package/dist/src/components/atoms/Icon.vue.d.ts +6 -0
- package/dist/src/components/atoms/IconList.vue.d.ts +9 -0
- package/dist/src/components/atoms/IconListButton.vue.d.ts +10 -0
- package/dist/src/components/atoms/ImportButton.vue.d.ts +13 -0
- package/dist/src/components/atoms/ListLabel.vue.d.ts +5 -0
- package/dist/src/components/atoms/ListLabelButton.vue.d.ts +11 -0
- package/dist/src/components/atoms/SectionCollapsible.vue.d.ts +20 -0
- package/dist/src/components/charts/BarChart.vue.d.ts +4 -0
- package/dist/src/components/charts/DoughnutChart.vue.d.ts +4 -0
- package/dist/src/components/panels/AboutPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/AnalysisPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/AnnotationItem.vue.d.ts +21 -0
- package/dist/src/components/panels/AnnotationPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/BasemapItem.vue.d.ts +17 -0
- package/dist/src/components/panels/BookmarkItem.vue.d.ts +16 -0
- package/dist/src/components/panels/BookmarkPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/DatagroupItem.vue.d.ts +18 -0
- package/dist/src/components/panels/DatasetItem.vue.d.ts +18 -0
- package/dist/src/components/panels/DatasetOrGroupItem.vue.d.ts +18 -0
- package/dist/src/components/panels/DatasetPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/EmptyIndicator.vue.d.ts +6 -0
- package/dist/src/components/panels/LoadingIndicator.vue.d.ts +6 -0
- package/dist/src/components/panels/MeasurementItem.vue.d.ts +17 -0
- package/dist/src/components/panels/MeasurementPanel.vue.d.ts +2 -0
- package/dist/src/components/panels/OverlayItem.vue.d.ts +19 -0
- package/dist/src/components/panels/ShareBookmarkModal.vue.d.ts +5 -0
- package/dist/src/components/panels/analysis/ClippingBox.vue.d.ts +2 -0
- package/dist/src/components/panels/analysis/CrossSection.vue.d.ts +2 -0
- package/dist/src/components/panels/analysis/FloodingPlane.vue.d.ts +2 -0
- package/dist/src/components/panels/analysis/Statistics.vue.d.ts +2 -0
- package/dist/src/components/panels/analysis/ToolWrapper.vue.d.ts +20 -0
- package/dist/src/components/toolbar/ToolBar.vue.d.ts +9 -0
- package/dist/src/components/toolbar/ToolbarButton.vue.d.ts +12 -0
- package/dist/src/config-loader.d.ts +7 -0
- package/dist/src/constants.d.ts +7 -0
- package/dist/src/context.d.ts +35 -0
- package/dist/src/createPieroApp.d.ts +31 -0
- package/dist/src/events.d.ts +30 -0
- package/dist/src/giro3d/CameraControlsInspector.d.ts +17 -0
- package/dist/src/giro3d/EntityBuilder.d.ts +21 -0
- package/dist/src/giro3d/Graticule.d.ts +20 -0
- package/dist/src/giro3d/Grid.d.ts +11 -0
- package/dist/src/giro3d/LayerBuilder.d.ts +46 -0
- package/dist/src/giro3d/Measure3D.d.ts +19 -0
- package/dist/src/giro3d/Plane.d.ts +11 -0
- package/dist/src/giro3d/Skybox.d.ts +6 -0
- package/dist/src/giro3d/entities/FeatureCollectionEntity.d.ts +41 -0
- package/dist/src/giro3d/entities/PointCloudEntity.d.ts +45 -0
- package/dist/src/giro3d/entities/TiledPointCloudEntity.d.ts +13 -0
- package/dist/src/giro3d/entities/Tiles3dEntity.d.ts +11 -0
- package/dist/src/giro3d/entities/VectorLabelsEntity.d.ts +48 -0
- package/dist/src/giro3d/entities/VectorMeshEntity.d.ts +97 -0
- package/dist/src/giro3d/entities/VectorShapeEntity.d.ts +8 -0
- package/dist/src/giro3d/entities/flatPointCloud.d.ts +2 -0
- package/dist/src/giro3d/entities/tiledIfc.d.ts +2 -0
- package/dist/src/giro3d/entities/vector.d.ts +2 -0
- package/dist/src/giro3d/sources/GeopackageSource.d.ts +20 -0
- package/dist/src/giro3d/sources/ShapefileSource.d.ts +20 -0
- package/dist/src/giro3d/sources/mixins.d.ts +60 -0
- package/dist/src/index.d.ts +17 -0
- package/dist/src/loaders/csv.d.ts +3 -0
- package/dist/src/loaders/las.d.ts +3 -0
- package/dist/src/loaders/loader.d.ts +29 -0
- package/dist/src/loaders/loader.test.d.ts +1 -0
- package/dist/src/loaders/userData.d.ts +8 -0
- package/dist/src/loaders/vector.d.ts +4 -0
- package/dist/src/module.d.ts +11 -0
- package/dist/src/modules/CityJSONLoader.d.ts +10 -0
- package/dist/src/modules/IFCLoader.d.ts +9 -0
- package/dist/src/modules/PLYLoader.d.ts +9 -0
- package/dist/src/modules/PotreeLoader.d.ts +9 -0
- package/dist/src/modules/Tour.d.ts +17 -0
- package/dist/src/modules/cityjson/CityJSONEntity.d.ts +79 -0
- package/dist/src/modules/cityjson/CityJSONEntityInspector.d.ts +8 -0
- package/dist/src/modules/ifc/IfcEntity.d.ts +87 -0
- package/dist/src/modules/ifc/IfcEntityInspector.d.ts +7 -0
- package/dist/src/modules/ifc/IfcPropertyView.vue.d.ts +6 -0
- package/dist/src/modules/ifc/IfcSubtree.vue.d.ts +7 -0
- package/dist/src/modules/index.d.ts +6 -0
- package/dist/src/modules/ply/PlyEntity.d.ts +33 -0
- package/dist/src/providers/Alticoding.d.ts +32 -0
- package/dist/src/providers/BanProvider.d.ts +11 -0
- package/dist/src/providers/Geocoding.d.ts +7 -0
- package/dist/src/providers/IgnProvider.d.ts +11 -0
- package/dist/src/services/AnalysisManager.d.ts +10 -0
- package/dist/src/services/AnnotationManager.d.ts +48 -0
- package/dist/src/services/CameraController.d.ts +99 -0
- package/dist/src/services/DatasetManager.d.ts +27 -0
- package/dist/src/services/Giro3DManager.d.ts +42 -0
- package/dist/src/services/Highlighter.d.ts +11 -0
- package/dist/src/services/LayerManager.d.ts +37 -0
- package/dist/src/services/MeasureTool.d.ts +13 -0
- package/dist/src/services/MeasurementManager.d.ts +31 -0
- package/dist/src/services/MinimapController.d.ts +19 -0
- package/dist/src/services/Picker.d.ts +53 -0
- package/dist/src/services/analysis/ClippingBoxManager.d.ts +41 -0
- package/dist/src/services/analysis/CrossSectionManager.d.ts +9 -0
- package/dist/src/services/analysis/FloodingPlaneManager.d.ts +11 -0
- package/dist/src/stores/analysis.d.ts +1571 -0
- package/dist/src/stores/annotations.d.ts +60 -0
- package/dist/src/stores/bookmarks.d.ts +21 -0
- package/dist/src/stores/camera.d.ts +287 -0
- package/dist/src/stores/datasets.d.ts +49 -0
- package/dist/src/stores/giro3d.d.ts +45 -0
- package/dist/src/stores/layers.d.ts +40 -0
- package/dist/src/stores/measurement.d.ts +45 -0
- package/dist/src/stores/modules.d.ts +11 -0
- package/dist/src/stores/notifications.d.ts +8 -0
- package/dist/src/stores/statistics.d.ts +8 -0
- package/dist/src/types/Annotation.d.ts +35 -0
- package/dist/src/types/AnnotationMode.d.ts +7 -0
- package/dist/src/types/BaseLayer.d.ts +30 -0
- package/dist/src/types/Bookmark.d.ts +19 -0
- package/dist/src/types/CameraPosition.d.ts +7 -0
- package/dist/src/types/Configuration.d.ts +94 -0
- package/dist/src/types/Dataset.d.ts +78 -0
- package/dist/src/types/Feature.d.ts +13 -0
- package/dist/src/types/FloodingPlane.d.ts +14 -0
- package/dist/src/types/IFCTypes.d.ts +5 -0
- package/dist/src/types/LayerObject.d.ts +20 -0
- package/dist/src/types/Measure.d.ts +20 -0
- package/dist/src/types/MeasurementMode.d.ts +7 -0
- package/dist/src/types/Named.d.ts +5 -0
- package/dist/src/types/NavigationMode.d.ts +2 -0
- package/dist/src/types/Notification.d.ts +8 -0
- package/dist/src/types/OLGeometry.d.ts +1 -0
- package/dist/src/types/Overlay.d.ts +24 -0
- package/dist/src/types/VectorStyle.d.ts +31 -0
- package/dist/src/types/Viewbox.d.ts +7 -0
- package/dist/src/types/configuration/analysis.d.ts +26 -0
- package/dist/src/types/configuration/bookmark.d.ts +16 -0
- package/dist/src/types/configuration/camera.d.ts +19 -0
- package/dist/src/types/configuration/color.d.ts +18 -0
- package/dist/src/types/configuration/datasets/cityjson.d.ts +9 -0
- package/dist/src/types/configuration/datasets/core.d.ts +49 -0
- package/dist/src/types/configuration/datasets/featureCollection.d.ts +6 -0
- package/dist/src/types/configuration/datasets/ifc.d.ts +10 -0
- package/dist/src/types/configuration/datasets/index.d.ts +27 -0
- package/dist/src/types/configuration/datasets/layer.d.ts +43 -0
- package/dist/src/types/configuration/datasets/ply.d.ts +10 -0
- package/dist/src/types/configuration/datasets/pointCloud.d.ts +12 -0
- package/dist/src/types/configuration/datasets/potreePointCloud.d.ts +10 -0
- package/dist/src/types/configuration/datasets/tiledIfc.d.ts +9 -0
- package/dist/src/types/configuration/datasets/tiledPointCloud.d.ts +9 -0
- package/dist/src/types/configuration/datasets/vector.d.ts +34 -0
- package/dist/src/types/configuration/features.d.ts +2 -0
- package/dist/src/types/configuration/geographic.d.ts +51 -0
- package/dist/src/types/configuration/layers/core.d.ts +50 -0
- package/dist/src/types/configuration/layers/index.d.ts +49 -0
- package/dist/src/types/configuration/sources/bingMaps.d.ts +5 -0
- package/dist/src/types/configuration/sources/core/baseConfig.d.ts +70 -0
- package/dist/src/types/configuration/sources/core/tiled.d.ts +19 -0
- package/dist/src/types/configuration/sources/core/vector.d.ts +13 -0
- package/dist/src/types/configuration/sources/core/vectorTile.d.ts +8 -0
- package/dist/src/types/configuration/sources/customVector.d.ts +7 -0
- package/dist/src/types/configuration/sources/customVectorTile.d.ts +8 -0
- package/dist/src/types/configuration/sources/geojson.d.ts +5 -0
- package/dist/src/types/configuration/sources/geotiff.d.ts +8 -0
- package/dist/src/types/configuration/sources/gpx.d.ts +5 -0
- package/dist/src/types/configuration/sources/kml.d.ts +5 -0
- package/dist/src/types/configuration/sources/mvt.d.ts +10 -0
- package/dist/src/types/configuration/sources/osm.d.ts +5 -0
- package/dist/src/types/configuration/sources/stadiaMaps.d.ts +5 -0
- package/dist/src/types/configuration/sources/wms.d.ts +15 -0
- package/dist/src/types/configuration/sources/wmts.d.ts +15 -0
- package/dist/src/types/configuration/sources/xyz.d.ts +9 -0
- package/dist/src/types/utilities.d.ts +5 -0
- package/dist/src/utils/Components.d.ts +8 -0
- package/dist/src/utils/Configuration.d.ts +15 -0
- package/dist/src/utils/Download.d.ts +11 -0
- package/dist/src/utils/Fetcher.d.ts +77 -0
- package/dist/src/utils/Measure.d.ts +7 -0
- package/dist/src/utils/OLFeatures.d.ts +57 -0
- package/dist/src/utils/Projections.d.ts +10 -0
- package/dist/src/utils/Types.d.ts +11 -0
- package/dist/webimage.cjs.js +1 -0
- package/dist/webimage.es.js +19 -0
- package/package.json +100 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { ExtractOptional } from '../../types/utilities';
|
|
2
|
+
import { FetchContext } from '../../utils/Fetcher';
|
|
3
|
+
import { SimpleFeature } from '../../utils/OLFeatures';
|
|
4
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
5
|
+
import { default as Entity3D } from '@giro3d/giro3d/entities/Entity3D';
|
|
6
|
+
import { PolygonOptions } from '@giro3d/giro3d/renderer/geometries/GeometryConverter';
|
|
7
|
+
import { default as FeatureFormat } from 'ol/format/Feature';
|
|
8
|
+
import { Group } from '../../../../../node_modules/three';
|
|
9
|
+
import { DataProjectionMixin, ElevationMixin, FeatureProjectionMixin, UrlOrDataMixin } from '../sources/mixins';
|
|
10
|
+
/** Source for {@link VectorMeshEntity} */
|
|
11
|
+
export interface VectorMeshSourceOptions extends UrlOrDataMixin, DataProjectionMixin, Required<FeatureProjectionMixin>, ElevationMixin {
|
|
12
|
+
}
|
|
13
|
+
export declare const defaultParameters: Required<ExtractOptional<VectorMeshSourceOptions>>;
|
|
14
|
+
/**
|
|
15
|
+
* Converts a GeoJSON object into a list of GeoJSON features
|
|
16
|
+
* @param json - GeoJSON object
|
|
17
|
+
* @returns Array of GeoJSON features
|
|
18
|
+
*/
|
|
19
|
+
export declare function toGeoJSONFeatures(json: GeoJSON.GeoJSON): GeoJSON.Feature[];
|
|
20
|
+
/**
|
|
21
|
+
* Converts GeoJSON features into OpenLayers features.
|
|
22
|
+
* Will handle reprojection if needed.
|
|
23
|
+
* Will fetch elevation if `parameters.fetchElevation` is `true`.
|
|
24
|
+
*
|
|
25
|
+
* @param features - Array of GeoJSON features
|
|
26
|
+
* @param parameters - Loader parameters
|
|
27
|
+
* @returns Array of simple features, where unsupported features are discarded
|
|
28
|
+
*/
|
|
29
|
+
export declare function geojsonToOlFeatures(instance: Instance, features: GeoJSON.Feature[], parameters: VectorMeshSourceOptions): Promise<SimpleFeature[]>;
|
|
30
|
+
/**
|
|
31
|
+
* Converts loaded data into OpenLayers {@link SimpleFeature}s.
|
|
32
|
+
* Will handle reprojection if needed.
|
|
33
|
+
* Will fetch elevation if `parameters.fetchElevation` is `true`.
|
|
34
|
+
*
|
|
35
|
+
* @param data - Loaded data
|
|
36
|
+
* @param format - OpenLayers format used for decoding `data`
|
|
37
|
+
* @param parameters - Loader parameters
|
|
38
|
+
* @returns Array of simple features, where unsupported features are discarded
|
|
39
|
+
*/
|
|
40
|
+
export declare function toOlFeatures(instance: Instance, data: string, format: FeatureFormat, parameters: VectorMeshSourceOptions): Promise<SimpleFeature[]>;
|
|
41
|
+
/**
|
|
42
|
+
* Converts {@link SimpleFeature}s into a Three.js `Group`.
|
|
43
|
+
* Assumes features are already in the correct CRS.
|
|
44
|
+
* If Z-coordinates are missing in the features (`null` or equal to `noDataValue`),
|
|
45
|
+
* they are filled at `options?.elevation` or at `defaultElevation`.
|
|
46
|
+
*
|
|
47
|
+
* @param features - Features to convert
|
|
48
|
+
* @param options - GeometryConverter options
|
|
49
|
+
* @param defaultElevation - Default elevation if not provided via options
|
|
50
|
+
* @param noDataValue - Value considered as no data for filling Z.
|
|
51
|
+
* @returns Group containing all meshes for all features
|
|
52
|
+
*/
|
|
53
|
+
export declare function olFeaturestoGroup(features: SimpleFeature[], options?: PolygonOptions, defaultElevation?: number, noDataValue?: number): Promise<Group>;
|
|
54
|
+
/** Interface to implement for a new source for {@link VectorMeshEntity} */
|
|
55
|
+
export interface VectorMeshSource {
|
|
56
|
+
/** Elevation of the features */
|
|
57
|
+
elevation?: number;
|
|
58
|
+
/** No data value for elevation */
|
|
59
|
+
noDataValue?: number;
|
|
60
|
+
/** Loads the features. Will be called only once */
|
|
61
|
+
load(instance: Instance): Promise<SimpleFeature[]>;
|
|
62
|
+
/** Context of the data */
|
|
63
|
+
context(): FetchContext;
|
|
64
|
+
}
|
|
65
|
+
/** OpenLayers-based source */
|
|
66
|
+
export declare class OlMeshSource implements VectorMeshSource {
|
|
67
|
+
elevation?: number;
|
|
68
|
+
noDataValue?: number;
|
|
69
|
+
/** OL Feature format */
|
|
70
|
+
readonly format: FeatureFormat;
|
|
71
|
+
readonly options: VectorMeshSourceOptions;
|
|
72
|
+
constructor(format: FeatureFormat, options: VectorMeshSourceOptions);
|
|
73
|
+
load(instance: Instance): Promise<SimpleFeature[]>;
|
|
74
|
+
context(): FetchContext;
|
|
75
|
+
}
|
|
76
|
+
/** GPX source */
|
|
77
|
+
export declare class GpxMeshSource extends OlMeshSource {
|
|
78
|
+
constructor(options: VectorMeshSourceOptions);
|
|
79
|
+
}
|
|
80
|
+
/** KML source */
|
|
81
|
+
export declare class KmlMeshSource extends OlMeshSource {
|
|
82
|
+
constructor(options: VectorMeshSourceOptions);
|
|
83
|
+
}
|
|
84
|
+
/** GeoJSON source */
|
|
85
|
+
export declare class GeoJsonMeshSource implements VectorMeshSource {
|
|
86
|
+
elevation?: number;
|
|
87
|
+
readonly options: VectorMeshSourceOptions;
|
|
88
|
+
constructor(options: VectorMeshSourceOptions);
|
|
89
|
+
load(instance: Instance): Promise<SimpleFeature[]>;
|
|
90
|
+
context(): FetchContext;
|
|
91
|
+
}
|
|
92
|
+
/** Entity for displaying vector data as meshes */
|
|
93
|
+
export default class VectorMeshEntity extends Entity3D {
|
|
94
|
+
readonly sources: VectorMeshSource[];
|
|
95
|
+
constructor(sources: VectorMeshSource | VectorMeshSource[]);
|
|
96
|
+
protected preprocess(): Promise<void>;
|
|
97
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as Shape } from '@giro3d/giro3d/entities/Shape';
|
|
2
|
+
import { VectorMeshSource } from './VectorMeshEntity';
|
|
3
|
+
/** Entity for displaying vector data as meshes */
|
|
4
|
+
export default class VectorShapeEntity extends Shape {
|
|
5
|
+
readonly source: VectorMeshSource;
|
|
6
|
+
constructor(source: VectorMeshSource);
|
|
7
|
+
protected preprocess(): Promise<void>;
|
|
8
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FetchContext } from '../../utils/Fetcher';
|
|
2
|
+
import { SimpleFeature } from '../../utils/OLFeatures';
|
|
3
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
4
|
+
import { VectorMeshSource } from '../entities/VectorMeshEntity';
|
|
5
|
+
import { DataProjectionMixin, ElevationMixin, FeatureProjectionMixin, UrlOrDataMixin } from './mixins';
|
|
6
|
+
/**
|
|
7
|
+
* Options for loading Geopackage files into a {@link VectorMeshEntity}
|
|
8
|
+
*/
|
|
9
|
+
export interface GeopackageSourceParameters extends UrlOrDataMixin, DataProjectionMixin, Required<FeatureProjectionMixin>, ElevationMixin {
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Source for loading a Geopackage file into a {@link VectorMeshEntity}
|
|
13
|
+
*/
|
|
14
|
+
export default class GeopackageSource implements VectorMeshSource {
|
|
15
|
+
elevation?: number;
|
|
16
|
+
readonly options: GeopackageSourceParameters;
|
|
17
|
+
constructor(options: GeopackageSourceParameters);
|
|
18
|
+
load(instance: Instance): Promise<SimpleFeature[]>;
|
|
19
|
+
context(): FetchContext;
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { FetchContext } from '../../utils/Fetcher';
|
|
2
|
+
import { SimpleFeature } from '../../utils/OLFeatures';
|
|
3
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
4
|
+
import { VectorMeshSource } from '../entities/VectorMeshEntity';
|
|
5
|
+
import { DataProjectionMixin, ElevationMixin, FeatureProjectionMixin, UrlOrDataMixin } from './mixins';
|
|
6
|
+
/**
|
|
7
|
+
* Options for loading Shapefile files into a {@link VectorMeshEntity}
|
|
8
|
+
*/
|
|
9
|
+
export interface ShapefileSourceParameters extends UrlOrDataMixin, DataProjectionMixin, Required<FeatureProjectionMixin>, ElevationMixin {
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Source for loading a Shapefile file into a {@link VectorMeshEntity}
|
|
13
|
+
*/
|
|
14
|
+
export default class ShapefileSource implements VectorMeshSource {
|
|
15
|
+
elevation?: number;
|
|
16
|
+
readonly options: ShapefileSourceParameters;
|
|
17
|
+
constructor(options: ShapefileSourceParameters);
|
|
18
|
+
load(instance: Instance): Promise<SimpleFeature[]>;
|
|
19
|
+
context(): FetchContext;
|
|
20
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { UrlOrData } from '../../utils/Fetcher';
|
|
2
|
+
import { default as Coordinates } from '@giro3d/giro3d/core/geographic/Coordinates';
|
|
3
|
+
/** Mixin configuration for sources that require a URL */
|
|
4
|
+
export interface UrlMixin {
|
|
5
|
+
/** URL of the source */
|
|
6
|
+
url: string;
|
|
7
|
+
}
|
|
8
|
+
/** Mixin configuration for sources that require a URL or Blob */
|
|
9
|
+
export interface UrlOrDataMixin {
|
|
10
|
+
/** URL of the source */
|
|
11
|
+
url: UrlOrData;
|
|
12
|
+
}
|
|
13
|
+
/** Mixin configuration for sources that may have a data projection */
|
|
14
|
+
export interface DataProjectionMixin {
|
|
15
|
+
/** CRS of the source */
|
|
16
|
+
dataProjection?: string;
|
|
17
|
+
}
|
|
18
|
+
/** Mixin configuration for sources that may have a feature projection */
|
|
19
|
+
export interface FeatureProjectionMixin {
|
|
20
|
+
/** CRS of the target, should be the instance's CRS */
|
|
21
|
+
featureProjection?: string;
|
|
22
|
+
}
|
|
23
|
+
/** Mixin configuration for sources that may set their geolocation */
|
|
24
|
+
export interface CoordinatesMixin {
|
|
25
|
+
/** Location, should be in the instance's CRS */
|
|
26
|
+
at?: Coordinates;
|
|
27
|
+
}
|
|
28
|
+
/** Mixin configuration for sources that may require elevation configuration */
|
|
29
|
+
export interface ElevationMixin {
|
|
30
|
+
/**
|
|
31
|
+
* Elevation of data
|
|
32
|
+
*
|
|
33
|
+
* @defaultValue 0
|
|
34
|
+
*/
|
|
35
|
+
elevation?: number;
|
|
36
|
+
/**
|
|
37
|
+
* Fetch elevation from provider
|
|
38
|
+
*
|
|
39
|
+
* @defaultValue false
|
|
40
|
+
*/
|
|
41
|
+
fetchElevation?: boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Fetch elevation from map instead of API
|
|
44
|
+
*
|
|
45
|
+
* @defaultValue false
|
|
46
|
+
*/
|
|
47
|
+
fetchElevationFast?: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* When fetching elevation, add this offset
|
|
50
|
+
*
|
|
51
|
+
* @defaultValue 0.1
|
|
52
|
+
*/
|
|
53
|
+
fetchElevationOffset?: number;
|
|
54
|
+
/**
|
|
55
|
+
* When fetching or setting elevation, consider this value as no data
|
|
56
|
+
*
|
|
57
|
+
* @defaultValue 0
|
|
58
|
+
*/
|
|
59
|
+
noDataValue?: number;
|
|
60
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PieroContext } from './context';
|
|
2
|
+
import { default as createPieroApp } from './createPieroApp';
|
|
3
|
+
import { BookmarkEvents, PieroEmptyEvent, PieroEvents, PieroGlobalEvents } from './events';
|
|
4
|
+
import { EntityBuilder } from './giro3d/EntityBuilder';
|
|
5
|
+
import { LoadDatasetFromFile } from './loaders/loader';
|
|
6
|
+
import { fillObject3DUserData, UserData } from './loaders/userData';
|
|
7
|
+
import { Module } from './module';
|
|
8
|
+
import { AttributeExtractorFn } from './services/Picker';
|
|
9
|
+
import { default as Bookmark } from './types/Bookmark';
|
|
10
|
+
import { Configuration } from './types/Configuration';
|
|
11
|
+
import { Attribute, AttributesGroups } from './types/Feature';
|
|
12
|
+
import { default as Fetcher } from './utils/Fetcher';
|
|
13
|
+
import { default as Projections } from './utils/Projections';
|
|
14
|
+
import { default as BookmarkApi } from './api/BookmarkApi';
|
|
15
|
+
import { default as DatasetApi } from './api/DatasetApi';
|
|
16
|
+
import { default as ViewApi } from './api/ViewApi';
|
|
17
|
+
export { Attribute, AttributeExtractorFn, AttributesGroups, Bookmark, BookmarkApi, BookmarkEvents, Configuration, DatasetApi, EntityBuilder, Fetcher, LoadDatasetFromFile, Module, PieroContext, PieroEmptyEvent, PieroEvents, PieroGlobalEvents, Projections, UserData, ViewApi, createPieroApp, fillObject3DUserData, };
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Configuration } from '../types/Configuration';
|
|
2
|
+
import { Dataset } from '../types/Dataset';
|
|
3
|
+
import { DatasetConfigImportable } from '../types/configuration/datasets';
|
|
4
|
+
export type LoaderContext = {
|
|
5
|
+
file: File;
|
|
6
|
+
extension: string;
|
|
7
|
+
filename: string;
|
|
8
|
+
configuration: Configuration;
|
|
9
|
+
};
|
|
10
|
+
export type LoadDatasetFromFile<O extends DatasetConfigImportable = DatasetConfigImportable> = (context: LoaderContext) => O;
|
|
11
|
+
/**
|
|
12
|
+
* Registers a custom loader for a specific file extension.
|
|
13
|
+
* If a loader for the same extension exists, it is replaced by the new one.
|
|
14
|
+
* @param fileExtension - The file extension, without the dot.
|
|
15
|
+
* @param loader - The loader to use.
|
|
16
|
+
*/
|
|
17
|
+
export declare function registerLoader(fileExtension: string, loader: LoadDatasetFromFile): void;
|
|
18
|
+
/**
|
|
19
|
+
* Loads a file and creates its Dataset.
|
|
20
|
+
*
|
|
21
|
+
* @param file - File to load
|
|
22
|
+
* @returns Created objects
|
|
23
|
+
* @throws `Error` if file cannot be imported (unsupported, etc.)
|
|
24
|
+
*/
|
|
25
|
+
declare function importFile(file: File, config: Readonly<Configuration>): Promise<Dataset>;
|
|
26
|
+
declare const _default: {
|
|
27
|
+
importFile: typeof importFile;
|
|
28
|
+
};
|
|
29
|
+
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as Entity3D } from '@giro3d/giro3d/entities/Entity3D';
|
|
2
|
+
import { Object3D } from '../../../../node_modules/three';
|
|
3
|
+
/** User data to be set on the loaded entities */
|
|
4
|
+
export interface UserData {
|
|
5
|
+
/** File that the entity was loaded from */
|
|
6
|
+
filename?: string | null;
|
|
7
|
+
}
|
|
8
|
+
export declare function fillObject3DUserData(root: Object3D | Entity3D, userData: UserData): void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ColorLayerDatasetConfig } from '../types/configuration/datasets/layer';
|
|
2
|
+
import { VectorLabelsDatasetConfig, VectorMeshDatasetConfig, VectorShapeDatasetConfig } from '../types/configuration/datasets/vector';
|
|
3
|
+
import { LoadDatasetFromFile } from './loader';
|
|
4
|
+
export declare const load: LoadDatasetFromFile<VectorMeshDatasetConfig | VectorShapeDatasetConfig | VectorLabelsDatasetConfig | ColorLayerDatasetConfig>;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PieroContext } from '../context';
|
|
2
|
+
import { EntityBuilder } from '../giro3d/EntityBuilder';
|
|
3
|
+
import { LoadDatasetFromFile } from '../loaders/loader';
|
|
4
|
+
import { Module } from '../module';
|
|
5
|
+
export declare const loader: LoadDatasetFromFile;
|
|
6
|
+
export declare const entityBuilder: EntityBuilder;
|
|
7
|
+
export default class CityJSONLoader implements Module {
|
|
8
|
+
readonly name = "CityJSON";
|
|
9
|
+
initialize(context: PieroContext): Promise<void> | void;
|
|
10
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PieroContext } from '../context';
|
|
2
|
+
import { Module } from '../module';
|
|
3
|
+
/**
|
|
4
|
+
* Loads IFC (Industry Foundation Classes) files.
|
|
5
|
+
*/
|
|
6
|
+
export default class IFCLoader implements Module {
|
|
7
|
+
readonly name = "IFC";
|
|
8
|
+
initialize(context: PieroContext): Promise<void>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PieroContext } from '../context';
|
|
2
|
+
import { Module } from '../module';
|
|
3
|
+
/**
|
|
4
|
+
* Loads [Potree](https://potree.github.io/) datasets.
|
|
5
|
+
*/
|
|
6
|
+
export default class PotreeLoader implements Module {
|
|
7
|
+
readonly name = "Potree";
|
|
8
|
+
initialize(context: PieroContext): Promise<void> | void;
|
|
9
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { PieroContext } from '../context';
|
|
2
|
+
import { Module } from '../module';
|
|
3
|
+
/**
|
|
4
|
+
* Provides a guided tour of the application.
|
|
5
|
+
*/
|
|
6
|
+
export default class TourModule implements Module {
|
|
7
|
+
readonly name = "Tour";
|
|
8
|
+
private _camera;
|
|
9
|
+
private _cameraCallback;
|
|
10
|
+
private _tours;
|
|
11
|
+
private _context;
|
|
12
|
+
initialize(context: PieroContext): Promise<void> | void;
|
|
13
|
+
private getTours;
|
|
14
|
+
private start;
|
|
15
|
+
private restart;
|
|
16
|
+
private buildTours;
|
|
17
|
+
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { DataProjectionMixin, FeatureProjectionMixin, UrlOrDataMixin } from '../../giro3d/sources/mixins';
|
|
2
|
+
import { default as PickOptions } from '@giro3d/giro3d/core/picking/PickOptions';
|
|
3
|
+
import { default as PickResult } from '@giro3d/giro3d/core/picking/PickResult';
|
|
4
|
+
import { default as PickableFeatures } from '@giro3d/giro3d/core/picking/PickableFeatures';
|
|
5
|
+
import { default as Entity3D } from '@giro3d/giro3d/entities/Entity3D';
|
|
6
|
+
import { CityObjectsMesh } from 'cityjson-threejs-loader';
|
|
7
|
+
import { Vector2 } from '../../../../../node_modules/three';
|
|
8
|
+
/**
|
|
9
|
+
* Object returned by CityJSON's `resolveIntersectionInfo`, used when picking
|
|
10
|
+
*/
|
|
11
|
+
export interface CityJSONIntersectionInfo {
|
|
12
|
+
vertexId: number;
|
|
13
|
+
objectIndex: number;
|
|
14
|
+
objectId: string;
|
|
15
|
+
geometryIndex: number;
|
|
16
|
+
boundaryIndex: number;
|
|
17
|
+
objectTypeIndex: number;
|
|
18
|
+
surfaceTypeIndex: number;
|
|
19
|
+
lodIndex: number;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Feature returned when picking on CityJSON objects
|
|
23
|
+
*/
|
|
24
|
+
export interface CityJSONFeature {
|
|
25
|
+
/** Intersection info from CityJSON library */
|
|
26
|
+
cityjsonInfo: CityJSONIntersectionInfo;
|
|
27
|
+
/** CityJSON object picked */
|
|
28
|
+
citymodel: any;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Pick result on {@link CityJSONEntity | CityJSON entities}
|
|
32
|
+
*/
|
|
33
|
+
export interface CityJSONPickResult extends PickResult<CityJSONFeature> {
|
|
34
|
+
isCityJSONPickResult: true;
|
|
35
|
+
entity: CityJSONEntity;
|
|
36
|
+
object: CityObjectsMesh;
|
|
37
|
+
features?: CityJSONFeature[];
|
|
38
|
+
}
|
|
39
|
+
export declare const isCityJSONPickResult: (obj: unknown) => obj is CityJSONPickResult;
|
|
40
|
+
/**
|
|
41
|
+
* Source interface for {@link CityJSONEntity}
|
|
42
|
+
*/
|
|
43
|
+
export interface CityJSONSource extends UrlOrDataMixin, DataProjectionMixin, Required<FeatureProjectionMixin> {
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Entity for displaying a CityJSON file
|
|
47
|
+
*/
|
|
48
|
+
export default class CityJSONEntity extends Entity3D implements PickableFeatures<CityJSONFeature, CityJSONPickResult> {
|
|
49
|
+
readonly isCityJSONEntity = true;
|
|
50
|
+
readonly isPickableFeatures = true;
|
|
51
|
+
readonly type = "CityJSONEntity";
|
|
52
|
+
readonly source: CityJSONSource;
|
|
53
|
+
private _availableLods;
|
|
54
|
+
private _displayedLodIdx;
|
|
55
|
+
private _showSemantics;
|
|
56
|
+
constructor(source: CityJSONSource);
|
|
57
|
+
/** Array of the available Levels Of Details in this CityJSON model */
|
|
58
|
+
get availableLods(): string[] | null;
|
|
59
|
+
/**
|
|
60
|
+
* Gets the displayed index of Level Of Details, from {@link availableLods}.
|
|
61
|
+
* If `-1` or out of bounds, displays all levels.
|
|
62
|
+
*/
|
|
63
|
+
get displayedLodIdx(): number;
|
|
64
|
+
/**
|
|
65
|
+
* Sets the displayed index of Level Of Details, from {@link availableLods}.
|
|
66
|
+
* If `-1` or out of bounds, displays all levels.
|
|
67
|
+
* @param lodIdx - Index from {@link availableLods}
|
|
68
|
+
*/
|
|
69
|
+
set displayedLodIdx(lodIdx: number);
|
|
70
|
+
/** Gets whether the theme uses semantics or not */
|
|
71
|
+
get showSemantics(): boolean;
|
|
72
|
+
/** Sets whether the theme uses semantics or not */
|
|
73
|
+
set showSemantics(v: boolean);
|
|
74
|
+
private traverseCityMaterials;
|
|
75
|
+
preprocess(): Promise<void>;
|
|
76
|
+
pick(canvasCoords: Vector2, options?: PickOptions): CityJSONPickResult[];
|
|
77
|
+
pickFeaturesFrom(pickedResult: CityJSONPickResult): CityJSONFeature[];
|
|
78
|
+
static isCityJSONEntity: (obj: object) => obj is CityJSONEntity;
|
|
79
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
2
|
+
import { default as EntityInspector } from '@giro3d/giro3d/gui/EntityInspector';
|
|
3
|
+
import { default as GUI } from 'lil-gui';
|
|
4
|
+
import { default as CityJSONEntity } from './CityJSONEntity';
|
|
5
|
+
export default class CityJSONEntityInspector extends EntityInspector<CityJSONEntity> {
|
|
6
|
+
availableLods: string;
|
|
7
|
+
constructor(parentGui: GUI, instance: Instance, entity: CityJSONEntity);
|
|
8
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { default as PickOptions } from '@giro3d/giro3d/core/picking/PickOptions';
|
|
2
|
+
import { default as PickResult } from '@giro3d/giro3d/core/picking/PickResult';
|
|
3
|
+
import { default as PickableFeatures } from '@giro3d/giro3d/core/picking/PickableFeatures';
|
|
4
|
+
import { default as Entity3D } from '@giro3d/giro3d/entities/Entity3D';
|
|
5
|
+
import { FragmentMesh } from 'bim-fragment/fragment-mesh';
|
|
6
|
+
import { FragmentIdMap } from 'openbim-components';
|
|
7
|
+
import { Vector2 } from '../../../../../node_modules/three';
|
|
8
|
+
import { CoordinatesMixin, UrlOrDataMixin } from '../../giro3d/sources/mixins';
|
|
9
|
+
type FragmentTypeName = 'selection' | 'bbox';
|
|
10
|
+
export declare enum ClassificationSystem {
|
|
11
|
+
STOREY = "storeys",
|
|
12
|
+
ENTITY = "entities"
|
|
13
|
+
}
|
|
14
|
+
export type ClassificationItem = {
|
|
15
|
+
name: string;
|
|
16
|
+
treeItemName: string;
|
|
17
|
+
children: ClassificationItem[];
|
|
18
|
+
fragments: FragmentIdMap;
|
|
19
|
+
};
|
|
20
|
+
export interface IFCProperty {
|
|
21
|
+
parentName: string;
|
|
22
|
+
name: string;
|
|
23
|
+
value: number | null;
|
|
24
|
+
}
|
|
25
|
+
export interface IFCFeature {
|
|
26
|
+
itemProperties: {
|
|
27
|
+
[attribute: string]: any;
|
|
28
|
+
};
|
|
29
|
+
ifcProperties: IFCProperty[];
|
|
30
|
+
}
|
|
31
|
+
export interface IFCPickResult extends PickResult<IFCFeature> {
|
|
32
|
+
isIFCPickResult: true;
|
|
33
|
+
entity: IfcEntity;
|
|
34
|
+
object: FragmentMesh;
|
|
35
|
+
features?: IFCFeature[];
|
|
36
|
+
}
|
|
37
|
+
export declare const isIFCPickResult: (obj: unknown) => obj is IFCPickResult;
|
|
38
|
+
/** Source interface for {@link IfcEntity} */
|
|
39
|
+
export interface IfcSource extends UrlOrDataMixin, CoordinatesMixin {
|
|
40
|
+
/** Name of the IFC */
|
|
41
|
+
name: string;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Entity for displaying an IFC file
|
|
45
|
+
*/
|
|
46
|
+
export default class IfcEntity extends Entity3D implements PickableFeatures<IFCFeature, IFCPickResult> {
|
|
47
|
+
readonly isIfcEntity: true;
|
|
48
|
+
readonly isPickableFeatures: true;
|
|
49
|
+
readonly type: "IfcEntity";
|
|
50
|
+
private readonly _source;
|
|
51
|
+
private _components;
|
|
52
|
+
private _model;
|
|
53
|
+
private _fragmentManager;
|
|
54
|
+
private _fragmentClassifier;
|
|
55
|
+
private _ifcSelection;
|
|
56
|
+
private _indexMap;
|
|
57
|
+
private _classificationCache;
|
|
58
|
+
private _fragmentBoundingBox;
|
|
59
|
+
constructor(source: IfcSource);
|
|
60
|
+
protected preprocess(): Promise<void>;
|
|
61
|
+
private initializeEntityIndexes;
|
|
62
|
+
private setEntityIndex;
|
|
63
|
+
getProperty(expressID: number): {
|
|
64
|
+
name: string;
|
|
65
|
+
value: number | null;
|
|
66
|
+
} | null;
|
|
67
|
+
getProperties(expressID: string): IFCProperty[];
|
|
68
|
+
private regenerateClassification;
|
|
69
|
+
protected initClassification(): Promise<void>;
|
|
70
|
+
getClassification(): ClassificationItem[];
|
|
71
|
+
private addHighlightToFragment;
|
|
72
|
+
clearHighlight(name?: FragmentTypeName): void;
|
|
73
|
+
private regenerate;
|
|
74
|
+
private addComposites;
|
|
75
|
+
private updateFragmentFill;
|
|
76
|
+
highlight(name: FragmentTypeName, mesh: FragmentMesh, itemId: string): void;
|
|
77
|
+
highlightById(ids: FragmentIdMap, name?: FragmentTypeName): void;
|
|
78
|
+
getBoundingBoxById(ids: FragmentIdMap): import('../../../../../node_modules/three').Box3 | undefined;
|
|
79
|
+
pick(canvasCoords: Vector2, options?: PickOptions): IFCPickResult[];
|
|
80
|
+
pickFeaturesFrom(pickedResult: IFCPickResult): {
|
|
81
|
+
itemProperties: any;
|
|
82
|
+
ifcProperties: IFCProperty[];
|
|
83
|
+
}[];
|
|
84
|
+
static isIFCEntity: (obj: unknown) => obj is IfcEntity;
|
|
85
|
+
static isIFCPickResult: (obj: unknown) => obj is IFCPickResult;
|
|
86
|
+
}
|
|
87
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
2
|
+
import { default as EntityInspector } from '@giro3d/giro3d/gui/EntityInspector';
|
|
3
|
+
import { default as GUI } from 'lil-gui';
|
|
4
|
+
import { default as IfcEntity } from './IfcEntity';
|
|
5
|
+
export default class IfcEntityInspector extends EntityInspector<IfcEntity> {
|
|
6
|
+
constructor(parentGui: GUI, instance: Instance, entity: IfcEntity);
|
|
7
|
+
}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { Dataset } from '../../types/Dataset';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
dataset: Dataset;
|
|
4
|
+
};
|
|
5
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
6
|
+
export default _default;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { default as IfcEntity, ClassificationItem } from './IfcEntity';
|
|
2
|
+
type __VLS_Props = {
|
|
3
|
+
ifcEntity: IfcEntity;
|
|
4
|
+
classificationElement: ClassificationItem;
|
|
5
|
+
};
|
|
6
|
+
declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
|
|
7
|
+
export default _default;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { default as CityJSONLoader } from './CityJSONLoader';
|
|
2
|
+
import { default as IFCLoader } from './IFCLoader';
|
|
3
|
+
import { default as PLYLoader } from './PLYLoader';
|
|
4
|
+
import { default as PotreeLoader } from './PotreeLoader';
|
|
5
|
+
import { default as Tour } from './Tour';
|
|
6
|
+
export { CityJSONLoader, IFCLoader, PLYLoader, PotreeLoader, Tour };
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { CoordinatesMixin, FeatureProjectionMixin, UrlOrDataMixin } from '../../giro3d/sources/mixins';
|
|
2
|
+
import { default as PickResult } from '@giro3d/giro3d/core/picking/PickResult';
|
|
3
|
+
import { default as PickableFeatures } from '@giro3d/giro3d/core/picking/PickableFeatures';
|
|
4
|
+
import { default as Entity3D } from '@giro3d/giro3d/entities/Entity3D';
|
|
5
|
+
import { Color, Mesh } from '../../../../../node_modules/three';
|
|
6
|
+
/** Parameters for creating {@link PlyEntity} */
|
|
7
|
+
export interface PlySource extends UrlOrDataMixin, Required<CoordinatesMixin>, Required<FeatureProjectionMixin> {
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Feature returned when picking on Ply objects
|
|
11
|
+
*/
|
|
12
|
+
export interface PlyFeature {
|
|
13
|
+
color: Color;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* PLY 3D object implementing our picking
|
|
17
|
+
*/
|
|
18
|
+
export declare class PlyMesh extends Mesh implements PickableFeatures<PlyFeature> {
|
|
19
|
+
readonly isPickableFeatures = true;
|
|
20
|
+
readonly isPlyMesh = true;
|
|
21
|
+
pickFeaturesFrom(pickedResult: PickResult): PlyFeature[];
|
|
22
|
+
static isPlyMesh: (obj: unknown) => obj is PlyMesh;
|
|
23
|
+
static isPlyPickResult: (obj: unknown) => obj is PickResult<PlyFeature>;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Entity for displaying a PLY file
|
|
27
|
+
*/
|
|
28
|
+
export default class PlyEntity extends Entity3D {
|
|
29
|
+
readonly isPlyEntity = true;
|
|
30
|
+
readonly source: PlySource;
|
|
31
|
+
constructor(source: PlySource);
|
|
32
|
+
protected preprocess(): Promise<void>;
|
|
33
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { default as Instance } from '@giro3d/giro3d/core/Instance';
|
|
2
|
+
import { default as Coordinates } from '@giro3d/giro3d/core/geographic/Coordinates';
|
|
3
|
+
/**
|
|
4
|
+
* Alticoder method
|
|
5
|
+
*/
|
|
6
|
+
export type Alticoder = (coordinates: Coordinates[]) => Promise<void>;
|
|
7
|
+
/**
|
|
8
|
+
* Alticoder using {@link IgnProvider}.
|
|
9
|
+
*/
|
|
10
|
+
export declare const IgnAlticoder: (coordinates: Coordinates[]) => Promise<void>;
|
|
11
|
+
/**
|
|
12
|
+
* Alticoder generator using (only) the map
|
|
13
|
+
*
|
|
14
|
+
* @param instance - Giro3D instance
|
|
15
|
+
* @returns Alticoder
|
|
16
|
+
*/
|
|
17
|
+
export declare const mapAlticoderGenerator: (instance: Instance) => Alticoder;
|
|
18
|
+
/**
|
|
19
|
+
* Alticoder generator using multiple ones
|
|
20
|
+
* @param alticoders - List of alticoders to use
|
|
21
|
+
* @param noDataValue - No data value
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
24
|
+
export declare const alticoders: (alticoders: Alticoder[], noDataValue?: number) => Alticoder;
|
|
25
|
+
/**
|
|
26
|
+
* Alticoder generator using the map if fast
|
|
27
|
+
*
|
|
28
|
+
* @param instance - Giro3D instance
|
|
29
|
+
* @param fast - Fast alticoding
|
|
30
|
+
* @returns Alticoder
|
|
31
|
+
*/
|
|
32
|
+
export declare const alticoderGenerator: (instance: Instance, fast: boolean, noDataValue?: number) => Alticoder;
|