@mappedin/mappedin-js 6.0.1-beta.24 → 6.0.1-beta.26
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/THIRD_PARTY_LICENSES.txt +55 -1
- package/lib/esm/GLTFExporter-E4CFNJU2.js +1 -0
- package/lib/esm/GLTFLoader-RR3SOQAO.js +1 -0
- package/lib/esm/browser-LGLZW75B.js +1 -0
- package/lib/esm/chunk-464QB2FL.js +1 -0
- package/lib/esm/chunk-7F2EB5HA.js +1 -0
- package/lib/esm/chunk-7JLMOMCP.js +1 -0
- package/lib/esm/chunk-H2E2454S.js +1 -0
- package/lib/esm/chunk-KN7LUPZI.js +1 -0
- package/lib/esm/chunk-U74CQPJ5.js +1 -0
- package/lib/esm/chunk-YZUKJOGG.js +1 -0
- package/lib/esm/index.css +1 -1
- package/lib/esm/index.d.ts +1416 -417
- package/lib/esm/index.js +1 -1
- package/lib/esm/inspector-B7DLKDU3.js +1 -0
- package/lib/esm/internal-55777EMI.css +1 -0
- package/lib/esm/internal-VVNLOL2A.js +1 -0
- package/lib/esm/outdoor-context-v4-OAGPVYEO.js +1 -0
- package/lib/esm/roboto-regular-YXLENGLP.js +1 -0
- package/lib/esm/text3d-Q7FFP3YS.css +1 -0
- package/lib/esm/text3d-XLQK46LO.js +1 -0
- package/lib/index.css +1 -1
- package/package.json +4 -3
- package/lib/esm/GLTFExporter-V3JBMXKP.js +0 -1
- package/lib/esm/GLTFLoader-JYDXWLFZ.js +0 -1
- package/lib/esm/browser-Q2RAR7TI.js +0 -1
- package/lib/esm/chunk-5YXLRKWZ.js +0 -1
- package/lib/esm/chunk-CJQTJCFY.js +0 -1
- package/lib/esm/chunk-CP4QYC2D.js +0 -1
- package/lib/esm/chunk-MYZZLUDX.js +0 -1
- package/lib/esm/chunk-RANFBRDO.js +0 -1
- package/lib/esm/inspector-XDGCRPFV.js +0 -1
- package/lib/esm/internal-ATY6WXPD.js +0 -1
- package/lib/esm/internal-C3WM3KGI.css +0 -1
- package/lib/esm/outdoor-context-v4-B4BXJOPD.js +0 -1
package/lib/esm/index.d.ts
CHANGED
|
@@ -16,7 +16,9 @@
|
|
|
16
16
|
// ../mappedin-js/@packages/internal/shave-text/shave-text
|
|
17
17
|
// ../mappedin-js/@tweenjs/tween.js
|
|
18
18
|
// ../mappedin-js/@turf/turf
|
|
19
|
+
// ../mappedin-js/troika-three-text
|
|
19
20
|
// ../mappedin-js/@packages/internal/quad-tree
|
|
21
|
+
// ../mappedin-js/@mappedin/core-sdk/src/components/text3d
|
|
20
22
|
// ../mappedin-js/minisearch
|
|
21
23
|
// ../mappedin-js/three/addons/loaders/GLTFLoader.js
|
|
22
24
|
// ../mappedin-js/@mapbox/point-geometry
|
|
@@ -37,8 +39,9 @@ declare module '@mappedin/mappedin-js' {
|
|
|
37
39
|
import type { Floor } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
38
40
|
import type { ParsedMVF as TMVF, StyleCollection as TMVFStyleCollection, Style as TMVFStyle, LineStringStyle as TMVFLineStringStyle, PolygonStyle as TMVFPolygonStyle, PointStyle as TMVFPointStyle, ParsedMVFLocalePack, OperationHours, SiblingGroup, LocationState } from '@mappedin/mvf';
|
|
39
41
|
import { MapView } from '@mappedin/mappedin-js/mappedin-js/src/map-view';
|
|
40
|
-
|
|
41
|
-
import {
|
|
42
|
+
export type { Text3D as Text3DApi } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/text3d';
|
|
43
|
+
import type { InsetPadding, InsetPaddingOption, Shading, PaintStyle, LineStyle, WatermarkOptions, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, MapViewState } from '@mappedin/mappedin-js/geojson/src';
|
|
44
|
+
import { enableTestMode, preloadFont } from '@mappedin/mappedin-js/geojson/src';
|
|
42
45
|
export type { PubSub } from '@packages/internal/common/pubsub';
|
|
43
46
|
import type { TMappedinMapLibreOverlayEvents } from '@mappedin/mappedin-js/mappedin-js/src/maplibre-overlay';
|
|
44
47
|
import { MappedinMapLibreOverlay } from '@mappedin/mappedin-js/mappedin-js/src/maplibre-overlay';
|
|
@@ -291,12 +294,13 @@ declare module '@mappedin/mappedin-js' {
|
|
|
291
294
|
* @deprecated Use {@link show3dMap} instead.
|
|
292
295
|
*/
|
|
293
296
|
export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
|
|
294
|
-
export { parseMVF, unzipMVF, enableTestMode };
|
|
295
|
-
export type { MapView, MapData, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, };
|
|
297
|
+
export { parseMVF, unzipMVF, enableTestMode, preloadFont };
|
|
298
|
+
export type { MapView, MapData, MapViewState, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, };
|
|
296
299
|
export type * from 'geojson';
|
|
297
300
|
export type { TUpdateState, TUpdateStates, TLabelState, TGeometryState, TModelState, TShapeState, TDoorsState, TImageState, TWallsState, TCameraAnimationOptions, TAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TDirectionZone, TCameraFocusOnTarget, TFocusable, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TAddModelOptions, TAddModel, TAddImageOptions, TGetDirectionsOptions, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, TGetState, TMarkerState, TBlueDotOptions, TBlueDotPositionUpdate, } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
298
301
|
export { WALLS, DOORS } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
299
|
-
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
302
|
+
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image, Text3D } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
303
|
+
export type { Debug } from '@mappedin/mappedin-js/mappedin-js/src/debug';
|
|
300
304
|
export type { Navigation, TNavigationOptions } from '@mappedin/mappedin-js/mappedin-js/src/navigation';
|
|
301
305
|
export type { TSpaceType } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
302
306
|
export { Coordinate, Annotation, Connection, Door, Floor, FloorStack, MapObject, PointOfInterest, Space, Image as ImageData, Hyperlink, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, Facade, Node, type Places, } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
@@ -317,7 +321,8 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data' {
|
|
|
317
321
|
import { Search } from '@mappedin/mappedin-js/mappedin-js/src/search';
|
|
318
322
|
import type { TNavigationTarget, TGetDirectionsOptions } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
319
323
|
import type { Directions } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/directions';
|
|
320
|
-
import { Query } from '@mappedin/mappedin-js/mappedin-js/src/query';
|
|
324
|
+
import type { Query } from '@mappedin/mappedin-js/mappedin-js/src/query';
|
|
325
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
321
326
|
/**
|
|
322
327
|
* A WeakMap to associate {@link MapData} instances with their internal representation.
|
|
323
328
|
* We need a way to get the internal data object from the API
|
|
@@ -505,6 +510,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data' {
|
|
|
505
510
|
*/
|
|
506
511
|
getById<T extends string>(type: T, id: string): T extends 'node' ? Node | undefined : T extends 'space' ? Space | undefined : T extends 'door' ? Door | undefined : T extends 'floor' ? Floor | undefined : T extends 'facade' ? Facade | undefined : T extends 'floor-stack' ? FloorStack | undefined : T extends 'connection' ? Connection | undefined : T extends 'object' ? MapObject | undefined : T extends 'point-of-interest' ? PointOfInterest | undefined : T extends 'annotation' ? Annotation | undefined : T extends 'area' ? Area | undefined : T extends 'enterprise-location' ? EnterpriseLocation | undefined : T extends 'enterprise-category' ? EnterpriseCategory | undefined : undefined;
|
|
507
512
|
getById(type: string, id: string): object | undefined;
|
|
513
|
+
/**
|
|
514
|
+
* Get the GeoJSON for a map data object on the map.
|
|
515
|
+
* @param mapDataObject
|
|
516
|
+
*/
|
|
517
|
+
getGeoJSON<T extends IGeoJSONData>(mapDataObject: T): T['geoJSON'];
|
|
508
518
|
/**
|
|
509
519
|
* Changes the language of the map data.
|
|
510
520
|
*
|
|
@@ -575,7 +585,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data' {
|
|
|
575
585
|
declare module '@mappedin/mappedin-js/mappedin-js/src/events' {
|
|
576
586
|
import type { ClickPayload } from '@mappedin/core-sdk';
|
|
577
587
|
import type { TStackedMapsEvents } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
578
|
-
import type { Coordinate, Floor, MapObject, Space } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
588
|
+
import type { Coordinate, Facade, Floor, MapObject, Space } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
579
589
|
import type { Label, Marker, Model, Path } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
580
590
|
import type { CameraTransform } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/camera-transform';
|
|
581
591
|
import type { TBlueDotEvents } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/blue-dot';
|
|
@@ -619,6 +629,10 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/events' {
|
|
|
619
629
|
* Details about the pointer event which triggered the interaction.
|
|
620
630
|
*/
|
|
621
631
|
pointerEvent: ClickPayload['pointerEvent'];
|
|
632
|
+
/**
|
|
633
|
+
* The interactive facades which the user interaction passed through.
|
|
634
|
+
*/
|
|
635
|
+
facades: Facade[];
|
|
622
636
|
};
|
|
623
637
|
export type THoverPayload = Omit<TClickPayload, 'pointerEvent'>;
|
|
624
638
|
/**
|
|
@@ -980,20 +994,22 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects' {
|
|
|
980
994
|
}
|
|
981
995
|
|
|
982
996
|
declare module '@mappedin/mappedin-js/mappedin-js/src/map-view' {
|
|
983
|
-
import type { RendererCore, WatermarkUpdateOptions } from '@mappedin/
|
|
997
|
+
import type { RendererCore, WatermarkUpdateOptions } from '@mappedin/mappedin-js/geojson/src';
|
|
984
998
|
import { PubSub } from '@packages/internal/common';
|
|
985
999
|
import { type TEvents, type TShow3DMapOptions } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
986
1000
|
import type { Navigation } from '@mappedin/mappedin-js/mappedin-js/src/navigation';
|
|
987
1001
|
import type { Camera, Labels, Markers, Models, Paths, Exporter, Directions, Style, Outdoor, Images } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson';
|
|
988
1002
|
import type { BlueDot } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/blue-dot/blue-dot';
|
|
989
1003
|
import type MapData from '@mappedin/mappedin-js/mappedin-js/src/map-data';
|
|
990
|
-
import type { Annotation, Coordinate, Door, Floor, MapObject, PointOfInterest, Space, Node, EnterpriseLocation, FloorStack } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
991
|
-
import type { DOORS, WALLS, TGetDirectionsOptions, TGetState, TNavigationTarget, TUpdateState, TUpdateStates } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
992
|
-
import type { Label, Marker, Image, Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
1004
|
+
import type { Annotation, Coordinate, Door, Floor, MapObject, PointOfInterest, Space, Node, EnterpriseLocation, FloorStack, Facade } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
1005
|
+
import type { DOORS, WALLS, TGetDirectionsOptions, TGetState, TNavigationTarget, TUpdateState, TUpdateStates, GlobalState, UpdateGlobalState } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
1006
|
+
import type { Label, Marker, Image, Shape, Text3D as Text3DView } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
993
1007
|
import type { TEventPayload } from '@mappedin/mappedin-js/mappedin-js/src/events';
|
|
994
1008
|
import type { Shapes } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/shapes';
|
|
995
1009
|
import type { StackedMaps, TCollapseOptions, TExpandOptions } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
996
1010
|
import type { InspectorOption } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/inspector/inspector';
|
|
1011
|
+
import { Debug } from '@mappedin/mappedin-js/mappedin-js/src/debug';
|
|
1012
|
+
import type { Text3D } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/text3d';
|
|
997
1013
|
/**
|
|
998
1014
|
* The MapView class is the main class for rendering and interacting with the map.
|
|
999
1015
|
*
|
|
@@ -1011,6 +1027,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view' {
|
|
|
1011
1027
|
* Controls for the map's labels.
|
|
1012
1028
|
*/
|
|
1013
1029
|
Labels: Labels;
|
|
1030
|
+
/**
|
|
1031
|
+
* @experimental
|
|
1032
|
+
* Controls for the map's 3D texts.
|
|
1033
|
+
*/
|
|
1034
|
+
Text3D: Text3D;
|
|
1014
1035
|
/**
|
|
1015
1036
|
* Controls for the map's markers.
|
|
1016
1037
|
*/
|
|
@@ -1088,8 +1109,16 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view' {
|
|
|
1088
1109
|
* // Update the color of a space to red.
|
|
1089
1110
|
* map.updateState(space, { color: 'red' });
|
|
1090
1111
|
*/
|
|
1091
|
-
updateState<T extends Space | MapObject | Label | Marker | Shape | Door | WALLS | DOORS>(target: T, state: TUpdateState<T>): any;
|
|
1112
|
+
updateState<T extends Space | Text3DView | MapObject | Label | Marker | Shape | Door | Facade | WALLS | DOORS>(target: T, state: TUpdateState<T>): any;
|
|
1092
1113
|
updateState<T extends string & NonNullable<unknown>>(target: T, state: TUpdateStates): any;
|
|
1114
|
+
/**
|
|
1115
|
+
* Update global state of the MapView
|
|
1116
|
+
*/
|
|
1117
|
+
updateGlobalState(update: UpdateGlobalState): void;
|
|
1118
|
+
/**
|
|
1119
|
+
* Get global state of the MapView
|
|
1120
|
+
*/
|
|
1121
|
+
getGlobalState(): GlobalState;
|
|
1093
1122
|
update: () => void;
|
|
1094
1123
|
/**
|
|
1095
1124
|
* Retrieves the map data for the current map.
|
|
@@ -1148,7 +1177,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view' {
|
|
|
1148
1177
|
* @hidden
|
|
1149
1178
|
*/
|
|
1150
1179
|
updateWatermark(options: WatermarkUpdateOptions): void;
|
|
1151
|
-
getState<T extends Space | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T
|
|
1180
|
+
getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T>;
|
|
1152
1181
|
setHoverColor(c: string): void;
|
|
1153
1182
|
getHoverColor(): string | undefined;
|
|
1154
1183
|
/**
|
|
@@ -1267,6 +1296,88 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view' {
|
|
|
1267
1296
|
* Enable debug interface. Learn more about the debug interface in the [Debug Mode Guide](https://developer.mappedin.com/web-sdk/getting-started#debug-mode).
|
|
1268
1297
|
*/
|
|
1269
1298
|
enableDebug(opitons?: InspectorOption): Promise<void>;
|
|
1299
|
+
/**
|
|
1300
|
+
* @experimental
|
|
1301
|
+
* @internal
|
|
1302
|
+
*/
|
|
1303
|
+
Debug: Debug;
|
|
1304
|
+
}
|
|
1305
|
+
}
|
|
1306
|
+
|
|
1307
|
+
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/text3d' {
|
|
1308
|
+
import { Space } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
1309
|
+
import type { TAddText3DOptions } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
1310
|
+
import type { CurrentMapGetter } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/types';
|
|
1311
|
+
import { Text3D as Text3DView } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
1312
|
+
export class Text3D {
|
|
1313
|
+
#private;
|
|
1314
|
+
/**
|
|
1315
|
+
* @internal
|
|
1316
|
+
*/
|
|
1317
|
+
constructor({ currentMapGetter }: {
|
|
1318
|
+
currentMapGetter: CurrentMapGetter;
|
|
1319
|
+
});
|
|
1320
|
+
/**
|
|
1321
|
+
* Creates polygon labels for all spaces.
|
|
1322
|
+
*
|
|
1323
|
+
* @param options - Configuration options for text label creation
|
|
1324
|
+
* @returns An array of Text3DView instances representing the created labels. If the space is already labeled, the designated Text3D instance will be returned.
|
|
1325
|
+
*
|
|
1326
|
+
* @example
|
|
1327
|
+
* ```typescript
|
|
1328
|
+
* const labels = mapView.Text3D.labelAll({
|
|
1329
|
+
* // optional configuration options
|
|
1330
|
+
* });
|
|
1331
|
+
* ```
|
|
1332
|
+
*/
|
|
1333
|
+
labelAll(options?: TAddText3DOptions): Text3DView[];
|
|
1334
|
+
/**
|
|
1335
|
+
* Creates a 3D text label for a given space.
|
|
1336
|
+
*
|
|
1337
|
+
* @param target - The target space or enterprise space to label.
|
|
1338
|
+
* @param content - The content of the label. If not provided, target.name will be used
|
|
1339
|
+
* @param options={} - Configuration options for the text label creation.
|
|
1340
|
+
* @returns An array of Text3DView instances representing the created labels.
|
|
1341
|
+
*
|
|
1342
|
+
* @throws {Error} If the target is not a Space.
|
|
1343
|
+
*
|
|
1344
|
+
* @example
|
|
1345
|
+
* ```typescript
|
|
1346
|
+
* const labels = mapView.Text3D.label(space, "Label Content", { fontSize: 12 });
|
|
1347
|
+
* ```
|
|
1348
|
+
*/
|
|
1349
|
+
label(target: Space, content?: string, options?: TAddText3DOptions): Text3DView | undefined;
|
|
1350
|
+
/**
|
|
1351
|
+
* Removes one or more Text3D labels from the map
|
|
1352
|
+
*
|
|
1353
|
+
* @param target - Can be either:
|
|
1354
|
+
* - A single Text3DView instance
|
|
1355
|
+
* - An array of Text3DView instances
|
|
1356
|
+
* - A string ID of the Text3DView to remove
|
|
1357
|
+
*
|
|
1358
|
+
* @example
|
|
1359
|
+
* ```typescript
|
|
1360
|
+
* // Remove single text label
|
|
1361
|
+
* mapView.Text3D.remove(text);
|
|
1362
|
+
*
|
|
1363
|
+
* // Remove multiple text labels
|
|
1364
|
+
* mapView.Text3D.remove([text, text]);
|
|
1365
|
+
*
|
|
1366
|
+
* // Remove by ID
|
|
1367
|
+
* mapView.Text3D.remove("text3d-123");
|
|
1368
|
+
* ```
|
|
1369
|
+
*/
|
|
1370
|
+
remove(text3dView: Text3DView): void;
|
|
1371
|
+
remove(id: string): void;
|
|
1372
|
+
/**
|
|
1373
|
+
* Removes all Text3D labels from the current map
|
|
1374
|
+
*
|
|
1375
|
+
* @example
|
|
1376
|
+
* ```typescript
|
|
1377
|
+
* mapView.Text3D.removeAll();
|
|
1378
|
+
* ```
|
|
1379
|
+
*/
|
|
1380
|
+
removeAll(): void;
|
|
1270
1381
|
}
|
|
1271
1382
|
}
|
|
1272
1383
|
|
|
@@ -1286,20 +1397,26 @@ declare module '@mappedin/mappedin-js/geojson/src' {
|
|
|
1286
1397
|
import { mountSceneGraphVisualizer } from '@mappedin/mappedin-js/geojson/examples/src/utils/scene-graph-visualizer';
|
|
1287
1398
|
import '../../packages/outdoor-context-v4/css/maplibre-gl.css';
|
|
1288
1399
|
import type { CollisionRankingTier } from '@mappedin/mappedin-js/geojson/src/utils/collision-ranking-tier';
|
|
1400
|
+
export type { Text3DState } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
1401
|
+
export { TEXT3D_STYLE_UPDATE_PROPS } from '@mappedin/mappedin-js/geojson/src/entities/utils';
|
|
1289
1402
|
export { Navigator } from '@mappedin/mappedin-js/packages/geojson-navigator';
|
|
1290
1403
|
export { interpolate, debounce } from '@mappedin/mappedin-js/geojson/src/utils';
|
|
1291
1404
|
export { MAPPEDIN_LAYER_ID } from '@mappedin/mappedin-js/geojson/src/utils/constants';
|
|
1405
|
+
export type { DebugState, Debug } from '@mappedin/mappedin-js/geojson/src/utils/debug';
|
|
1292
1406
|
/**
|
|
1293
1407
|
* Enable test mode for the renderer. This will disable the WebGLRenderer and WebGL1Renderer and replace them with a dummy object
|
|
1294
1408
|
* so you can run tests against it
|
|
1295
1409
|
*/
|
|
1296
|
-
export { enableTestMode } from '@mappedin/mappedin-js/geojson/src/services/
|
|
1410
|
+
export { enableTestMode } from '@mappedin/mappedin-js/geojson/src/services/test-mode';
|
|
1297
1411
|
export { mountSceneGraphVisualizer };
|
|
1298
1412
|
export type { EntityId, EntityState, LineStyle, PaintStyle, ModelStyle, ModelProperties, Shading } from '@mappedin/mappedin-js/geojson/src/types';
|
|
1299
1413
|
export type * from 'geojson';
|
|
1300
1414
|
export type { WatermarkUpdateOptions, WatermarkOptions, WatermarkPosition } from '@mappedin/mappedin-js/geojson/src/systems/watermark/system';
|
|
1415
|
+
export { preloadFont } from '@mappedin/mappedin-js/geojson/src/systems/text3d/system';
|
|
1301
1416
|
export type { GLTFExportOptions } from '@mappedin/mappedin-js/geojson/src/systems/exporter';
|
|
1302
1417
|
export type { AttributionControlOptions, AttributionPosition } from '@mappedin/mappedin-js/geojson/src/systems/html-controls/system';
|
|
1418
|
+
export type { Text3DStyle } from '@mappedin/mappedin-js/geojson/src/components/styles';
|
|
1419
|
+
export type { AddText3DOptions, InitializeText3DState, UpdatableText3DState } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
1303
1420
|
export { ATTRIBUTION_POSITIONS } from '@mappedin/mappedin-js/geojson/src/systems/html-controls/system';
|
|
1304
1421
|
export { ANIMATION_TWEENS } from '@mappedin/mappedin-js/geojson/src/camera';
|
|
1305
1422
|
export type { AddPathOptions, AddMarkerOptions, AddLabelOptions, AnimateToOptions, FocusOnOptions, MapViewState, MarkerState, PathState, GroupContainerState, GeometryGroupState, ShapeState, CustomGeometryBuilder, LabelState, GeometryState, ModelState, EasingCurve, Camera, InsetPadding, InsetPaddingOption, Position, ClickPayload, HoverPayload, CameraPayload, MapEvent, MapEventPayload, CollisionRankingTier, LabelAppearance, RendererCore, };
|
|
@@ -1381,9 +1498,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/maplibre-overlay' {
|
|
|
1381
1498
|
declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
1382
1499
|
import type { Feature, MultiPolygon, Polygon } from 'geojson';
|
|
1383
1500
|
import type { Coordinate, Floor, Door, Space, MapObject, PointOfInterest, Connection, Annotation, EnterpriseLocation, Node, Area, Facade } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
1384
|
-
import type { Label, Marker, Model, Image, Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
1501
|
+
import type { Label, Marker, Model, Image, Shape, Text3D } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
1385
1502
|
import type { Language, ParsedMVFLocalePack } from '@mappedin/mvf';
|
|
1386
|
-
import type { InsetPaddingOption, Position } from '@mappedin/
|
|
1503
|
+
import type { InsetPaddingOption, Position, UpdatableText3DState, Text3DState, AddText3DOptions } from '@mappedin/mappedin-js/geojson/src';
|
|
1387
1504
|
export type DeepRequired<T> = Required<{
|
|
1388
1505
|
[K in keyof T]: T[K] extends Required<T[K]> ? T[K] : DeepRequired<T[K]>;
|
|
1389
1506
|
}>;
|
|
@@ -1463,25 +1580,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1463
1580
|
/**
|
|
1464
1581
|
* Defines the state for a label when its appearance is updated.
|
|
1465
1582
|
*/
|
|
1466
|
-
export type TLabelState = {
|
|
1583
|
+
export type TLabelState = Omit<Required<TAddLabelOptions>, 'id'> & {
|
|
1467
1584
|
text: string;
|
|
1468
1585
|
type: 'label';
|
|
1469
|
-
/**
|
|
1470
|
-
* Appearance settings for the label.
|
|
1471
|
-
*/
|
|
1472
|
-
appearance: TLabelAppearance;
|
|
1473
|
-
/**
|
|
1474
|
-
* Priority level of the label, used for determining display order.
|
|
1475
|
-
*/
|
|
1476
|
-
rank: TCollisionRankingTier | 'initial';
|
|
1477
|
-
/**
|
|
1478
|
-
* Whether the label is interactive.
|
|
1479
|
-
*/
|
|
1480
|
-
interactive: boolean;
|
|
1481
|
-
/**
|
|
1482
|
-
* Whether the label is enabled.
|
|
1483
|
-
*/
|
|
1484
|
-
enabled: boolean;
|
|
1485
1586
|
};
|
|
1486
1587
|
/**
|
|
1487
1588
|
* Defines the state for a model when its appearance is updated.
|
|
@@ -1521,6 +1622,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1521
1622
|
* Visibility of the walls.
|
|
1522
1623
|
*/
|
|
1523
1624
|
visible: boolean;
|
|
1625
|
+
/**
|
|
1626
|
+
* Height of the walls.
|
|
1627
|
+
*/
|
|
1628
|
+
height?: number;
|
|
1629
|
+
/**
|
|
1630
|
+
* Opacity of the walls.
|
|
1631
|
+
*/
|
|
1632
|
+
opacity?: number;
|
|
1524
1633
|
};
|
|
1525
1634
|
export type TDoorsState = {
|
|
1526
1635
|
type: 'doors';
|
|
@@ -1553,30 +1662,12 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1553
1662
|
*/
|
|
1554
1663
|
opacity: number;
|
|
1555
1664
|
};
|
|
1556
|
-
export type TMarkerState = {
|
|
1665
|
+
export type TMarkerState = Omit<Required<TAddMarkerOptions>, 'id'> & {
|
|
1557
1666
|
type: 'marker';
|
|
1558
1667
|
/**
|
|
1559
1668
|
* HTML element for the marker.
|
|
1560
1669
|
*/
|
|
1561
1670
|
element: HTMLElement;
|
|
1562
|
-
/**
|
|
1563
|
-
* Priority level of the marker, used for determining display order.
|
|
1564
|
-
*/
|
|
1565
|
-
rank: TCollisionRankingTier | 'initial';
|
|
1566
|
-
/**
|
|
1567
|
-
* Whether the marker is interactive.
|
|
1568
|
-
* `true` indicates that the marker will be registered in the SDK interaction events.
|
|
1569
|
-
* `'pointer-events-auto'` indicates that the marker will receive browser pointer events.
|
|
1570
|
-
*/
|
|
1571
|
-
interactive: boolean | 'pointer-events-auto';
|
|
1572
|
-
/**
|
|
1573
|
-
* Whether the marker is enabled.
|
|
1574
|
-
*/
|
|
1575
|
-
enabled: boolean;
|
|
1576
|
-
/**
|
|
1577
|
-
* The current coordinate of the marker.
|
|
1578
|
-
*/
|
|
1579
|
-
coordinate: Coordinate;
|
|
1580
1671
|
};
|
|
1581
1672
|
/**
|
|
1582
1673
|
* Represents the state of a shape.
|
|
@@ -1665,9 +1756,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1665
1756
|
/**
|
|
1666
1757
|
* The type for updating the state of map elements (colors, texts, etc.).
|
|
1667
1758
|
*/
|
|
1668
|
-
export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS
|
|
1759
|
+
export type TUpdateState<T> = T extends WALLS ? Partial<TWallsState> : T extends DOORS | Door ? Partial<TDoorsState> : T extends Marker ? Partial<TMarkerState> : T extends Label ? Partial<TLabelState> : T extends Space | MapObject | Facade ? Partial<TGeometryState> : T extends Shape ? Partial<Omit<TShapeState, 'height' | 'type'>> : T extends Text3D ? UpdatableText3DState : T extends string ? Record<string, any> : never;
|
|
1669
1760
|
export type TUpdateStates = Partial<Omit<TGeometryState, 'interactive' | 'hoverColor' | 'type'>> | Partial<TMarkerState> | Partial<TLabelState> | Partial<TGeometryState>;
|
|
1670
|
-
export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | undefined : never;
|
|
1761
|
+
export type TGetState<T> = T extends WALLS ? TWallsState | undefined : T extends DOORS ? TDoorsState | undefined : T extends Marker ? TMarkerState | undefined : T extends Shape ? TShapeState | undefined : T extends Model ? TModelState | undefined : T extends Label ? TLabelState | undefined : T extends Image ? TImageState | undefined : T extends Text3D ? Text3DState | undefined : T extends Space | MapObject ? TGeometryState | undefined : T extends string ? TLabelState | TGeometryState | TMarkerState | TModelState | undefined : never;
|
|
1671
1762
|
/**
|
|
1672
1763
|
* Options for {@link Camera} animations on the map.
|
|
1673
1764
|
*/
|
|
@@ -1680,6 +1771,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1680
1771
|
* Easing function to use for the animation.
|
|
1681
1772
|
*/
|
|
1682
1773
|
easing?: TEasingFunction;
|
|
1774
|
+
/**
|
|
1775
|
+
* Whether the current animation will be interrupted, or must complete before starting any new animations
|
|
1776
|
+
* @default: true
|
|
1777
|
+
*/
|
|
1778
|
+
interruptible?: boolean;
|
|
1683
1779
|
};
|
|
1684
1780
|
/**
|
|
1685
1781
|
* Options for controlling animations on the map.
|
|
@@ -1744,6 +1840,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
1744
1840
|
vertical?: number;
|
|
1745
1841
|
};
|
|
1746
1842
|
screenOffsets?: InsetPaddingOption;
|
|
1843
|
+
/**
|
|
1844
|
+
* Whether the current animation will be interrupted, or must complete before starting any new animations
|
|
1845
|
+
* @default: true
|
|
1846
|
+
*/
|
|
1847
|
+
interruptible?: boolean;
|
|
1747
1848
|
};
|
|
1748
1849
|
/**
|
|
1749
1850
|
* A map element that can be focused on by the camera.
|
|
@@ -2140,6 +2241,10 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2140
2241
|
*/
|
|
2141
2242
|
url: string;
|
|
2142
2243
|
};
|
|
2244
|
+
/**
|
|
2245
|
+
* @interface
|
|
2246
|
+
*/
|
|
2247
|
+
export type TAddText3DOptions = AddText3DOptions;
|
|
2143
2248
|
/**
|
|
2144
2249
|
* Options for controlling the behavior of an {@link Image}.
|
|
2145
2250
|
*/
|
|
@@ -2183,7 +2288,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2183
2288
|
* Optional. Determines the collision ranking tier of the marker, which influences its visibility in relation to other colliders.
|
|
2184
2289
|
* For the possible values ('medium', 'high', 'always-visible') and their impact on label visibility, see {@link TCollisionRankingTier}.
|
|
2185
2290
|
*/
|
|
2186
|
-
rank?: TCollisionRankingTier;
|
|
2291
|
+
rank?: TCollisionRankingTier | 'initial';
|
|
2187
2292
|
/**
|
|
2188
2293
|
* Optional. Specifies the anchor point of the marker, determining its position relative to its coordinates.
|
|
2189
2294
|
* If a list is provided, the marker will be anchored to the first anchor point that is available.
|
|
@@ -2200,10 +2305,6 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2200
2305
|
* @default false
|
|
2201
2306
|
*/
|
|
2202
2307
|
interactive?: boolean | 'pointer-events-auto';
|
|
2203
|
-
/**
|
|
2204
|
-
* Optional layer to attach the {@link Marker} to.
|
|
2205
|
-
*/
|
|
2206
|
-
layer?: string;
|
|
2207
2308
|
/**
|
|
2208
2309
|
* @internal
|
|
2209
2310
|
*/
|
|
@@ -2213,11 +2314,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2213
2314
|
*/
|
|
2214
2315
|
dynamicResize?: boolean;
|
|
2215
2316
|
/**
|
|
2216
|
-
* Whether the marker
|
|
2217
|
-
* @internal
|
|
2218
|
-
* @default false
|
|
2317
|
+
* Whether the marker is enabled.
|
|
2219
2318
|
*/
|
|
2220
|
-
|
|
2319
|
+
enabled?: boolean;
|
|
2221
2320
|
};
|
|
2222
2321
|
/**
|
|
2223
2322
|
* Options for creating a new {@link Label} with {@link Labels.add}.
|
|
@@ -2227,31 +2326,24 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2227
2326
|
* Optional. Determines the collision ranking tier of the label, which influences its visibility in relation to other colliders.
|
|
2228
2327
|
* For the possible values ('medium', 'high', 'always-visible') and their impact on label visibility, see {@link TCollisionRankingTier}.
|
|
2229
2328
|
*/
|
|
2230
|
-
rank?: TCollisionRankingTier;
|
|
2329
|
+
rank?: TCollisionRankingTier | 'initial';
|
|
2231
2330
|
/**
|
|
2232
2331
|
* Customize the appearance of the {@link Label} and its pin
|
|
2233
2332
|
*/
|
|
2234
2333
|
appearance?: TLabelAppearance;
|
|
2235
|
-
/**
|
|
2236
|
-
* Group analytics based ranking
|
|
2237
|
-
*
|
|
2238
|
-
* @default false
|
|
2239
|
-
*/
|
|
2240
|
-
groupRankingByCategory?: boolean;
|
|
2241
2334
|
/**
|
|
2242
2335
|
* Whether the Label should be clickable.
|
|
2243
2336
|
* @default false
|
|
2244
2337
|
*/
|
|
2245
2338
|
interactive?: boolean;
|
|
2246
|
-
/**
|
|
2247
|
-
* Optional layer to attach the Label to.
|
|
2248
|
-
* If not provided, this will be empty.
|
|
2249
|
-
*/
|
|
2250
|
-
layer?: string;
|
|
2251
2339
|
/**
|
|
2252
2340
|
* @internal
|
|
2253
2341
|
*/
|
|
2254
2342
|
id?: string;
|
|
2343
|
+
/**
|
|
2344
|
+
* Whether the label is enabled.
|
|
2345
|
+
*/
|
|
2346
|
+
enabled?: boolean;
|
|
2255
2347
|
};
|
|
2256
2348
|
export type TBlueDotOptions = {
|
|
2257
2349
|
/**
|
|
@@ -2353,6 +2445,21 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/types' {
|
|
|
2353
2445
|
language: Language;
|
|
2354
2446
|
localePack: ParsedMVFLocalePack;
|
|
2355
2447
|
};
|
|
2448
|
+
export type GlobalState = {
|
|
2449
|
+
text3d: {
|
|
2450
|
+
/**
|
|
2451
|
+
* hover color of the text3d
|
|
2452
|
+
*/
|
|
2453
|
+
hoverColor: string;
|
|
2454
|
+
};
|
|
2455
|
+
geometry: {
|
|
2456
|
+
/**
|
|
2457
|
+
* hover color of the geometries
|
|
2458
|
+
*/
|
|
2459
|
+
hoverColor: string;
|
|
2460
|
+
};
|
|
2461
|
+
};
|
|
2462
|
+
export type UpdateGlobalState = DeepPartial<GlobalState>;
|
|
2356
2463
|
}
|
|
2357
2464
|
|
|
2358
2465
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/blue-dot/blue-dot' {
|
|
@@ -2642,6 +2749,16 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view-objects' {
|
|
|
2642
2749
|
export { Path } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/path';
|
|
2643
2750
|
export { CameraTransform } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/camera-transform';
|
|
2644
2751
|
export { Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/shape';
|
|
2752
|
+
export { Text3D } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/text3d';
|
|
2753
|
+
}
|
|
2754
|
+
|
|
2755
|
+
declare module '@mappedin/mappedin-js/mappedin-js/src/debug' {
|
|
2756
|
+
import type { RendererCore } from '@mappedin/core-sdk';
|
|
2757
|
+
export class Debug {
|
|
2758
|
+
state: RendererCore['Debug']['state'];
|
|
2759
|
+
constructor(core: RendererCore);
|
|
2760
|
+
update: RendererCore['Debug']['update'];
|
|
2761
|
+
}
|
|
2645
2762
|
}
|
|
2646
2763
|
|
|
2647
2764
|
declare module '@mappedin/mappedin-js/mappedin-js/src/navigation' {
|
|
@@ -3383,6 +3500,58 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/directions' {
|
|
|
3383
3500
|
}
|
|
3384
3501
|
}
|
|
3385
3502
|
|
|
3503
|
+
declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types' {
|
|
3504
|
+
import type Area from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/area';
|
|
3505
|
+
import type Door from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door';
|
|
3506
|
+
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
3507
|
+
import type Space from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space';
|
|
3508
|
+
import type PointOfInterest from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/poi';
|
|
3509
|
+
import type Annotation from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/annotation';
|
|
3510
|
+
import type Connection from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/connection';
|
|
3511
|
+
import type MapObject from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/object';
|
|
3512
|
+
import type { EnterpriseLocation as MvfEnterpriseLocation, EnterpriseCategory as MvfEnterpriseCategory, ParsedMVFLocalePack, Feature } from '@mappedin/mvf';
|
|
3513
|
+
import type { PartialExcept } from '@mappedin/mvf/dist/locale';
|
|
3514
|
+
import type { LocalePackUrls } from '@packages/internal/mvf-utils';
|
|
3515
|
+
import type { LanguagePackHydrationItem } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
3516
|
+
import type { EnvControl } from '@packages/internal/mvf-utils/mvf-utils';
|
|
3517
|
+
/**
|
|
3518
|
+
* Places are the main objects that can be searched for.
|
|
3519
|
+
*/
|
|
3520
|
+
export type Places = Space | Floor | Door | Connection | MapObject | PointOfInterest | Annotation | Area;
|
|
3521
|
+
export type LocationWithLocale = PartialExcept<MvfEnterpriseLocation, 'id'>;
|
|
3522
|
+
export type CategoryWithLocale = PartialExcept<MvfEnterpriseCategory, 'id'>;
|
|
3523
|
+
export type LanguagePack = {
|
|
3524
|
+
type: 'downloaded';
|
|
3525
|
+
data: ParsedMVFLocalePack;
|
|
3526
|
+
optimized: {
|
|
3527
|
+
locations: Record<string, LocationWithLocale> | undefined;
|
|
3528
|
+
categories: Record<string, CategoryWithLocale> | undefined;
|
|
3529
|
+
};
|
|
3530
|
+
} | {
|
|
3531
|
+
type: 'initial';
|
|
3532
|
+
optimized: {
|
|
3533
|
+
locations: Record<string, MvfEnterpriseLocation>;
|
|
3534
|
+
categories: Record<string, MvfEnterpriseCategory>;
|
|
3535
|
+
};
|
|
3536
|
+
};
|
|
3537
|
+
export type TMapDataInternalOptions = {
|
|
3538
|
+
env?: EnvControl;
|
|
3539
|
+
enterprise?: boolean;
|
|
3540
|
+
outdoorViewToken?: string;
|
|
3541
|
+
localePacksUrls?: LocalePackUrls;
|
|
3542
|
+
languagePacks?: LanguagePackHydrationItem[];
|
|
3543
|
+
binaryBundle?: Uint8Array;
|
|
3544
|
+
sasToken?: string;
|
|
3545
|
+
};
|
|
3546
|
+
/**
|
|
3547
|
+
* A class that implements IGeoJSONData has a underlying GeoJSON datathat can be accessed.
|
|
3548
|
+
*/
|
|
3549
|
+
export interface IGeoJSONData {
|
|
3550
|
+
/** Gets the underlying GeoJSON Feature representation of this object. */
|
|
3551
|
+
geoJSON: Feature<any, null>;
|
|
3552
|
+
}
|
|
3553
|
+
}
|
|
3554
|
+
|
|
3386
3555
|
declare module '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/camera-transform' {
|
|
3387
3556
|
import type { Camera } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson';
|
|
3388
3557
|
/**
|
|
@@ -3436,8 +3605,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src' {
|
|
|
3436
3605
|
import type { Floor } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
3437
3606
|
import type { ParsedMVF as TMVF, StyleCollection as TMVFStyleCollection, Style as TMVFStyle, LineStringStyle as TMVFLineStringStyle, PolygonStyle as TMVFPolygonStyle, PointStyle as TMVFPointStyle, ParsedMVFLocalePack, OperationHours, SiblingGroup, LocationState } from '@mappedin/mvf';
|
|
3438
3607
|
import { MapView } from '@mappedin/mappedin-js/mappedin-js/src/map-view';
|
|
3439
|
-
|
|
3440
|
-
import {
|
|
3608
|
+
export type { Text3D as Text3DApi } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/text3d';
|
|
3609
|
+
import type { InsetPadding, InsetPaddingOption, Shading, PaintStyle, LineStyle, WatermarkOptions, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, MapViewState } from '@mappedin/mappedin-js/geojson/src';
|
|
3610
|
+
import { enableTestMode, preloadFont } from '@mappedin/mappedin-js/geojson/src';
|
|
3441
3611
|
export type { PubSub } from '@packages/internal/common/pubsub';
|
|
3442
3612
|
import type { TMappedinMapLibreOverlayEvents } from '@mappedin/mappedin-js/mappedin-js/src/maplibre-overlay';
|
|
3443
3613
|
import { MappedinMapLibreOverlay } from '@mappedin/mappedin-js/mappedin-js/src/maplibre-overlay';
|
|
@@ -3690,12 +3860,13 @@ declare module '@mappedin/mappedin-js/mappedin-js/src' {
|
|
|
3690
3860
|
* @deprecated Use {@link show3dMap} instead.
|
|
3691
3861
|
*/
|
|
3692
3862
|
export const show3dMapGeojson: (el: HTMLElement, mapData: MapData, options?: TShow3DMapOptions) => Promise<MapView>;
|
|
3693
|
-
export { parseMVF, unzipMVF, enableTestMode };
|
|
3694
|
-
export type { MapView, MapData, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, };
|
|
3863
|
+
export { parseMVF, unzipMVF, enableTestMode, preloadFont };
|
|
3864
|
+
export type { MapView, MapData, MapViewState, MappedinMapLibreOverlay, TMappedinMapLibreOverlayEvents, TBlueDotEvents, TBlueDotAction, TBlueDotState, GeolocationPositionExtended, TStackedMapsEvents, TExpandOptions, TStackedMapsState, TFollowMode, TFollowCameraOptions, TEvents, TEventPayload, TFloorChangeReason, TClickPayload, THoverPayload, TShow3DMapOptions, TGetMapDataOptions, TGetMapDataWithAccessTokenOptions, TGetMapDataWithCredentialsOptions, TGetMapDataSharedOptions, TAntialiasingOptions, TMVF, PaintStyle, LineStyle, Shading, TMVFStyleCollection, TMVFStyle, TMVFLineStringStyle, TMVFPolygonStyle, TMVFPointStyle, Environment, InsetPadding, InsetPaddingOption, OperationHours, SiblingGroup, LocationState, Text3DState, AddText3DOptions, UpdatableText3DState, InitializeText3DState, };
|
|
3695
3865
|
export type * from 'geojson';
|
|
3696
3866
|
export type { TUpdateState, TUpdateStates, TLabelState, TGeometryState, TModelState, TShapeState, TDoorsState, TImageState, TWallsState, TCameraAnimationOptions, TAnimationOptions, TFocusOnOptions, TEasingFunction, TCameraTarget, TNavigationTarget, TDirectionZone, TCameraFocusOnTarget, TFocusable, TAddMarkerOptions, TAddPathOptions, TLabelAppearance, TAddLabelOptions, TAddModelOptions, TAddModel, TAddImageOptions, TGetDirectionsOptions, TCollisionRankingTier, TMarkerAnchor, TDirectionInstruction, TDirectionInstructionAction, TGetState, TMarkerState, TBlueDotOptions, TBlueDotPositionUpdate, } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
3697
3867
|
export { WALLS, DOORS } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
3698
|
-
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
3868
|
+
export type { Label, Marker, Path, Shape, CameraTransform, Model, Image, Text3D } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
3869
|
+
export type { Debug } from '@mappedin/mappedin-js/mappedin-js/src/debug';
|
|
3699
3870
|
export type { Navigation, TNavigationOptions } from '@mappedin/mappedin-js/mappedin-js/src/navigation';
|
|
3700
3871
|
export type { TSpaceType } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
3701
3872
|
export { Coordinate, Annotation, Connection, Door, Floor, FloorStack, MapObject, PointOfInterest, Space, Image as ImageData, Hyperlink, EnterpriseLocation, EnterpriseCategory, EnterpriseVenue, Facade, Node, type Places, } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
@@ -3711,13 +3882,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/node' {
|
|
|
3711
3882
|
import type { EnterpriseLocation, MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
3712
3883
|
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
3713
3884
|
import BaseMetaData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-metadata-object';
|
|
3885
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
3714
3886
|
/**
|
|
3715
3887
|
* A class representing {@link Path} node data within the map.
|
|
3716
3888
|
*
|
|
3717
3889
|
* Nodes are used to define points in the map's pathfinding graph.
|
|
3718
3890
|
*
|
|
3719
3891
|
*/
|
|
3720
|
-
class Node extends BaseMetaData {
|
|
3892
|
+
class Node extends BaseMetaData implements IGeoJSONData {
|
|
3721
3893
|
#private;
|
|
3722
3894
|
/**
|
|
3723
3895
|
* @internal
|
|
@@ -3767,6 +3939,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/node' {
|
|
|
3767
3939
|
* @returns {Node[]} An array of neighboring Node objects.
|
|
3768
3940
|
*/
|
|
3769
3941
|
get neighbors(): Node[];
|
|
3942
|
+
/**
|
|
3943
|
+
* Gets the underlying GeoJSON Feature representation of this Node.
|
|
3944
|
+
*/
|
|
3945
|
+
get geoJSON(): {
|
|
3946
|
+
properties: null;
|
|
3947
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
3948
|
+
geometry: import("@mappedin/mvf").Point;
|
|
3949
|
+
};
|
|
3770
3950
|
/**
|
|
3771
3951
|
* Serializes the node data to JSON.
|
|
3772
3952
|
*
|
|
@@ -3797,6 +3977,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/area' {
|
|
|
3797
3977
|
import { Coordinate, type MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
3798
3978
|
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
3799
3979
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
3980
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
3800
3981
|
/**
|
|
3801
3982
|
* An Area represents some grouping of multiple pieces of geometry, not
|
|
3802
3983
|
* necessarily bounded by walls or any other physical feature of the map.
|
|
@@ -3804,7 +3985,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/area' {
|
|
|
3804
3985
|
* Areas are currently in a preview state, and may have changes to existing
|
|
3805
3986
|
* functionality or new features added in the future.
|
|
3806
3987
|
*/
|
|
3807
|
-
class Area extends BaseMapData {
|
|
3988
|
+
class Area extends BaseMapData implements IGeoJSONData {
|
|
3808
3989
|
#private;
|
|
3809
3990
|
/**
|
|
3810
3991
|
* @internal
|
|
@@ -3859,6 +4040,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/area' {
|
|
|
3859
4040
|
* @throws Will throw an error if the floor is not found.
|
|
3860
4041
|
*/
|
|
3861
4042
|
get floor(): Floor;
|
|
4043
|
+
/**
|
|
4044
|
+
* Gets the underlying GeoJSON Feature representation of this Area.
|
|
4045
|
+
*/
|
|
4046
|
+
get geoJSON(): {
|
|
4047
|
+
properties: null;
|
|
4048
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4049
|
+
geometry: import("@mappedin/mvf").Polygon;
|
|
4050
|
+
};
|
|
3862
4051
|
/**
|
|
3863
4052
|
* Serializes the space data to JSON.
|
|
3864
4053
|
*
|
|
@@ -3885,6 +4074,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door' {
|
|
|
3885
4074
|
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
3886
4075
|
import type { MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
3887
4076
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
4077
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
3888
4078
|
/**
|
|
3889
4079
|
* A class representing door data within the map.
|
|
3890
4080
|
*
|
|
@@ -3913,7 +4103,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door' {
|
|
|
3913
4103
|
* Refer to the [Textures & Colors Guide](https://developer.mappedin.com/web-sdk/images-textures#textures--colors) for more information and interactive examples.
|
|
3914
4104
|
*
|
|
3915
4105
|
*/
|
|
3916
|
-
class Door extends BaseMapData {
|
|
4106
|
+
class Door extends BaseMapData implements IGeoJSONData {
|
|
3917
4107
|
#private;
|
|
3918
4108
|
/**
|
|
3919
4109
|
* @internal
|
|
@@ -3972,6 +4162,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door' {
|
|
|
3972
4162
|
* Gets whether this door is an exterior door.
|
|
3973
4163
|
*/
|
|
3974
4164
|
get isExterior(): boolean;
|
|
4165
|
+
/**
|
|
4166
|
+
* Gets the underlying GeoJSON Feature representation of this Door.
|
|
4167
|
+
*/
|
|
4168
|
+
get geoJSON(): {
|
|
4169
|
+
properties: null;
|
|
4170
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4171
|
+
geometry: import("@mappedin/mvf").LineString;
|
|
4172
|
+
};
|
|
3975
4173
|
/**
|
|
3976
4174
|
* Converts the door information to a JSON object.
|
|
3977
4175
|
*
|
|
@@ -4004,6 +4202,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space' {
|
|
|
4004
4202
|
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
4005
4203
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
4006
4204
|
import type Door from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door';
|
|
4205
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
4007
4206
|
/**
|
|
4008
4207
|
* Represents the various types of spaces that can be defined within a map.
|
|
4009
4208
|
* - 'room': A standard room or enclosed area.
|
|
@@ -4021,7 +4220,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space' {
|
|
|
4021
4220
|
*
|
|
4022
4221
|
* Refer to the [Spaces Guide](https://developer.mappedin.com/web-sdk/spaces) for more information and interactive examples.
|
|
4023
4222
|
*/
|
|
4024
|
-
class Space extends BaseMapData {
|
|
4223
|
+
class Space extends BaseMapData implements IGeoJSONData {
|
|
4025
4224
|
#private;
|
|
4026
4225
|
/**
|
|
4027
4226
|
* @internal
|
|
@@ -4031,6 +4230,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space' {
|
|
|
4031
4230
|
* @internal
|
|
4032
4231
|
*/
|
|
4033
4232
|
readonly __type = "space";
|
|
4233
|
+
getMvfData(): import("@mappedin/mvf").Feature<import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString | import("@mappedin/mvf").Point, import("@mappedin/mvf").SpaceProperties>;
|
|
4034
4234
|
/**
|
|
4035
4235
|
* Checks if the provided instance is of type Space.
|
|
4036
4236
|
*
|
|
@@ -4092,6 +4292,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space' {
|
|
|
4092
4292
|
* @returns {Coordinate} The space's center coordinate.
|
|
4093
4293
|
*/
|
|
4094
4294
|
get center(): Coordinate;
|
|
4295
|
+
/**
|
|
4296
|
+
* Gets the underlying GeoJSON Feature representation of this Space.
|
|
4297
|
+
*/
|
|
4298
|
+
get geoJSON(): {
|
|
4299
|
+
properties: null;
|
|
4300
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4301
|
+
geometry: import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString | import("@mappedin/mvf").Point;
|
|
4302
|
+
};
|
|
4095
4303
|
/**
|
|
4096
4304
|
* Serializes the space data to JSON.
|
|
4097
4305
|
*
|
|
@@ -4351,6 +4559,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/object' {
|
|
|
4351
4559
|
import type { MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
4352
4560
|
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
4353
4561
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
4562
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
4354
4563
|
/**
|
|
4355
4564
|
* A class representing generic map object data within the map.
|
|
4356
4565
|
*
|
|
@@ -4359,7 +4568,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/object' {
|
|
|
4359
4568
|
* MapObject appearance can be customized by changing the color or adding a texture to its top or sides.
|
|
4360
4569
|
* Refer to the [Textures & Colors Guide](https://developer.mappedin.com/web-sdk/images-textures#textures--colors) for more information and interactive examples.
|
|
4361
4570
|
*/
|
|
4362
|
-
export class MapObject extends BaseMapData {
|
|
4571
|
+
export class MapObject extends BaseMapData implements IGeoJSONData {
|
|
4363
4572
|
#private;
|
|
4364
4573
|
/**
|
|
4365
4574
|
* @internal
|
|
@@ -4420,6 +4629,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/object' {
|
|
|
4420
4629
|
* @returns {Coordinate} The object's center coordinate.
|
|
4421
4630
|
*/
|
|
4422
4631
|
get center(): Coordinate;
|
|
4632
|
+
/**
|
|
4633
|
+
* Gets the underlying GeoJSON Feature representation of this Object.
|
|
4634
|
+
*/
|
|
4635
|
+
get geoJSON(): {
|
|
4636
|
+
properties: null;
|
|
4637
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4638
|
+
geometry: import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString;
|
|
4639
|
+
};
|
|
4423
4640
|
/**
|
|
4424
4641
|
* Serializes the MapObject data to JSON.
|
|
4425
4642
|
*
|
|
@@ -4522,13 +4739,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/poi' {
|
|
|
4522
4739
|
import type { Floor, MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
4523
4740
|
import Coordinate from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/coordinate';
|
|
4524
4741
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
4742
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
4525
4743
|
/**
|
|
4526
4744
|
* A class representing point of interest data within the map.
|
|
4527
4745
|
*
|
|
4528
4746
|
* Points of interest are used to represent specific points
|
|
4529
4747
|
* on the map with additional information(e.g. ATMs, Water Fountains).
|
|
4530
4748
|
*/
|
|
4531
|
-
class PointOfInterest extends BaseMapData {
|
|
4749
|
+
class PointOfInterest extends BaseMapData implements IGeoJSONData {
|
|
4532
4750
|
#private;
|
|
4533
4751
|
/**
|
|
4534
4752
|
* @internal
|
|
@@ -4583,6 +4801,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/poi' {
|
|
|
4583
4801
|
* @returns {string} The external ID of the POI.
|
|
4584
4802
|
*/
|
|
4585
4803
|
get externalId(): string;
|
|
4804
|
+
/**
|
|
4805
|
+
* Gets the underlying GeoJSON Feature representation of this PointOfInterest.
|
|
4806
|
+
*/
|
|
4807
|
+
get geoJSON(): {
|
|
4808
|
+
properties: null;
|
|
4809
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4810
|
+
geometry: Point;
|
|
4811
|
+
};
|
|
4586
4812
|
/**
|
|
4587
4813
|
* Serializes the POI data to JSON.
|
|
4588
4814
|
*
|
|
@@ -4613,6 +4839,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/annotatio
|
|
|
4613
4839
|
import type { Floor, MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
4614
4840
|
import Coordinate from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/coordinate';
|
|
4615
4841
|
import BaseMapData from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/base-object';
|
|
4842
|
+
import type { IGeoJSONData } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types';
|
|
4616
4843
|
/**
|
|
4617
4844
|
* A class representing annotation data within the map.
|
|
4618
4845
|
*
|
|
@@ -4620,7 +4847,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/annotatio
|
|
|
4620
4847
|
* It includes some details on a map that may be relevant to safety or accessibility (e.g. Fire Extinguishers).
|
|
4621
4848
|
* Refer to the [Annotation Guide](https://developer.mappedin.com/web-sdk/annotations) for more information.
|
|
4622
4849
|
*/
|
|
4623
|
-
class Annotation extends BaseMapData {
|
|
4850
|
+
class Annotation extends BaseMapData implements IGeoJSONData {
|
|
4624
4851
|
#private;
|
|
4625
4852
|
/**
|
|
4626
4853
|
* @internal
|
|
@@ -4675,6 +4902,14 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/annotatio
|
|
|
4675
4902
|
* @throws Will throw an error if the floor is not found.
|
|
4676
4903
|
*/
|
|
4677
4904
|
get floor(): Floor;
|
|
4905
|
+
/**
|
|
4906
|
+
* Gets the underlying GeoJSON Feature representation of this Annotation.
|
|
4907
|
+
*/
|
|
4908
|
+
get geoJSON(): {
|
|
4909
|
+
properties: null;
|
|
4910
|
+
type: import("@mappedin/mvf").FeatureType;
|
|
4911
|
+
geometry: import("@mappedin/mvf").Point;
|
|
4912
|
+
};
|
|
4678
4913
|
/**
|
|
4679
4914
|
* Converts the annotation information to a JSON object.
|
|
4680
4915
|
*
|
|
@@ -5036,9 +5271,9 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/utils/data-creation' {
|
|
|
5036
5271
|
objectEntranceNodeIdsByObstructionId: Record<string, string[]>;
|
|
5037
5272
|
obstructionIdByEntranceId: Record<string, string>;
|
|
5038
5273
|
connectionIdsByLatLon: Record<string, string[]>;
|
|
5039
|
-
mvfSpacesById: Record<string, Feature<
|
|
5274
|
+
mvfSpacesById: Record<string, Feature<import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString | Point, SpaceProperties>>;
|
|
5040
5275
|
mvfNodesById: Record<string, Feature<Point, import("@mappedin/mvf").NodeProperties>>;
|
|
5041
|
-
mvfObstructionById: Record<string, Feature<import("@mappedin/mvf").
|
|
5276
|
+
mvfObstructionById: Record<string, Feature<import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString, import("@mappedin/mvf").ObstructionProperties>>;
|
|
5042
5277
|
mvfFloorsById: Record<string, MVFFloor>;
|
|
5043
5278
|
mvfFloorStacksById: Record<string, MVFFloorStack>;
|
|
5044
5279
|
mvfConnectionsById: Record<string, MVFConnection>;
|
|
@@ -5053,7 +5288,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/utils/data-creation' {
|
|
|
5053
5288
|
[floorId: string]: Feature<Point, import("@mappedin/mvf").NodeProperties>[];
|
|
5054
5289
|
};
|
|
5055
5290
|
mvfSpacesByFloorId: {
|
|
5056
|
-
[floorId: string]: Feature<
|
|
5291
|
+
[floorId: string]: Feature<import("@mappedin/mvf").Polygon | import("@mappedin/mvf").LineString | Point, SpaceProperties>[];
|
|
5057
5292
|
};
|
|
5058
5293
|
mvfPoisByFloorId: {
|
|
5059
5294
|
[floorId: string]: Feature<Point, SpaceProperties>[];
|
|
@@ -5072,51 +5307,6 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/utils/data-creation' {
|
|
|
5072
5307
|
};
|
|
5073
5308
|
}
|
|
5074
5309
|
|
|
5075
|
-
declare module '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/types' {
|
|
5076
|
-
import type Area from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/area';
|
|
5077
|
-
import type Door from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/door';
|
|
5078
|
-
import type Floor from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/floor';
|
|
5079
|
-
import type Space from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/space';
|
|
5080
|
-
import type PointOfInterest from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/poi';
|
|
5081
|
-
import type Annotation from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/annotation';
|
|
5082
|
-
import type Connection from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/connection';
|
|
5083
|
-
import type MapObject from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects/object';
|
|
5084
|
-
import type { EnterpriseLocation as MvfEnterpriseLocation, EnterpriseCategory as MvfEnterpriseCategory, ParsedMVFLocalePack } from '@mappedin/mvf';
|
|
5085
|
-
import type { PartialExcept } from '@mappedin/mvf/dist/locale';
|
|
5086
|
-
import type { LocalePackUrls } from '@packages/internal/mvf-utils';
|
|
5087
|
-
import type { LanguagePackHydrationItem } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
5088
|
-
import type { EnvControl } from '@packages/internal/mvf-utils/mvf-utils';
|
|
5089
|
-
/**
|
|
5090
|
-
* Places are the main objects that can be searched for.
|
|
5091
|
-
*/
|
|
5092
|
-
export type Places = Space | Floor | Door | Connection | MapObject | PointOfInterest | Annotation | Area;
|
|
5093
|
-
export type LocationWithLocale = PartialExcept<MvfEnterpriseLocation, 'id'>;
|
|
5094
|
-
export type CategoryWithLocale = PartialExcept<MvfEnterpriseCategory, 'id'>;
|
|
5095
|
-
export type LanguagePack = {
|
|
5096
|
-
type: 'downloaded';
|
|
5097
|
-
data: ParsedMVFLocalePack;
|
|
5098
|
-
optimized: {
|
|
5099
|
-
locations: Record<string, LocationWithLocale> | undefined;
|
|
5100
|
-
categories: Record<string, CategoryWithLocale> | undefined;
|
|
5101
|
-
};
|
|
5102
|
-
} | {
|
|
5103
|
-
type: 'initial';
|
|
5104
|
-
optimized: {
|
|
5105
|
-
locations: Record<string, MvfEnterpriseLocation>;
|
|
5106
|
-
categories: Record<string, MvfEnterpriseCategory>;
|
|
5107
|
-
};
|
|
5108
|
-
};
|
|
5109
|
-
export type TMapDataInternalOptions = {
|
|
5110
|
-
env?: EnvControl;
|
|
5111
|
-
enterprise?: boolean;
|
|
5112
|
-
outdoorViewToken?: string;
|
|
5113
|
-
localePacksUrls?: LocalePackUrls;
|
|
5114
|
-
languagePacks?: LanguagePackHydrationItem[];
|
|
5115
|
-
binaryBundle?: Uint8Array;
|
|
5116
|
-
sasToken?: string;
|
|
5117
|
-
};
|
|
5118
|
-
}
|
|
5119
|
-
|
|
5120
5310
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/shapes' {
|
|
5121
5311
|
import type { GeojsonApiMapObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object';
|
|
5122
5312
|
import { Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
@@ -5197,6 +5387,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/inspector/insp
|
|
|
5197
5387
|
export type InspectorOption = Partial<InspectorState>;
|
|
5198
5388
|
}
|
|
5199
5389
|
|
|
5390
|
+
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/types' {
|
|
5391
|
+
import type { GeojsonApiMapObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object';
|
|
5392
|
+
export type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
|
|
5393
|
+
}
|
|
5394
|
+
|
|
5200
5395
|
declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
5201
5396
|
import './marker.scss';
|
|
5202
5397
|
import { Vector2 } from 'three';
|
|
@@ -5223,6 +5418,12 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5223
5418
|
* Whether the marker is enabled
|
|
5224
5419
|
*/
|
|
5225
5420
|
enabled: boolean;
|
|
5421
|
+
/**
|
|
5422
|
+
* Whether the label is visible IF is is enabled
|
|
5423
|
+
* this can be used to have more granular control of whether the label shows up,
|
|
5424
|
+
* for example, if someone implements a layer system that shows/hides
|
|
5425
|
+
*/
|
|
5426
|
+
visible: boolean;
|
|
5226
5427
|
/**
|
|
5227
5428
|
* HTML content of the marker as text
|
|
5228
5429
|
*/
|
|
@@ -5250,6 +5451,14 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5250
5451
|
*/
|
|
5251
5452
|
interactive?: boolean | 'pointer-events-auto';
|
|
5252
5453
|
};
|
|
5454
|
+
/**
|
|
5455
|
+
* Anchor point for the marker. This will determine the position of the marker relative to the position. A list will place the marker in the first empty placement.
|
|
5456
|
+
*/
|
|
5457
|
+
anchor: MarkerAnchor | MarkerAnchor[];
|
|
5458
|
+
/**
|
|
5459
|
+
* Dynamic resize of the marker. If set to true, the marker will resize based on the content.
|
|
5460
|
+
*/
|
|
5461
|
+
dynamicResize: boolean;
|
|
5253
5462
|
};
|
|
5254
5463
|
export const addMarkerOptionsSchema: z.ZodObject<{
|
|
5255
5464
|
rank: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["low", "medium", "high", "always-visible"]>, z.ZodNumber]>>;
|
|
@@ -5260,15 +5469,15 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5260
5469
|
}, "strip", z.ZodTypeAny, {
|
|
5261
5470
|
interactive?: boolean | "pointer-events-auto" | undefined;
|
|
5262
5471
|
id?: string | undefined;
|
|
5263
|
-
anchor?: "center" | "left" | "right" | "
|
|
5264
|
-
rank?: number | "high" | "low" | "medium" | "always-visible" | undefined;
|
|
5472
|
+
anchor?: "center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | ("center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right")[] | undefined;
|
|
5265
5473
|
dynamicResize?: boolean | undefined;
|
|
5474
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5266
5475
|
}, {
|
|
5267
5476
|
interactive?: boolean | "pointer-events-auto" | undefined;
|
|
5268
5477
|
id?: string | undefined;
|
|
5269
|
-
anchor?: "center" | "left" | "right" | "
|
|
5270
|
-
rank?: number | "high" | "low" | "medium" | "always-visible" | undefined;
|
|
5478
|
+
anchor?: "center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right" | ("center" | "left" | "right" | "top" | "bottom" | "top-left" | "top-right" | "bottom-left" | "bottom-right")[] | undefined;
|
|
5271
5479
|
dynamicResize?: boolean | undefined;
|
|
5480
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5272
5481
|
}>;
|
|
5273
5482
|
export function validateMarker(coordinate: Position, contentHTML: string, options: AddMarkerOptions): void;
|
|
5274
5483
|
export type MarkerAnchor = 'top' | 'bottom' | 'left' | 'right' | 'center' | 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right';
|
|
@@ -5314,6 +5523,11 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5314
5523
|
options: Required<AddMarkerOptions>;
|
|
5315
5524
|
projection: Vector2;
|
|
5316
5525
|
enabled: boolean;
|
|
5526
|
+
/**
|
|
5527
|
+
* Whether the marker can be shown, which is decided by the collision engine
|
|
5528
|
+
*/
|
|
5529
|
+
canShow: boolean;
|
|
5530
|
+
visible: boolean;
|
|
5317
5531
|
offscreen: boolean;
|
|
5318
5532
|
activeStrategyIndex: number;
|
|
5319
5533
|
strategyIndex: number;
|
|
@@ -5335,7 +5549,6 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5335
5549
|
visibilityNeedsUpdate: 'show' | 'hide' | false;
|
|
5336
5550
|
constructor(contentHtml: string, options?: AddMarkerOptions);
|
|
5337
5551
|
updateDimensions(width?: number, height?: number): void;
|
|
5338
|
-
visible: boolean;
|
|
5339
5552
|
animation: Animation | null;
|
|
5340
5553
|
currentStrategyIndex: number;
|
|
5341
5554
|
onStrategySelected: (strategyIndex: number, force?: boolean) => void;
|
|
@@ -5358,7 +5571,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/marker' {
|
|
|
5358
5571
|
|
|
5359
5572
|
declare module '@mappedin/mappedin-js/geojson/src/components/path' {
|
|
5360
5573
|
import { Vector3 } from 'three';
|
|
5361
|
-
import type {
|
|
5574
|
+
import type { BufferGeometry, LineSegments } from 'three';
|
|
5362
5575
|
import type { EntityId, Position } from '@mappedin/mappedin-js/geojson/src/types';
|
|
5363
5576
|
import type { PathMaterial, PatMeshContainer } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
5364
5577
|
import type { FeatureCollection, Point } from 'geojson';
|
|
@@ -5537,7 +5750,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/path' {
|
|
|
5537
5750
|
mesh: PatMeshContainer;
|
|
5538
5751
|
material?: PathMaterial;
|
|
5539
5752
|
geometry?: BufferGeometry;
|
|
5540
|
-
outline?:
|
|
5753
|
+
outline?: LineSegments;
|
|
5541
5754
|
feature: FeatureCollection<Point, PathProperties>;
|
|
5542
5755
|
options: AddPathOptions;
|
|
5543
5756
|
nearRadius: number;
|
|
@@ -5571,7 +5784,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5571
5784
|
import type { EntityId, Position } from '@mappedin/mappedin-js/geojson/src/types';
|
|
5572
5785
|
import type { GroupContainerState } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
5573
5786
|
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
5574
|
-
import type { CollisionRankingTier } from '@mappedin/mappedin-js/geojson/src';
|
|
5787
|
+
import type { CollisionRankingTier, GeometryState } from '@mappedin/mappedin-js/geojson/src';
|
|
5575
5788
|
import { z } from 'zod';
|
|
5576
5789
|
import type { PackedBBoxes } from '@mappedin/mappedin-js/geojson/src/systems/collisions/system';
|
|
5577
5790
|
export const addLabelOptionsSchema: z.ZodObject<{
|
|
@@ -5653,6 +5866,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5653
5866
|
foregroundColor?: string | undefined;
|
|
5654
5867
|
backgroundColor?: string | undefined;
|
|
5655
5868
|
} | undefined;
|
|
5869
|
+
margin?: number | undefined;
|
|
5656
5870
|
marker?: {
|
|
5657
5871
|
size?: number | undefined;
|
|
5658
5872
|
foregroundColor?: {
|
|
@@ -5664,7 +5878,6 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5664
5878
|
inactive?: string | undefined;
|
|
5665
5879
|
} | undefined;
|
|
5666
5880
|
} | undefined;
|
|
5667
|
-
margin?: number | undefined;
|
|
5668
5881
|
}, {
|
|
5669
5882
|
text?: {
|
|
5670
5883
|
size?: number | undefined;
|
|
@@ -5674,6 +5887,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5674
5887
|
foregroundColor?: string | undefined;
|
|
5675
5888
|
backgroundColor?: string | undefined;
|
|
5676
5889
|
} | undefined;
|
|
5890
|
+
margin?: number | undefined;
|
|
5677
5891
|
marker?: {
|
|
5678
5892
|
size?: number | undefined;
|
|
5679
5893
|
foregroundColor?: {
|
|
@@ -5685,11 +5899,10 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5685
5899
|
inactive?: string | undefined;
|
|
5686
5900
|
} | undefined;
|
|
5687
5901
|
} | undefined;
|
|
5688
|
-
margin?: number | undefined;
|
|
5689
5902
|
}>>;
|
|
5690
5903
|
}, "strip", z.ZodTypeAny, {
|
|
5691
5904
|
interactive?: boolean | undefined;
|
|
5692
|
-
rank?: number | "
|
|
5905
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5693
5906
|
appearance?: {
|
|
5694
5907
|
text?: {
|
|
5695
5908
|
size?: number | undefined;
|
|
@@ -5699,6 +5912,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5699
5912
|
foregroundColor?: string | undefined;
|
|
5700
5913
|
backgroundColor?: string | undefined;
|
|
5701
5914
|
} | undefined;
|
|
5915
|
+
margin?: number | undefined;
|
|
5702
5916
|
marker?: {
|
|
5703
5917
|
size?: number | undefined;
|
|
5704
5918
|
foregroundColor?: {
|
|
@@ -5710,11 +5924,10 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5710
5924
|
inactive?: string | undefined;
|
|
5711
5925
|
} | undefined;
|
|
5712
5926
|
} | undefined;
|
|
5713
|
-
margin?: number | undefined;
|
|
5714
5927
|
} | undefined;
|
|
5715
5928
|
}, {
|
|
5716
5929
|
interactive?: boolean | undefined;
|
|
5717
|
-
rank?: number | "
|
|
5930
|
+
rank?: number | "low" | "medium" | "high" | "always-visible" | undefined;
|
|
5718
5931
|
appearance?: {
|
|
5719
5932
|
text?: {
|
|
5720
5933
|
size?: number | undefined;
|
|
@@ -5724,6 +5937,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5724
5937
|
foregroundColor?: string | undefined;
|
|
5725
5938
|
backgroundColor?: string | undefined;
|
|
5726
5939
|
} | undefined;
|
|
5940
|
+
margin?: number | undefined;
|
|
5727
5941
|
marker?: {
|
|
5728
5942
|
size?: number | undefined;
|
|
5729
5943
|
foregroundColor?: {
|
|
@@ -5735,10 +5949,9 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5735
5949
|
inactive?: string | undefined;
|
|
5736
5950
|
} | undefined;
|
|
5737
5951
|
} | undefined;
|
|
5738
|
-
margin?: number | undefined;
|
|
5739
5952
|
} | undefined;
|
|
5740
5953
|
}>;
|
|
5741
|
-
export function validateLabel(coordinate: Position
|
|
5954
|
+
export function validateLabel(coordinate: Position | EntityId<GeometryState>, text: string, options: AddLabelOptions): void;
|
|
5742
5955
|
export const labelThemes: {
|
|
5743
5956
|
lightOnDark: {
|
|
5744
5957
|
text: {
|
|
@@ -5996,6 +6209,12 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
5996
6209
|
* Whether the label is enabled
|
|
5997
6210
|
*/
|
|
5998
6211
|
enabled: boolean;
|
|
6212
|
+
/**
|
|
6213
|
+
* Whether the label is visible IF is is enabled
|
|
6214
|
+
* this can be used to have more granular control of whether the label shows up,
|
|
6215
|
+
* for example, if someone implements a layer system that shows/hides,
|
|
6216
|
+
*/
|
|
6217
|
+
visible: boolean;
|
|
5999
6218
|
/**
|
|
6000
6219
|
* Text content of the label
|
|
6001
6220
|
*/
|
|
@@ -6031,6 +6250,10 @@ declare module '@mappedin/mappedin-js/geojson/src/components/label' {
|
|
|
6031
6250
|
visible: boolean;
|
|
6032
6251
|
enabled: boolean;
|
|
6033
6252
|
offscreen: boolean;
|
|
6253
|
+
/**
|
|
6254
|
+
* Whether the label can be shown, which is decided by the collision engine
|
|
6255
|
+
*/
|
|
6256
|
+
canShow: boolean;
|
|
6034
6257
|
activeBoundingBox: {
|
|
6035
6258
|
x: number;
|
|
6036
6259
|
y: number;
|
|
@@ -6082,9 +6305,12 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/group-container' {
|
|
|
6082
6305
|
import type { StackComponent } from '@mappedin/mappedin-js/geojson/src/components/stack';
|
|
6083
6306
|
import type { MarkerState } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
6084
6307
|
import type { LabelState } from '@mappedin/mappedin-js/geojson/src/components/label';
|
|
6308
|
+
import type { Geometry3DTypes } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
6085
6309
|
import { Geometry3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
6086
6310
|
import type { PathState } from '@mappedin/mappedin-js/geojson/src/components/path';
|
|
6087
6311
|
import type { InteractionComponent } from '@mappedin/mappedin-js/geojson/src/components/interaction';
|
|
6312
|
+
import type { BatchedText } from '@mappedin/mappedin-js/geojson/src/services/text3d/text3d';
|
|
6313
|
+
import type { EntityTypes } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
6088
6314
|
export enum GroupContainerComponents {
|
|
6089
6315
|
Stack = 0,
|
|
6090
6316
|
Interaction = 1
|
|
@@ -6111,7 +6337,8 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/group-container' {
|
|
|
6111
6337
|
};
|
|
6112
6338
|
export class GroupContainerObject3D extends Object3D {
|
|
6113
6339
|
childrenIds: Set<string | number>;
|
|
6114
|
-
|
|
6340
|
+
children: (GroupContainerObject3D | GeometryGroupObject3D | BatchedText | Geometry2D['object3d'] | NonNullable<Geometry3D['object3d']>)[];
|
|
6341
|
+
readonly type: "group-container";
|
|
6115
6342
|
userData: {
|
|
6116
6343
|
entityId: string | number;
|
|
6117
6344
|
entities2D: Set<string | number>;
|
|
@@ -6119,8 +6346,8 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/group-container' {
|
|
|
6119
6346
|
};
|
|
6120
6347
|
components: [StackComponent?, InteractionComponent?];
|
|
6121
6348
|
constructor(id: string);
|
|
6122
|
-
addEntity(entityGroupOrContainer: GroupContainerObject3D | GeometryGroupObject3D | Geometry2D |
|
|
6123
|
-
removeEntity(entityGroupOrContainer:
|
|
6349
|
+
addEntity(entityGroupOrContainer: GroupContainerObject3D | GeometryGroupObject3D | Geometry2D | Geometry3DTypes): void;
|
|
6350
|
+
removeEntity(entityGroupOrContainer: EntityTypes): void;
|
|
6124
6351
|
setVisible(visible: boolean): void;
|
|
6125
6352
|
setAltitude(altitude: number): void;
|
|
6126
6353
|
get altitude(): number;
|
|
@@ -6200,7 +6427,7 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry-group' {
|
|
|
6200
6427
|
export type ChildUpdatable<T> = T extends LineStyle ? Partial<Pick<LineStyle, 'color' | 'opacity' | 'visible'>> : Partial<Pick<PaintStyle, 'color' | 'opacity' | 'visible'>>;
|
|
6201
6428
|
export class GeometryGroupObject3D extends Object3D {
|
|
6202
6429
|
visible: boolean;
|
|
6203
|
-
readonly type
|
|
6430
|
+
readonly type: "geometry-group";
|
|
6204
6431
|
components: [GeometryGroupStyleComponent];
|
|
6205
6432
|
userData: {
|
|
6206
6433
|
entityId: string | number;
|
|
@@ -6231,7 +6458,8 @@ declare module '@mappedin/mappedin-js/geojson/src/types/geometry' {
|
|
|
6231
6458
|
}
|
|
6232
6459
|
|
|
6233
6460
|
declare module '@mappedin/mappedin-js/geojson/src/types' {
|
|
6234
|
-
import {
|
|
6461
|
+
import type { Camera } from 'three';
|
|
6462
|
+
import { Mesh, Object3D, InstancedMesh } from 'three';
|
|
6235
6463
|
import type { Geometry2D } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
6236
6464
|
import type { Position } from '@mappedin/mappedin-js/geojson/src/types/geometry';
|
|
6237
6465
|
import type { GeometryState } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
@@ -6243,13 +6471,14 @@ declare module '@mappedin/mappedin-js/geojson/src/types' {
|
|
|
6243
6471
|
import type { MarkerState } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
6244
6472
|
import type { ImageState } from '@mappedin/mappedin-js/geojson/src/components/image';
|
|
6245
6473
|
import type { ShapeState } from '@mappedin/mappedin-js/geojson/src/components/custom';
|
|
6246
|
-
import type { Geometry3D } from '@mappedin/mappedin-js/geojson/src/entities';
|
|
6247
6474
|
import type { Group as TweenGroup } from '@tweenjs/tween.js';
|
|
6248
|
-
import { MaterialSide } from '@mappedin/mappedin-js/geojson/src/components/
|
|
6475
|
+
import type { MaterialSide } from '@mappedin/mappedin-js/geojson/src/components/styles';
|
|
6476
|
+
import type { Geometry3DTypes } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
6477
|
+
import type { Text3DState } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
6249
6478
|
/**
|
|
6250
6479
|
* The state of an entity, which can be a geometry, geometry group, group container, path, model, label, or marker.
|
|
6251
6480
|
*/
|
|
6252
|
-
export type EntityState = GeometryState | GeometryGroupState | GroupContainerState | PathState | ModelState | LabelState | MarkerState | ImageState | ShapeState;
|
|
6481
|
+
export type EntityState = GeometryState | GeometryGroupState | GroupContainerState | PathState | ModelState | LabelState | MarkerState | ImageState | Text3DState | ShapeState;
|
|
6253
6482
|
/**
|
|
6254
6483
|
* A wrapper object that contains the ID and type of an entity. This is returned when adding entities to the scene, and can be used
|
|
6255
6484
|
* to `getState` and `setState` of the entity.
|
|
@@ -6516,14 +6745,18 @@ declare module '@mappedin/mappedin-js/geojson/src/types' {
|
|
|
6516
6745
|
export type MapEventPayload<EventName extends keyof MapEvent> = MapEvent[EventName] extends {
|
|
6517
6746
|
data: null;
|
|
6518
6747
|
} ? MapEvent[EventName]['data'] : MapEvent[EventName];
|
|
6519
|
-
|
|
6748
|
+
/**
|
|
6749
|
+
* All entities in 3D
|
|
6750
|
+
*/
|
|
6751
|
+
export type All3DTypes = Geometry3DTypes | GeometryGroupObject3D | GroupContainerObject3D;
|
|
6520
6752
|
export type RendererState = {
|
|
6521
|
-
geometry3DMap: Map<string | number,
|
|
6753
|
+
geometry3DMap: Map<string | number, All3DTypes>;
|
|
6522
6754
|
geometry2DMap: Map<string | number, Geometry2D>;
|
|
6523
6755
|
geometry2DIdsInScene: Set<Geometry2D['id']>;
|
|
6524
|
-
geometry3DIdsInScene: Set<
|
|
6756
|
+
geometry3DIdsInScene: Set<All3DTypes['id']>;
|
|
6525
6757
|
entityScene: GroupContainerObject3D;
|
|
6526
6758
|
hoverColor: string;
|
|
6759
|
+
text3dHoverColor: string;
|
|
6527
6760
|
center?: Position;
|
|
6528
6761
|
insetsPadding: InsetPadding;
|
|
6529
6762
|
shouldMeasureCanvas: boolean;
|
|
@@ -6537,10 +6770,14 @@ declare module '@mappedin/mappedin-js/geojson/src/types' {
|
|
|
6537
6770
|
tweenGroup: TweenGroup;
|
|
6538
6771
|
cameraObject: Camera;
|
|
6539
6772
|
};
|
|
6773
|
+
/**
|
|
6774
|
+
* All of the entities in the scene
|
|
6775
|
+
*/
|
|
6776
|
+
export type EntityTypes = Geometry3DTypes | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D;
|
|
6540
6777
|
}
|
|
6541
6778
|
|
|
6542
6779
|
declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
6543
|
-
import type { Texture, BufferGeometry, LineSegments, Mesh
|
|
6780
|
+
import type { Texture, BufferGeometry, LineSegments, Mesh } from 'three';
|
|
6544
6781
|
import { BatchedMesh, Color, Vector3 } from 'three';
|
|
6545
6782
|
import type { BatchedStandardMaterial } from '@mappedin/mappedin-js/geojson/src/systems/mesh-creation-and-optimization/batched-material';
|
|
6546
6783
|
import type { Position } from '@mappedin/mappedin-js/geojson/src/types';
|
|
@@ -6548,7 +6785,9 @@ declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
|
6548
6785
|
import type { BBox } from '@turf/turf';
|
|
6549
6786
|
import { type ImageProperties } from '@mappedin/mappedin-js/geojson/src/components/image';
|
|
6550
6787
|
import { type BaseTextAreaProperties } from '@mappedin/mvf';
|
|
6788
|
+
import type { Text } from 'troika-three-text';
|
|
6551
6789
|
export class EntityBatchedMesh extends BatchedMesh {
|
|
6790
|
+
type: "entityBatchedMesh";
|
|
6552
6791
|
userData: {
|
|
6553
6792
|
entities: {
|
|
6554
6793
|
[key: number]: string | number;
|
|
@@ -6557,6 +6796,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
|
6557
6796
|
};
|
|
6558
6797
|
}
|
|
6559
6798
|
export type MeshComponentProperties = {
|
|
6799
|
+
id: string;
|
|
6560
6800
|
image?: ImageProperties & {
|
|
6561
6801
|
position: GeoJsonPosition;
|
|
6562
6802
|
path: string;
|
|
@@ -6636,6 +6876,14 @@ declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
|
6636
6876
|
* The top texture URL of the geometry
|
|
6637
6877
|
*/
|
|
6638
6878
|
topTexture?: string;
|
|
6879
|
+
/**
|
|
6880
|
+
* Whether the geometry is currently in hover state or not
|
|
6881
|
+
*/
|
|
6882
|
+
hovered: boolean;
|
|
6883
|
+
/**
|
|
6884
|
+
* The render order of the geometry
|
|
6885
|
+
*/
|
|
6886
|
+
renderOrder?: number;
|
|
6639
6887
|
};
|
|
6640
6888
|
export class MeshComponent {
|
|
6641
6889
|
#private;
|
|
@@ -6643,7 +6891,11 @@ declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
|
6643
6891
|
focusMesh?: Mesh;
|
|
6644
6892
|
outline?: LineSegments;
|
|
6645
6893
|
imageMesh?: Mesh;
|
|
6646
|
-
|
|
6894
|
+
/**
|
|
6895
|
+
* holds a pointer to space label text if the polygon has label active.
|
|
6896
|
+
*/
|
|
6897
|
+
textMesh?: Text;
|
|
6898
|
+
textEntityId?: string;
|
|
6647
6899
|
readonly type = "geometry";
|
|
6648
6900
|
dirty: boolean;
|
|
6649
6901
|
detached: boolean;
|
|
@@ -6655,7 +6907,8 @@ declare module '@mappedin/mappedin-js/geojson/src/components/mesh' {
|
|
|
6655
6907
|
constructor(feature: Feature<Polygon | LineString | MultiPolygon | MultiLineString, MeshComponentProperties>);
|
|
6656
6908
|
get visible(): boolean;
|
|
6657
6909
|
set visible(visible: boolean);
|
|
6658
|
-
|
|
6910
|
+
get renderOrder(): number;
|
|
6911
|
+
set renderOrder(value: number);
|
|
6659
6912
|
focusable: boolean;
|
|
6660
6913
|
color: Color;
|
|
6661
6914
|
topColor: Color;
|
|
@@ -6984,9 +7237,9 @@ declare module '@mappedin/mappedin-js/geojson/src/components/model' {
|
|
|
6984
7237
|
outline?: LineSegments;
|
|
6985
7238
|
geometry?: Object3D;
|
|
6986
7239
|
material?: BatchedStandardMaterial;
|
|
6987
|
-
feature: Feature<Point>;
|
|
7240
|
+
feature: Feature<Point, ModelProperties>;
|
|
6988
7241
|
instanceIndex?: number;
|
|
6989
|
-
constructor(feature: Feature<Point>);
|
|
7242
|
+
constructor(feature: Feature<Point, ModelProperties>);
|
|
6990
7243
|
visible: boolean;
|
|
6991
7244
|
setOpacity(): void;
|
|
6992
7245
|
color: Color;
|
|
@@ -7005,14 +7258,14 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7005
7258
|
import type { GroupContainerState } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
7006
7259
|
import { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
7007
7260
|
import { PubSub } from '@mappedin/mappedin-js/packages/common/pubsub';
|
|
7261
|
+
import { Renderer } from '@mappedin/mappedin-js/geojson/src/services/renderer';
|
|
7008
7262
|
import { CollisionSystem } from '@mappedin/mappedin-js/geojson/src/systems/collisions/system';
|
|
7009
7263
|
import { InteractionSystem } from '@mappedin/mappedin-js/geojson/src/systems/interactions';
|
|
7010
|
-
import { ZoomInterpolationSystem } from '@mappedin/mappedin-js/geojson/src/systems/zoom-interpolation/zoom-interpolation';
|
|
7011
7264
|
import type { AddMarkerOptions, MarkerState } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
7012
7265
|
import type { GLTFExportOptions } from '@mappedin/mappedin-js/geojson/src/systems/exporter';
|
|
7013
7266
|
import { ExporterSystem } from '@mappedin/mappedin-js/geojson/src/systems/exporter';
|
|
7014
7267
|
import type { AddLabelOptions, LabelState } from '@mappedin/mappedin-js/geojson/src/components/label';
|
|
7015
|
-
import type { LineStyle, PaintStyle, RendererCoreOptions, Position, ModelProperties, ModelStyle, EntityState, EntityId, MapEvent, MapEventPayload, RendererState } from '@mappedin/mappedin-js/geojson/src/types';
|
|
7268
|
+
import type { LineStyle, PaintStyle, RendererCoreOptions, Position, ModelProperties, ModelStyle, EntityState, EntityId, MapEvent, MapEventPayload, RendererState, EntityTypes } from '@mappedin/mappedin-js/geojson/src/types';
|
|
7016
7269
|
import { MeshCreationAndOptimizationSystem } from '@mappedin/mappedin-js/geojson/src/systems/mesh-creation-and-optimization/system';
|
|
7017
7270
|
import { DOMVisibilitySystem } from '@mappedin/mappedin-js/geojson/src/systems/dom-visiblity/system';
|
|
7018
7271
|
import { TwoDProjectionSystem } from '@mappedin/mappedin-js/geojson/src/systems/2d-projection/system';
|
|
@@ -7020,7 +7273,7 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7020
7273
|
import { DrawSystem } from '@mappedin/mappedin-js/geojson/src/systems/draw/system';
|
|
7021
7274
|
import { TwoDVisibilitySystem } from '@mappedin/mappedin-js/geojson/src/systems/2d-visibility/system';
|
|
7022
7275
|
import { RenderSystem } from '@mappedin/mappedin-js/geojson/src/systems/render/system';
|
|
7023
|
-
import type { Position as GeoJsonPosition, FeatureCollection, LineString, MultiPolygon, Polygon, Point, Feature } from 'geojson';
|
|
7276
|
+
import type { Position as GeoJsonPosition, FeatureCollection, LineString, MultiPolygon, Polygon, Point, Feature, BBox } from 'geojson';
|
|
7024
7277
|
import type { AddPathOptions, PathProperties, PathState, PathUpdateState } from '@mappedin/mappedin-js/geojson/src/components/path';
|
|
7025
7278
|
import { StackSystem } from '@mappedin/mappedin-js/geojson/src/systems/stack/system';
|
|
7026
7279
|
import { CameraSystem } from '@mappedin/mappedin-js/geojson/src/systems/camera';
|
|
@@ -7042,11 +7295,13 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7042
7295
|
import { OutdoorLayers } from '@mappedin/mappedin-js/geojson/src/systems/outdoor-layers/system';
|
|
7043
7296
|
import { PathSystem } from '@mappedin/mappedin-js/geojson/src/systems/path';
|
|
7044
7297
|
import { type ImageProperties, type ImageState, type ImageStyle } from '@mappedin/mappedin-js/geojson/src/components/image';
|
|
7298
|
+
import type { AddText3DOptions, Text3DState, UpdatableText3DState } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
7045
7299
|
import { MeshDetachmentSystem } from '@mappedin/mappedin-js/geojson/src/systems/mesh-detachment/system';
|
|
7046
7300
|
import { MeshModificationSystem } from '@mappedin/mappedin-js/geojson/src/systems/mesh-modification/system';
|
|
7047
7301
|
import { PreRenderSystem } from '@mappedin/mappedin-js/geojson/src/systems/pre-render/system';
|
|
7048
|
-
import {
|
|
7302
|
+
import { Text3DSystem } from '@mappedin/mappedin-js/geojson/src/systems/text3d/system';
|
|
7049
7303
|
import { Group as TweenGroup } from '@tweenjs/tween.js';
|
|
7304
|
+
import { Debug } from '@mappedin/mappedin-js/geojson/src/utils/debug';
|
|
7050
7305
|
export type * from '@mappedin/mappedin-js/geojson/src/types';
|
|
7051
7306
|
export const raycaster: Raycaster;
|
|
7052
7307
|
/**
|
|
@@ -7066,7 +7321,6 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7066
7321
|
panBoundsSystem: PanBoundsSystem;
|
|
7067
7322
|
collisionSystem: CollisionSystem;
|
|
7068
7323
|
interactionSystem: InteractionSystem;
|
|
7069
|
-
zoomInterpolationSystem: ZoomInterpolationSystem;
|
|
7070
7324
|
meshOptimizationSystem: MeshCreationAndOptimizationSystem;
|
|
7071
7325
|
domVisiblitySystem: DOMVisibilitySystem;
|
|
7072
7326
|
domMutationSystem: DOMResizeSystem;
|
|
@@ -7089,16 +7343,18 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7089
7343
|
meshDetachmentSystem: MeshDetachmentSystem;
|
|
7090
7344
|
meshModificationSystem: MeshModificationSystem;
|
|
7091
7345
|
preRenderSystem: PreRenderSystem;
|
|
7092
|
-
|
|
7346
|
+
text3DSystem: Text3DSystem;
|
|
7093
7347
|
};
|
|
7094
7348
|
export type MapViewState = {
|
|
7095
7349
|
readonly type: 'map-view';
|
|
7096
|
-
hoverColor
|
|
7350
|
+
hoverColor: string;
|
|
7351
|
+
text3dHoverColor: string;
|
|
7097
7352
|
};
|
|
7098
7353
|
class Core extends PubSub<MapEvent> {
|
|
7099
7354
|
#private;
|
|
7100
7355
|
options: Omit<RendererCoreOptions, 'outdoorView'>;
|
|
7101
7356
|
container: HTMLElement;
|
|
7357
|
+
Debug: Debug;
|
|
7102
7358
|
/**
|
|
7103
7359
|
* The view camera is used for projecting both the outdoor map and our scene
|
|
7104
7360
|
*/
|
|
@@ -7135,7 +7391,7 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7135
7391
|
id: string;
|
|
7136
7392
|
type: string;
|
|
7137
7393
|
};
|
|
7138
|
-
getParentContainer: (parent?: EntityId<GroupContainerState> | string | number | null, defaultToScene?: boolean) => GroupContainerObject3D | undefined;
|
|
7394
|
+
getParentContainer: (parent?: EntityId<GroupContainerState> | EntityId<GeometryState> | string | number | null, defaultToScene?: boolean) => GroupContainerObject3D | undefined;
|
|
7139
7395
|
/**
|
|
7140
7396
|
* Add a custom THREE.js entity to the map. The geometry is placed at the GeoJSON coordinate and includes a `setup` and `update` methods.
|
|
7141
7397
|
* Setup is called when the first time the geometry visible, and update is called every render frame.
|
|
@@ -7158,13 +7414,38 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7158
7414
|
*/
|
|
7159
7415
|
addMarker2D(coordinate: Position, contentHTML: string, options?: AddMarkerOptions, parent?: EntityId<GroupContainerState> | string | number | null): EntityId<MarkerState> | undefined;
|
|
7160
7416
|
/**
|
|
7161
|
-
*
|
|
7162
|
-
|
|
7163
|
-
|
|
7164
|
-
|
|
7165
|
-
*
|
|
7166
|
-
|
|
7167
|
-
|
|
7417
|
+
* Labels an existing 3D geometry with a text area.
|
|
7418
|
+
*
|
|
7419
|
+
* @param meshGeometryId - The ID of the target 3D geometry to label.
|
|
7420
|
+
* @param content - The text content to display.
|
|
7421
|
+
* @param options - Additional options for adding the text label, including:
|
|
7422
|
+
* - parentId: Optional ID of the parent container.
|
|
7423
|
+
* - appearance: Optional appearance settings for the text label.
|
|
7424
|
+
*
|
|
7425
|
+
* @returns An object containing the ID and type of the created or existing text label, or undefined if labeling failed. If geometry is already labeld, the same text id will be returned
|
|
7426
|
+
*
|
|
7427
|
+
* @example
|
|
7428
|
+
* ```typescript
|
|
7429
|
+
* const label = renderer.labelText3D('geometry123', 'Hello World', { parentId: 'parent456', appearance: { color: 'red' } });
|
|
7430
|
+
* if (label) {
|
|
7431
|
+
* console.log(`Label created with ID: ${label.id}`);
|
|
7432
|
+
* }
|
|
7433
|
+
*
|
|
7434
|
+
*/
|
|
7435
|
+
labelText3D(meshGeometryId: string, content: string, options?: AddText3DOptions & {
|
|
7436
|
+
parentId?: string;
|
|
7437
|
+
}): {
|
|
7438
|
+
id: string | number;
|
|
7439
|
+
type: "text3d";
|
|
7440
|
+
} | undefined;
|
|
7441
|
+
/**
|
|
7442
|
+
* Add a 2D label at a GeoJSON coordinate.
|
|
7443
|
+
*/
|
|
7444
|
+
addLabel2D(coordinate: Position, text: string, options?: AddLabelOptions, parent?: EntityId<GroupContainerState> | string | null): EntityId<LabelState> | undefined;
|
|
7445
|
+
/**
|
|
7446
|
+
* Add a Path along a set of GeoJSON coordinates that can be animated.
|
|
7447
|
+
*/
|
|
7448
|
+
addPath(geometry: FeatureCollection<Point, PathProperties>, options?: AddPathOptions, parent?: EntityId<GroupContainerState> | string | null): EntityId<PathState> | undefined;
|
|
7168
7449
|
/**
|
|
7169
7450
|
* Updates the watermark on the map.
|
|
7170
7451
|
*
|
|
@@ -7175,6 +7456,7 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7175
7456
|
* Remove an entity from the renderer and release associated resources.
|
|
7176
7457
|
*/
|
|
7177
7458
|
remove(object: string | number): void;
|
|
7459
|
+
remove(object: EntityTypes): void;
|
|
7178
7460
|
/**
|
|
7179
7461
|
* Show collision boxes for 2D entities for debugging
|
|
7180
7462
|
*/
|
|
@@ -7199,13 +7481,13 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7199
7481
|
* Get the current state of the map view, or any entity that was added, regardless of whether it is visible in the scene
|
|
7200
7482
|
*/
|
|
7201
7483
|
getState(): MapViewState;
|
|
7202
|
-
getState<T extends EntityId<EntityState>>(geometryOrGeometryId: T): T extends EntityId<LabelState> ? LabelState : T extends EntityId<GeometryState> ? GeometryState : T extends EntityId<MarkerState> ? MarkerState : T extends EntityId<GeometryGroupState> ? GeometryGroupState : T extends EntityId<GroupContainerState> ? GroupContainerState : T extends EntityId<ModelState> ? ModelState : T extends EntityId<PathState> ? PathState : T extends EntityId<ShapeState> ? ShapeState : T extends EntityId<ImageState> ? ImageState : EntityState;
|
|
7484
|
+
getState<T extends EntityId<EntityState>>(geometryOrGeometryId: T): T extends EntityId<LabelState> ? LabelState : T extends EntityId<GeometryState> ? GeometryState : T extends EntityId<MarkerState> ? MarkerState : T extends EntityId<GeometryGroupState> ? GeometryGroupState : T extends EntityId<GroupContainerState> ? GroupContainerState : T extends EntityId<ModelState> ? ModelState : T extends EntityId<PathState> ? PathState : T extends EntityId<ShapeState> ? ShapeState : T extends EntityId<ImageState> ? ImageState : T extends EntityId<Text3DState> ? Text3DState : EntityState;
|
|
7203
7485
|
getState(geometryOrGeometryId?: Record<string | number, any> | string | number): EntityState;
|
|
7204
7486
|
getState<T extends EntityState>(geometryOrGeometryId: T['id']): T extends LabelState ? LabelState : T extends GeometryState ? GeometryState : T extends MarkerState ? MarkerState : T extends GeometryGroupState ? GeometryGroupState : T extends GroupContainerState ? GroupContainerState : T extends ModelState ? ModelState : T extends PathState ? PathState : T extends ShapeState ? ShapeState : T extends ImageState ? ImageState : EntityState;
|
|
7205
7487
|
/**
|
|
7206
7488
|
* Set the state of the map view or any entity that was added, regardless of whether it is visible in the scene.
|
|
7207
7489
|
*/
|
|
7208
|
-
setState(object: Partial<MapViewState
|
|
7490
|
+
setState(object: Partial<Omit<MapViewState, 'type'>>): void;
|
|
7209
7491
|
setState<T extends EntityId<LabelState>>(object: T | T['id'], state: Partial<LabelState>): void;
|
|
7210
7492
|
setState<T extends EntityId<MarkerState>>(object: T | T['id'], state: Partial<MarkerState>): void;
|
|
7211
7493
|
setState<T extends EntityId<GeometryGroupState>>(object: T | T['id'], state: Partial<GeometryGroupState>): void;
|
|
@@ -7215,6 +7497,7 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7215
7497
|
setState<T extends EntityId<PathState>>(object: T | T['id'], state: PathUpdateState): void;
|
|
7216
7498
|
setState<T extends EntityId<ModelState>>(object: T | T['id'], state: Partial<ModelState>): void;
|
|
7217
7499
|
setState<T extends EntityId<ImageState>>(object: T | T['id'], state: Partial<ImageState>): void;
|
|
7500
|
+
setState<T extends EntityId<Text3DState>>(object: T | T['id'], state: Partial<UpdatableText3DState>): void;
|
|
7218
7501
|
setState<T extends EntityState>(object: T | T['id'], state: Partial<T>): void;
|
|
7219
7502
|
/**
|
|
7220
7503
|
* Project a screen coordinate to a geographic coordinate
|
|
@@ -7257,6 +7540,10 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7257
7540
|
* Returns the background color of the renderer. Only applies to "standalone mode"
|
|
7258
7541
|
*/
|
|
7259
7542
|
get backgroundColor(): import("three").Color;
|
|
7543
|
+
/**
|
|
7544
|
+
* internal
|
|
7545
|
+
*/
|
|
7546
|
+
getThreeRenderer(): Renderer;
|
|
7260
7547
|
/**
|
|
7261
7548
|
* Returns the current scale of the map in metres per pixel.
|
|
7262
7549
|
*/
|
|
@@ -7268,6 +7555,13 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7268
7555
|
* @param layers The layers to filter out.
|
|
7269
7556
|
*/
|
|
7270
7557
|
hideOutdoorLayersUnderPoint: (point: Position, layers: string[]) => void;
|
|
7558
|
+
/**
|
|
7559
|
+
* Filters out layers at a certain point on the outdoor map. This can be used to hide the outdoor building footprint underneath the 3D geometry.
|
|
7560
|
+
* @param bbox The bounding box to filter layers under.
|
|
7561
|
+
* @param polygons The polygons to filter layers under.
|
|
7562
|
+
* @param layers The layers to filter out.
|
|
7563
|
+
*/
|
|
7564
|
+
hideOutdoorLayersIntersectingPolygons: (bbox: BBox, polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[], layers: string[]) => void;
|
|
7271
7565
|
/**
|
|
7272
7566
|
* Get the center of a geometry or bounding box.
|
|
7273
7567
|
* @param geometryOrBoundingBox Geometry, geometry id, or bounding box to get the center of.
|
|
@@ -7290,13 +7584,13 @@ declare module '@mappedin/mappedin-js/geojson/src/renderer' {
|
|
|
7290
7584
|
* The render happens in an animation frame, not matter how frequently it is called
|
|
7291
7585
|
* @method render
|
|
7292
7586
|
*/
|
|
7293
|
-
render: () =>
|
|
7587
|
+
render: () => Promise<any> | undefined;
|
|
7294
7588
|
/**
|
|
7295
7589
|
* Perform a synchronous render of the scene. This bypasses the animation frame and renders immediately.
|
|
7296
7590
|
*
|
|
7297
7591
|
* Note: Only use this if you have an animation frame setup elsewhere
|
|
7298
7592
|
*/
|
|
7299
|
-
renderSync: () =>
|
|
7593
|
+
renderSync: () => Promise<any>;
|
|
7300
7594
|
/**
|
|
7301
7595
|
* @internal for testing
|
|
7302
7596
|
*/
|
|
@@ -7362,12 +7656,16 @@ declare module '@mappedin/mappedin-js/geojson/src/camera' {
|
|
|
7362
7656
|
duration?: number;
|
|
7363
7657
|
easing?: EasingCurve;
|
|
7364
7658
|
};
|
|
7659
|
+
export type AnimateElevationOptions = AnimationOptions & {
|
|
7660
|
+
interruptible?: boolean;
|
|
7661
|
+
};
|
|
7365
7662
|
export type FocusOnOptions = AnimationOptions & {
|
|
7366
7663
|
bearing?: number;
|
|
7367
7664
|
pitch?: number;
|
|
7368
7665
|
padding?: InsetPaddingOption;
|
|
7369
7666
|
minZoomLevel?: number;
|
|
7370
7667
|
maxZoomLevel?: number;
|
|
7668
|
+
interruptible?: boolean;
|
|
7371
7669
|
};
|
|
7372
7670
|
export type AnimateToOptions = AnimationOptions & {
|
|
7373
7671
|
center?: Position;
|
|
@@ -7375,6 +7673,7 @@ declare module '@mappedin/mappedin-js/geojson/src/camera' {
|
|
|
7375
7673
|
bearing?: number;
|
|
7376
7674
|
pitch?: number;
|
|
7377
7675
|
elevation?: number;
|
|
7676
|
+
interruptible?: boolean;
|
|
7378
7677
|
};
|
|
7379
7678
|
export const ANIMATION_TWEENS: {
|
|
7380
7679
|
linear: (amount: number) => number;
|
|
@@ -7490,7 +7789,7 @@ declare module '@mappedin/mappedin-js/geojson/src/camera' {
|
|
|
7490
7789
|
* @param elevation The new elevation in meters.
|
|
7491
7790
|
* @param options The animation options.
|
|
7492
7791
|
*/
|
|
7493
|
-
animateElevation(elevation: number, options?:
|
|
7792
|
+
animateElevation(elevation: number, options?: AnimateElevationOptions): Promise<void>;
|
|
7494
7793
|
/**
|
|
7495
7794
|
* The padding around the edges of the map when focusing on a set of coordinates.
|
|
7496
7795
|
*/
|
|
@@ -7554,19 +7853,462 @@ declare module '@mappedin/mappedin-js/geojson/src/utils/collision-ranking-tier'
|
|
|
7554
7853
|
export function convertNumberToCollisionRankingTier(rank: number): CollisionRankingTier;
|
|
7555
7854
|
}
|
|
7556
7855
|
|
|
7856
|
+
declare module '@mappedin/mappedin-js/geojson/src/components/text3d' {
|
|
7857
|
+
import type { Position } from '@mappedin/mappedin-js/geojson/src/types';
|
|
7858
|
+
import { z } from 'zod';
|
|
7859
|
+
import type { Feature, Point } from 'geojson';
|
|
7860
|
+
import { Geometry3DObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
7861
|
+
import type { BatchedText, Text } from '@mappedin/mappedin-js/geojson/src/services/text3d/text3d';
|
|
7862
|
+
import type { Text3DStyle } from '@mappedin/mappedin-js/geojson/src/components/styles';
|
|
7863
|
+
import type { MeshComponentProperties } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
7864
|
+
import type { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
7865
|
+
/**
|
|
7866
|
+
* State representing an Text3D
|
|
7867
|
+
*/
|
|
7868
|
+
export type Text3DState = {
|
|
7869
|
+
readonly id: string | number;
|
|
7870
|
+
readonly type: 'text3d';
|
|
7871
|
+
/**
|
|
7872
|
+
* The position of the Text3D in [lon, lat, altitude]
|
|
7873
|
+
*/
|
|
7874
|
+
readonly position: Position;
|
|
7875
|
+
/**
|
|
7876
|
+
* Whether the Text3D is visible
|
|
7877
|
+
*/
|
|
7878
|
+
visible: boolean;
|
|
7879
|
+
/**
|
|
7880
|
+
* Attempt to keep the Text3D facing the camera as much as possible
|
|
7881
|
+
*/
|
|
7882
|
+
flipToFaceCamera: boolean;
|
|
7883
|
+
/**
|
|
7884
|
+
* Content of the text3d
|
|
7885
|
+
*/
|
|
7886
|
+
content: string;
|
|
7887
|
+
} & Text3DStyle;
|
|
7888
|
+
export const text3DStateSchema: z.ZodObject<{
|
|
7889
|
+
visible: z.ZodBoolean;
|
|
7890
|
+
color: z.ZodString;
|
|
7891
|
+
flipToFaceCamera: z.ZodBoolean;
|
|
7892
|
+
font: z.ZodOptional<z.ZodString>;
|
|
7893
|
+
fontSize: z.ZodNumber;
|
|
7894
|
+
margin: z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>;
|
|
7895
|
+
outlineColor: z.ZodString;
|
|
7896
|
+
outlineOpacity: z.ZodNumber;
|
|
7897
|
+
outlineBlur: z.ZodUnion<[z.ZodNumber, z.ZodString]>;
|
|
7898
|
+
outlineWidth: z.ZodNumber;
|
|
7899
|
+
outlineOffsetX: z.ZodNumber;
|
|
7900
|
+
outlineOffsetY: z.ZodNumber;
|
|
7901
|
+
strokeWidth: z.ZodNumber;
|
|
7902
|
+
maxWidth: z.ZodOptional<z.ZodNumber>;
|
|
7903
|
+
maxHeight: z.ZodOptional<z.ZodNumber>;
|
|
7904
|
+
strokeOpacity: z.ZodNumber;
|
|
7905
|
+
strokeColor: z.ZodString;
|
|
7906
|
+
fillOpacity: z.ZodNumber;
|
|
7907
|
+
hoverColor: z.ZodOptional<z.ZodString>;
|
|
7908
|
+
id: z.ZodUnion<[z.ZodString, z.ZodNumber]>;
|
|
7909
|
+
type: z.ZodLiteral<"text3d">;
|
|
7910
|
+
position: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
7911
|
+
content: z.ZodString;
|
|
7912
|
+
}, "strip", z.ZodTypeAny, {
|
|
7913
|
+
type: "text3d";
|
|
7914
|
+
id: string | number;
|
|
7915
|
+
color: string;
|
|
7916
|
+
position: [number, number, number];
|
|
7917
|
+
visible: boolean;
|
|
7918
|
+
flipToFaceCamera: boolean;
|
|
7919
|
+
fontSize: number;
|
|
7920
|
+
margin: number | [number, number, number, number];
|
|
7921
|
+
outlineColor: string;
|
|
7922
|
+
outlineOpacity: number;
|
|
7923
|
+
outlineBlur: string | number;
|
|
7924
|
+
outlineWidth: number;
|
|
7925
|
+
outlineOffsetX: number;
|
|
7926
|
+
outlineOffsetY: number;
|
|
7927
|
+
strokeWidth: number;
|
|
7928
|
+
strokeOpacity: number;
|
|
7929
|
+
strokeColor: string;
|
|
7930
|
+
fillOpacity: number;
|
|
7931
|
+
content: string;
|
|
7932
|
+
maxWidth?: number | undefined;
|
|
7933
|
+
font?: string | undefined;
|
|
7934
|
+
maxHeight?: number | undefined;
|
|
7935
|
+
hoverColor?: string | undefined;
|
|
7936
|
+
}, {
|
|
7937
|
+
type: "text3d";
|
|
7938
|
+
id: string | number;
|
|
7939
|
+
color: string;
|
|
7940
|
+
position: [number, number, number];
|
|
7941
|
+
visible: boolean;
|
|
7942
|
+
flipToFaceCamera: boolean;
|
|
7943
|
+
fontSize: number;
|
|
7944
|
+
margin: number | [number, number, number, number];
|
|
7945
|
+
outlineColor: string;
|
|
7946
|
+
outlineOpacity: number;
|
|
7947
|
+
outlineBlur: string | number;
|
|
7948
|
+
outlineWidth: number;
|
|
7949
|
+
outlineOffsetX: number;
|
|
7950
|
+
outlineOffsetY: number;
|
|
7951
|
+
strokeWidth: number;
|
|
7952
|
+
strokeOpacity: number;
|
|
7953
|
+
strokeColor: string;
|
|
7954
|
+
fillOpacity: number;
|
|
7955
|
+
content: string;
|
|
7956
|
+
maxWidth?: number | undefined;
|
|
7957
|
+
font?: string | undefined;
|
|
7958
|
+
maxHeight?: number | undefined;
|
|
7959
|
+
hoverColor?: string | undefined;
|
|
7960
|
+
}>;
|
|
7961
|
+
/**
|
|
7962
|
+
* @interface
|
|
7963
|
+
*/
|
|
7964
|
+
export type InitializeText3DState = Partial<Omit<Text3DState, 'id' | 'type'>>;
|
|
7965
|
+
export const initializeText3DStateSchema: z.ZodObject<Omit<{
|
|
7966
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
7967
|
+
color: z.ZodOptional<z.ZodString>;
|
|
7968
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
7969
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
7970
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
7971
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
7972
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
7973
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7974
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
7975
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
7976
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
7977
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
7978
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
7979
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
7980
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
7981
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7982
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
7983
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
7984
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
7985
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
7986
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
7987
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
7988
|
+
content: z.ZodOptional<z.ZodString>;
|
|
7989
|
+
}, "type" | "id">, "strict", z.ZodTypeAny, {
|
|
7990
|
+
maxWidth?: number | undefined;
|
|
7991
|
+
color?: string | undefined;
|
|
7992
|
+
position?: [number, number, number] | undefined;
|
|
7993
|
+
visible?: boolean | undefined;
|
|
7994
|
+
flipToFaceCamera?: boolean | undefined;
|
|
7995
|
+
font?: string | undefined;
|
|
7996
|
+
fontSize?: number | undefined;
|
|
7997
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
7998
|
+
outlineColor?: string | undefined;
|
|
7999
|
+
outlineOpacity?: number | undefined;
|
|
8000
|
+
outlineBlur?: string | number | undefined;
|
|
8001
|
+
outlineWidth?: number | undefined;
|
|
8002
|
+
outlineOffsetX?: number | undefined;
|
|
8003
|
+
outlineOffsetY?: number | undefined;
|
|
8004
|
+
strokeWidth?: number | undefined;
|
|
8005
|
+
maxHeight?: number | undefined;
|
|
8006
|
+
strokeOpacity?: number | undefined;
|
|
8007
|
+
strokeColor?: string | undefined;
|
|
8008
|
+
fillOpacity?: number | undefined;
|
|
8009
|
+
hoverColor?: string | undefined;
|
|
8010
|
+
content?: string | undefined;
|
|
8011
|
+
}, {
|
|
8012
|
+
maxWidth?: number | undefined;
|
|
8013
|
+
color?: string | undefined;
|
|
8014
|
+
position?: [number, number, number] | undefined;
|
|
8015
|
+
visible?: boolean | undefined;
|
|
8016
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8017
|
+
font?: string | undefined;
|
|
8018
|
+
fontSize?: number | undefined;
|
|
8019
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8020
|
+
outlineColor?: string | undefined;
|
|
8021
|
+
outlineOpacity?: number | undefined;
|
|
8022
|
+
outlineBlur?: string | number | undefined;
|
|
8023
|
+
outlineWidth?: number | undefined;
|
|
8024
|
+
outlineOffsetX?: number | undefined;
|
|
8025
|
+
outlineOffsetY?: number | undefined;
|
|
8026
|
+
strokeWidth?: number | undefined;
|
|
8027
|
+
maxHeight?: number | undefined;
|
|
8028
|
+
strokeOpacity?: number | undefined;
|
|
8029
|
+
strokeColor?: string | undefined;
|
|
8030
|
+
fillOpacity?: number | undefined;
|
|
8031
|
+
hoverColor?: string | undefined;
|
|
8032
|
+
content?: string | undefined;
|
|
8033
|
+
}>;
|
|
8034
|
+
/**
|
|
8035
|
+
* At this moment updating text margin is not supported
|
|
8036
|
+
* Margin and content update are not handled at the moment.
|
|
8037
|
+
* @interface
|
|
8038
|
+
*/
|
|
8039
|
+
export type UpdatableText3DState = Omit<InitializeText3DState, 'margin' | 'position' | 'content'>;
|
|
8040
|
+
export const updateText3DStateSchema: z.ZodObject<Omit<Omit<{
|
|
8041
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
8042
|
+
color: z.ZodOptional<z.ZodString>;
|
|
8043
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
8044
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8045
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
8046
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
8047
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
8048
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8049
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
8050
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
8051
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
8052
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
8053
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
8054
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8055
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8056
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8057
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
8058
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8059
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8060
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
8061
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
8062
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
8063
|
+
content: z.ZodOptional<z.ZodString>;
|
|
8064
|
+
}, "type" | "id">, "maxWidth" | "position" | "margin" | "maxHeight" | "content">, "strict", z.ZodTypeAny, {
|
|
8065
|
+
color?: string | undefined;
|
|
8066
|
+
visible?: boolean | undefined;
|
|
8067
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8068
|
+
font?: string | undefined;
|
|
8069
|
+
fontSize?: number | undefined;
|
|
8070
|
+
outlineColor?: string | undefined;
|
|
8071
|
+
outlineOpacity?: number | undefined;
|
|
8072
|
+
outlineBlur?: string | number | undefined;
|
|
8073
|
+
outlineWidth?: number | undefined;
|
|
8074
|
+
outlineOffsetX?: number | undefined;
|
|
8075
|
+
outlineOffsetY?: number | undefined;
|
|
8076
|
+
strokeWidth?: number | undefined;
|
|
8077
|
+
strokeOpacity?: number | undefined;
|
|
8078
|
+
strokeColor?: string | undefined;
|
|
8079
|
+
fillOpacity?: number | undefined;
|
|
8080
|
+
hoverColor?: string | undefined;
|
|
8081
|
+
}, {
|
|
8082
|
+
color?: string | undefined;
|
|
8083
|
+
visible?: boolean | undefined;
|
|
8084
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8085
|
+
font?: string | undefined;
|
|
8086
|
+
fontSize?: number | undefined;
|
|
8087
|
+
outlineColor?: string | undefined;
|
|
8088
|
+
outlineOpacity?: number | undefined;
|
|
8089
|
+
outlineBlur?: string | number | undefined;
|
|
8090
|
+
outlineWidth?: number | undefined;
|
|
8091
|
+
outlineOffsetX?: number | undefined;
|
|
8092
|
+
outlineOffsetY?: number | undefined;
|
|
8093
|
+
strokeWidth?: number | undefined;
|
|
8094
|
+
strokeOpacity?: number | undefined;
|
|
8095
|
+
strokeColor?: string | undefined;
|
|
8096
|
+
fillOpacity?: number | undefined;
|
|
8097
|
+
hoverColor?: string | undefined;
|
|
8098
|
+
}>;
|
|
8099
|
+
export type Text3DProperties = {
|
|
8100
|
+
id: string;
|
|
8101
|
+
content: string;
|
|
8102
|
+
textArea?: MeshComponentProperties['textArea'];
|
|
8103
|
+
};
|
|
8104
|
+
export type AddText3DOptions = {
|
|
8105
|
+
appearance?: Partial<InitializeText3DState>;
|
|
8106
|
+
};
|
|
8107
|
+
export const addText3DOptionsSchema: z.ZodObject<{
|
|
8108
|
+
appearance: z.ZodOptional<z.ZodObject<Omit<{
|
|
8109
|
+
visible: z.ZodOptional<z.ZodBoolean>;
|
|
8110
|
+
color: z.ZodOptional<z.ZodString>;
|
|
8111
|
+
flipToFaceCamera: z.ZodOptional<z.ZodBoolean>;
|
|
8112
|
+
font: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8113
|
+
fontSize: z.ZodOptional<z.ZodNumber>;
|
|
8114
|
+
margin: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>;
|
|
8115
|
+
outlineColor: z.ZodOptional<z.ZodString>;
|
|
8116
|
+
outlineOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8117
|
+
outlineBlur: z.ZodOptional<z.ZodUnion<[z.ZodNumber, z.ZodString]>>;
|
|
8118
|
+
outlineWidth: z.ZodOptional<z.ZodNumber>;
|
|
8119
|
+
outlineOffsetX: z.ZodOptional<z.ZodNumber>;
|
|
8120
|
+
outlineOffsetY: z.ZodOptional<z.ZodNumber>;
|
|
8121
|
+
strokeWidth: z.ZodOptional<z.ZodNumber>;
|
|
8122
|
+
maxWidth: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8123
|
+
maxHeight: z.ZodOptional<z.ZodOptional<z.ZodNumber>>;
|
|
8124
|
+
strokeOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8125
|
+
strokeColor: z.ZodOptional<z.ZodString>;
|
|
8126
|
+
fillOpacity: z.ZodOptional<z.ZodNumber>;
|
|
8127
|
+
hoverColor: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
8128
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodNumber]>>;
|
|
8129
|
+
type: z.ZodOptional<z.ZodLiteral<"text3d">>;
|
|
8130
|
+
position: z.ZodOptional<z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>>;
|
|
8131
|
+
content: z.ZodOptional<z.ZodString>;
|
|
8132
|
+
}, "type" | "id">, "strict", z.ZodTypeAny, {
|
|
8133
|
+
maxWidth?: number | undefined;
|
|
8134
|
+
color?: string | undefined;
|
|
8135
|
+
position?: [number, number, number] | undefined;
|
|
8136
|
+
visible?: boolean | undefined;
|
|
8137
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8138
|
+
font?: string | undefined;
|
|
8139
|
+
fontSize?: number | undefined;
|
|
8140
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8141
|
+
outlineColor?: string | undefined;
|
|
8142
|
+
outlineOpacity?: number | undefined;
|
|
8143
|
+
outlineBlur?: string | number | undefined;
|
|
8144
|
+
outlineWidth?: number | undefined;
|
|
8145
|
+
outlineOffsetX?: number | undefined;
|
|
8146
|
+
outlineOffsetY?: number | undefined;
|
|
8147
|
+
strokeWidth?: number | undefined;
|
|
8148
|
+
maxHeight?: number | undefined;
|
|
8149
|
+
strokeOpacity?: number | undefined;
|
|
8150
|
+
strokeColor?: string | undefined;
|
|
8151
|
+
fillOpacity?: number | undefined;
|
|
8152
|
+
hoverColor?: string | undefined;
|
|
8153
|
+
content?: string | undefined;
|
|
8154
|
+
}, {
|
|
8155
|
+
maxWidth?: number | undefined;
|
|
8156
|
+
color?: string | undefined;
|
|
8157
|
+
position?: [number, number, number] | undefined;
|
|
8158
|
+
visible?: boolean | undefined;
|
|
8159
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8160
|
+
font?: string | undefined;
|
|
8161
|
+
fontSize?: number | undefined;
|
|
8162
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8163
|
+
outlineColor?: string | undefined;
|
|
8164
|
+
outlineOpacity?: number | undefined;
|
|
8165
|
+
outlineBlur?: string | number | undefined;
|
|
8166
|
+
outlineWidth?: number | undefined;
|
|
8167
|
+
outlineOffsetX?: number | undefined;
|
|
8168
|
+
outlineOffsetY?: number | undefined;
|
|
8169
|
+
strokeWidth?: number | undefined;
|
|
8170
|
+
maxHeight?: number | undefined;
|
|
8171
|
+
strokeOpacity?: number | undefined;
|
|
8172
|
+
strokeColor?: string | undefined;
|
|
8173
|
+
fillOpacity?: number | undefined;
|
|
8174
|
+
hoverColor?: string | undefined;
|
|
8175
|
+
content?: string | undefined;
|
|
8176
|
+
}>>;
|
|
8177
|
+
parentId: z.ZodOptional<z.ZodString>;
|
|
8178
|
+
}, "strict", z.ZodTypeAny, {
|
|
8179
|
+
parentId?: string | undefined;
|
|
8180
|
+
appearance?: {
|
|
8181
|
+
maxWidth?: number | undefined;
|
|
8182
|
+
color?: string | undefined;
|
|
8183
|
+
position?: [number, number, number] | undefined;
|
|
8184
|
+
visible?: boolean | undefined;
|
|
8185
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8186
|
+
font?: string | undefined;
|
|
8187
|
+
fontSize?: number | undefined;
|
|
8188
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8189
|
+
outlineColor?: string | undefined;
|
|
8190
|
+
outlineOpacity?: number | undefined;
|
|
8191
|
+
outlineBlur?: string | number | undefined;
|
|
8192
|
+
outlineWidth?: number | undefined;
|
|
8193
|
+
outlineOffsetX?: number | undefined;
|
|
8194
|
+
outlineOffsetY?: number | undefined;
|
|
8195
|
+
strokeWidth?: number | undefined;
|
|
8196
|
+
maxHeight?: number | undefined;
|
|
8197
|
+
strokeOpacity?: number | undefined;
|
|
8198
|
+
strokeColor?: string | undefined;
|
|
8199
|
+
fillOpacity?: number | undefined;
|
|
8200
|
+
hoverColor?: string | undefined;
|
|
8201
|
+
content?: string | undefined;
|
|
8202
|
+
} | undefined;
|
|
8203
|
+
}, {
|
|
8204
|
+
parentId?: string | undefined;
|
|
8205
|
+
appearance?: {
|
|
8206
|
+
maxWidth?: number | undefined;
|
|
8207
|
+
color?: string | undefined;
|
|
8208
|
+
position?: [number, number, number] | undefined;
|
|
8209
|
+
visible?: boolean | undefined;
|
|
8210
|
+
flipToFaceCamera?: boolean | undefined;
|
|
8211
|
+
font?: string | undefined;
|
|
8212
|
+
fontSize?: number | undefined;
|
|
8213
|
+
margin?: number | [number, number, number, number] | undefined;
|
|
8214
|
+
outlineColor?: string | undefined;
|
|
8215
|
+
outlineOpacity?: number | undefined;
|
|
8216
|
+
outlineBlur?: string | number | undefined;
|
|
8217
|
+
outlineWidth?: number | undefined;
|
|
8218
|
+
outlineOffsetX?: number | undefined;
|
|
8219
|
+
outlineOffsetY?: number | undefined;
|
|
8220
|
+
strokeWidth?: number | undefined;
|
|
8221
|
+
maxHeight?: number | undefined;
|
|
8222
|
+
strokeOpacity?: number | undefined;
|
|
8223
|
+
strokeColor?: string | undefined;
|
|
8224
|
+
fillOpacity?: number | undefined;
|
|
8225
|
+
hoverColor?: string | undefined;
|
|
8226
|
+
content?: string | undefined;
|
|
8227
|
+
} | undefined;
|
|
8228
|
+
}>;
|
|
8229
|
+
export class Text3DComponent {
|
|
8230
|
+
mesh: Geometry3DObject3D;
|
|
8231
|
+
textMesh?: Text;
|
|
8232
|
+
readonly type = "text3d";
|
|
8233
|
+
feature: Feature<Point, Text3DProperties>;
|
|
8234
|
+
constructor(feature: Feature<Point, Text3DProperties>);
|
|
8235
|
+
get visible(): boolean;
|
|
8236
|
+
set visible(visible: boolean);
|
|
8237
|
+
parent?: GroupContainerObject3D;
|
|
8238
|
+
batchedText?: BatchedText;
|
|
8239
|
+
/**
|
|
8240
|
+
* if this Text3DComponent is a polygon label, populate this id with the polygon entity id
|
|
8241
|
+
* This id is used to prevent drawing text for the same polygon.
|
|
8242
|
+
*/
|
|
8243
|
+
polygonEntityId?: string;
|
|
8244
|
+
}
|
|
8245
|
+
}
|
|
8246
|
+
|
|
8247
|
+
declare module '@mappedin/mappedin-js/geojson/src/entities/utils' {
|
|
8248
|
+
import type { CollisionRankingTier, GeometryState, LabelState, RendererCore } from '@mappedin/mappedin-js/geojson/src';
|
|
8249
|
+
import { type MarkerState } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
8250
|
+
import type { PathUpdateState } from '@mappedin/mappedin-js/geojson/src/components/path';
|
|
8251
|
+
import type { EntityTypes, All3DTypes, Position, RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
8252
|
+
import type { KeysOfUnion } from '@mappedin/mappedin-js/geojson/src/utils';
|
|
8253
|
+
import { GeometryGroupObject3D, type GeometryGroupState } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
8254
|
+
import { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
8255
|
+
import { Geometry3D, Geometry3DObject3D, type Geometry3DTypes, type TextGeometry3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
8256
|
+
import { Geometry2D, Geometry2DObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
8257
|
+
import type { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles/style';
|
|
8258
|
+
import type { GeometryGroupStyleComponent } from '@mappedin/mappedin-js/geojson/src/components/geometry-group-style';
|
|
8259
|
+
import { type Text3DState, type UpdatableText3DState } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
8260
|
+
export function updateInteractivity(entity: All3DTypes | Geometry2D, update: boolean | undefined, state: RendererState): boolean;
|
|
8261
|
+
export function updateGroupColor(entity: GeometryGroupObject3D, state: RendererState, update: Partial<Pick<GeometryGroupState, 'color' | 'topColor'>>): boolean | undefined;
|
|
8262
|
+
export function updateGroupShading(entity: GeometryGroupObject3D, update?: GeometryGroupState['shading']): boolean;
|
|
8263
|
+
export function updateImageProps(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
8264
|
+
export function updateHeight(entity: Geometry3D | GeometryGroupObject3D, state: RendererState, update?: number): boolean;
|
|
8265
|
+
export function updateColor(entity: Geometry3DTypes | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
8266
|
+
export function updatePosition(entity: EntityTypes, update: Position | undefined, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): void;
|
|
8267
|
+
export function updateParent(entity: EntityTypes, update: GroupContainerObject3D | undefined): boolean;
|
|
8268
|
+
export function updateEnabled(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: boolean | undefined): void;
|
|
8269
|
+
export function updateMarker(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<MarkerState> | undefined, state: RendererState): boolean;
|
|
8270
|
+
export function updateRank(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: CollisionRankingTier | undefined): boolean;
|
|
8271
|
+
export function updateLabel(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<LabelState> | undefined, state: RendererState): void;
|
|
8272
|
+
export function updateHoverColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: string): void;
|
|
8273
|
+
/** Sets a geometry to be in hovered state, until manually unset or the user interacts with it. */
|
|
8274
|
+
export function updateHovered(entity: Geometry3D, update?: boolean): boolean;
|
|
8275
|
+
export function updateFlipImageToFaceCamera(entity: EntityTypes, update?: boolean): void;
|
|
8276
|
+
export function updateVisibility(entity: EntityTypes, update?: boolean): boolean;
|
|
8277
|
+
export function updateOpacity(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, state: RendererState, update?: number): boolean;
|
|
8278
|
+
export function updateGroupTexture(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Pick<GeometryGroupStyleComponent, 'texture' | 'topTexture'>): void;
|
|
8279
|
+
export function updateIndividualGeometryTexture(entity: Geometry3D, update?: Pick<StyleComponent, 'texture' | 'topTexture'>): boolean;
|
|
8280
|
+
export function updateIndividualGeometryOpacity(entity: Geometry3D, update?: number): boolean;
|
|
8281
|
+
export function updateAltitude(entity: EntityTypes, update?: number): boolean;
|
|
8282
|
+
export function updateOutline(entity: All3DTypes, update?: boolean): boolean;
|
|
8283
|
+
export function updateFocusable(entity: Geometry3D, update?: boolean): boolean;
|
|
8284
|
+
export function updateIndividualGeometryRenderOrder(entity: Geometry3D, update?: number): boolean;
|
|
8285
|
+
export function handlePathUpdate(geometry: Geometry3DTypes, update: PathUpdateState): void;
|
|
8286
|
+
export function pickPathOptions(update: PathUpdateState): Partial<PathUpdateState>;
|
|
8287
|
+
export function getEntityId(entityOrEntityId: Geometry2D | Geometry3DTypes | Geometry2DObject3D | Geometry3DObject3D | GeometryGroupObject3D | GroupContainerObject3D | string | number): any;
|
|
8288
|
+
export function assetGeometryIsText3D(geometry: Geometry3DTypes): asserts geometry is TextGeometry3D;
|
|
8289
|
+
/**
|
|
8290
|
+
* @internal
|
|
8291
|
+
*/
|
|
8292
|
+
export const TEXT3D_STYLE_UPDATE_PROPS: KeysOfUnion<UpdatableText3DState>[];
|
|
8293
|
+
/**
|
|
8294
|
+
* Handle state update of the text3d geometry.
|
|
8295
|
+
*/
|
|
8296
|
+
export function handleText3DUpdate(geometry: TextGeometry3D, update: Partial<Text3DState>): void;
|
|
8297
|
+
}
|
|
8298
|
+
|
|
7557
8299
|
declare module '@mappedin/mappedin-js/packages/geojson-navigator' {
|
|
7558
8300
|
export * from '@mappedin/mappedin-js/packages/geojson-navigator/src';
|
|
7559
8301
|
}
|
|
7560
8302
|
|
|
7561
8303
|
declare module '@mappedin/mappedin-js/geojson/src/utils' {
|
|
7562
|
-
import type { Box3, Camera as THREECamera } from 'three';
|
|
8304
|
+
import type { Box3, Object3D, Camera as THREECamera } from 'three';
|
|
7563
8305
|
import { Box2 } from 'three';
|
|
7564
8306
|
import { MercatorCoordinate } from '@mappedin/mappedin-js/packages/outdoor-context-v4';
|
|
7565
8307
|
import type { CustomLayerInterface } from '@mappedin/mappedin-js/packages/outdoor-context-v4';
|
|
7566
8308
|
import type { GeometryGroupObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
7567
8309
|
import type { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
7568
8310
|
import type { Geometry2D } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
7569
|
-
import type {
|
|
8311
|
+
import type { Geometry3DTypes } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
7570
8312
|
import type { Position, RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
7571
8313
|
import type { Camera } from '@mappedin/mappedin-js/geojson/src/camera';
|
|
7572
8314
|
export function cartesianToGeographic(centerLat: number, centerLon: number, x: number, y: number): {
|
|
@@ -7577,7 +8319,7 @@ declare module '@mappedin/mappedin-js/geojson/src/utils' {
|
|
|
7577
8319
|
x: number;
|
|
7578
8320
|
y: number;
|
|
7579
8321
|
};
|
|
7580
|
-
export const populateGeometry3DIdsInScene: (tree:
|
|
8322
|
+
export const populateGeometry3DIdsInScene: (tree: GroupContainerObject3D["children"][0] | Object3D, entities: RendererState["geometry3DIdsInScene"]) => Set<string | number>;
|
|
7581
8323
|
export const populateGeometry2DIdsInScene: (tree: any, entities: Set<Geometry2D["id"]>) => Set<string | number>;
|
|
7582
8324
|
export function convertMapLibreStylePaintProps(paint: any): {
|
|
7583
8325
|
color: any;
|
|
@@ -7633,7 +8375,7 @@ declare module '@mappedin/mappedin-js/geojson/src/utils' {
|
|
|
7633
8375
|
* so OR = CO * tan(F/2)
|
|
7634
8376
|
*/
|
|
7635
8377
|
export function getProjectionScaleFactor(FOV: number, canvasHeight: number, zoom: number): number;
|
|
7636
|
-
export function getGeometryByGeometryId(state: RendererState, geometryOrGeometryId?: string | number | Record<string, any>):
|
|
8378
|
+
export function getGeometryByGeometryId(state: RendererState, geometryOrGeometryId?: string | number | Record<string, any>): Geometry3DTypes | GeometryGroupObject3D | GroupContainerObject3D | Geometry2D | undefined;
|
|
7637
8379
|
export function getBoundingBoxCenter(bbox: Position[]): [number, number];
|
|
7638
8380
|
export { getCornersOfBoundingBox } from '@mappedin/mappedin-js/geojson/src/utils/bounding-box';
|
|
7639
8381
|
export function isFiniteBox(box: Box2 | Box3): boolean;
|
|
@@ -7642,6 +8384,7 @@ declare module '@mappedin/mappedin-js/geojson/src/utils' {
|
|
|
7642
8384
|
export { shouldDisableOffscreenCanvas } from '@mappedin/mappedin-js/geojson/src/utils/browser';
|
|
7643
8385
|
export { noop, pick, isEmpty, type KeysOfUnion } from '@mappedin/mappedin-js/geojson/src/utils/fp';
|
|
7644
8386
|
export { transformRequest } from '@mappedin/mappedin-js/geojson/src/utils/tranform-request';
|
|
8387
|
+
export { normalizeAngle } from '@mappedin/mappedin-js/geojson/src/utils/math';
|
|
7645
8388
|
}
|
|
7646
8389
|
|
|
7647
8390
|
declare module '@mappedin/mappedin-js/geojson/src/utils/constants' {
|
|
@@ -7652,56 +8395,26 @@ declare module '@mappedin/mappedin-js/geojson/src/utils/constants' {
|
|
|
7652
8395
|
}
|
|
7653
8396
|
}
|
|
7654
8397
|
|
|
7655
|
-
declare module '@mappedin/mappedin-js/geojson/src/
|
|
7656
|
-
import type
|
|
7657
|
-
|
|
7658
|
-
|
|
7659
|
-
export type TRendererOptions = {
|
|
7660
|
-
alpha: boolean;
|
|
7661
|
-
onWebGLRendererError: (e: Error) => void;
|
|
7662
|
-
xRayPath: boolean;
|
|
8398
|
+
declare module '@mappedin/mappedin-js/geojson/src/utils/debug' {
|
|
8399
|
+
import type Core from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
8400
|
+
const DEFAULT_DEBUG_STATE: {
|
|
8401
|
+
showPolygonLabelTextAreaMesh: boolean;
|
|
7663
8402
|
};
|
|
7664
|
-
export
|
|
7665
|
-
|
|
7666
|
-
|
|
7667
|
-
|
|
7668
|
-
|
|
7669
|
-
|
|
7670
|
-
|
|
7671
|
-
|
|
7672
|
-
/**
|
|
7673
|
-
* Dispose of the renderer and its buffers.
|
|
7674
|
-
*/
|
|
7675
|
-
destroy(): void;
|
|
7676
|
-
/**
|
|
7677
|
-
* Re-render the scene, depending on which parts of the scene have been
|
|
7678
|
-
* invalidated.
|
|
7679
|
-
*
|
|
7680
|
-
* @method render
|
|
7681
|
-
* @param renderTarget {null or WebGLRenderTarget}
|
|
7682
|
-
* @param scene {Scene}
|
|
7683
|
-
* @param sceneCamera {Camera}
|
|
7684
|
-
*/
|
|
7685
|
-
render(scene: Scene, sceneCamera: Camera): void;
|
|
7686
|
-
clear(): void;
|
|
7687
|
-
/**
|
|
7688
|
-
* Set the size of the renderer, composer, and all its internal buffers.
|
|
7689
|
-
*
|
|
7690
|
-
* @method setBufferSize
|
|
7691
|
-
* @param width {number}
|
|
7692
|
-
* @param height {number}
|
|
7693
|
-
*/
|
|
7694
|
-
setBufferSize(width: number, height: number): void;
|
|
7695
|
-
/**
|
|
7696
|
-
* Set the color and opacity that will be drawn behind the scene.
|
|
7697
|
-
*
|
|
7698
|
-
* @method setBackgroundColor
|
|
7699
|
-
* @param color {Color}
|
|
7700
|
-
* @param alpha {number}
|
|
7701
|
-
*/
|
|
7702
|
-
setBackgroundColor(color: any, alpha: any): void;
|
|
7703
|
-
domElement(): HTMLCanvasElement | undefined;
|
|
8403
|
+
export type DebugState = typeof DEFAULT_DEBUG_STATE;
|
|
8404
|
+
export class Debug {
|
|
8405
|
+
state: {
|
|
8406
|
+
showPolygonLabelTextAreaMesh: boolean;
|
|
8407
|
+
};
|
|
8408
|
+
core: Core;
|
|
8409
|
+
constructor(core: Core);
|
|
8410
|
+
update(updateState: Partial<DebugState>): void;
|
|
7704
8411
|
}
|
|
8412
|
+
export {};
|
|
8413
|
+
}
|
|
8414
|
+
|
|
8415
|
+
declare module '@mappedin/mappedin-js/geojson/src/services/test-mode' {
|
|
8416
|
+
export function enableTestMode(): void;
|
|
8417
|
+
export function isTestMode(): boolean;
|
|
7705
8418
|
}
|
|
7706
8419
|
|
|
7707
8420
|
declare module '@mappedin/mappedin-js/geojson/src/systems/watermark/system' {
|
|
@@ -7789,6 +8502,36 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/watermark/system' {
|
|
|
7789
8502
|
}
|
|
7790
8503
|
}
|
|
7791
8504
|
|
|
8505
|
+
declare module '@mappedin/mappedin-js/geojson/src/systems/text3d/system' {
|
|
8506
|
+
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
8507
|
+
import type { RendererCore } from '@mappedin/mappedin-js/geojson/src';
|
|
8508
|
+
import { PubSub } from '@packages/internal/common';
|
|
8509
|
+
import type { BatchedText } from '@mappedin/mappedin-js/geojson/src/services/text3d/text3d';
|
|
8510
|
+
import { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
8511
|
+
import type { Text } from 'troika-three-text';
|
|
8512
|
+
export class Text3DSystem extends PubSub<{
|
|
8513
|
+
render: undefined;
|
|
8514
|
+
}> {
|
|
8515
|
+
textSet: Set<string>;
|
|
8516
|
+
batchedTextMap: Map<GroupContainerObject3D, Promise<BatchedText>>;
|
|
8517
|
+
remove(id: string): void;
|
|
8518
|
+
constructor(rendererState: RendererState, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']);
|
|
8519
|
+
update(cameraRotationRadians: number): Promise<void[]>;
|
|
8520
|
+
showTextAreaMesh(): void;
|
|
8521
|
+
hideTextAreaMesh(): void;
|
|
8522
|
+
}
|
|
8523
|
+
/**
|
|
8524
|
+
* Preload fonts and optionally pre-generate the SDF textures for particular glyphs up front.
|
|
8525
|
+
* This is to avoid ondemand font generation can take long.
|
|
8526
|
+
* @param fontUrl - url of the font file served.
|
|
8527
|
+
* @returns A promise that resolves when the font is loaded
|
|
8528
|
+
*
|
|
8529
|
+
*/
|
|
8530
|
+
export function preloadFont(fontUrl?: string): Promise<string>;
|
|
8531
|
+
export function doesBatchedTextContainsText(batchedText: BatchedText, text: Text): boolean;
|
|
8532
|
+
export const DEFAULT_VERTICAL_OFFSET = 0.5;
|
|
8533
|
+
}
|
|
8534
|
+
|
|
7792
8535
|
declare module '@mappedin/mappedin-js/geojson/src/systems/exporter' {
|
|
7793
8536
|
export { ExporterSystem, type GLTFExportOptions } from '@mappedin/mappedin-js/geojson/src/systems/exporter/exporter';
|
|
7794
8537
|
}
|
|
@@ -7828,15 +8571,21 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/html-controls/system'
|
|
|
7828
8571
|
}
|
|
7829
8572
|
}
|
|
7830
8573
|
|
|
8574
|
+
declare module '@mappedin/mappedin-js/geojson/src/components/styles' {
|
|
8575
|
+
export { StyleComponent, DEFAULT_COLOR, type MaterialSide } from '@mappedin/mappedin-js/geojson/src/components/styles/style';
|
|
8576
|
+
export { Text3DStyleComponent, type Text3DStyle, DEFAULT_TEXT_STYLE } from '@mappedin/mappedin-js/geojson/src/components/styles/text-style';
|
|
8577
|
+
}
|
|
8578
|
+
|
|
7831
8579
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api' {
|
|
7832
|
-
import type {
|
|
8580
|
+
import type { RendererCore, WatermarkOptions } from '@mappedin/core-sdk';
|
|
7833
8581
|
import { type TShow3DMapOptions } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
7834
8582
|
import { WALLS, DOORS } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
7835
8583
|
import type MapData from '@mappedin/mappedin-js/mappedin-js/src/map-data';
|
|
7836
8584
|
import type { FloorStack, MapDataInternal } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
7837
|
-
import { Coordinate, MapObject, Space, Floor, Door } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
8585
|
+
import { Facade, Coordinate, MapObject, Space, Floor, Door } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
7838
8586
|
import type { MapView } from '@mappedin/mappedin-js/mappedin-js/src/map-view';
|
|
7839
|
-
import { Label, Marker,
|
|
8587
|
+
import { Label, Marker, Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
8588
|
+
import { Text3D as Text3DView, type Image } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
7840
8589
|
import { Navigation } from '@mappedin/mappedin-js/mappedin-js/src/navigation';
|
|
7841
8590
|
import type { TGetState, TUpdateState } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
7842
8591
|
import { Camera } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/camera';
|
|
@@ -7852,6 +8601,8 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api' {
|
|
|
7852
8601
|
import { Shapes } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/shapes';
|
|
7853
8602
|
import { Style } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/style';
|
|
7854
8603
|
import Outdoor from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/outdoor';
|
|
8604
|
+
import { type BBox } from 'geojson';
|
|
8605
|
+
import { Text3D } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/text3d';
|
|
7855
8606
|
export class GeoJsonApi {
|
|
7856
8607
|
core: RendererCore;
|
|
7857
8608
|
mapObjects: GeojsonApiMapObject[];
|
|
@@ -7861,10 +8612,15 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api' {
|
|
|
7861
8612
|
};
|
|
7862
8613
|
mapData?: MapData;
|
|
7863
8614
|
currentMap: GeojsonApiMapObject;
|
|
7864
|
-
hiddenOutdoorGeometries: [
|
|
8615
|
+
hiddenOutdoorGeometries: [
|
|
8616
|
+
BBox,
|
|
8617
|
+
polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[],
|
|
8618
|
+
layers: string[]
|
|
8619
|
+
][];
|
|
7865
8620
|
mapView: MapView;
|
|
7866
8621
|
Camera: Camera;
|
|
7867
8622
|
Labels: Labels;
|
|
8623
|
+
Text3D: Text3D;
|
|
7868
8624
|
Markers: Markers;
|
|
7869
8625
|
Models: Models;
|
|
7870
8626
|
Paths: Paths;
|
|
@@ -7878,7 +8634,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api' {
|
|
|
7878
8634
|
get DynamicFocus(): import("./dynamic-focus").DynamicFocus;
|
|
7879
8635
|
get StackedMaps(): import("..").StackedMaps;
|
|
7880
8636
|
constructor(rendererCore: RendererCore, mapView: MapView);
|
|
7881
|
-
updateState<T extends Space | MapObject | Label | Shape | Marker | Door | WALLS | DOORS | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
|
|
8637
|
+
updateState<T extends Space | Text3DView | MapObject | Label | Shape | Marker | Door | Facade | WALLS | DOORS | (string & NonNullable<unknown>)>(target: T, state: TUpdateState<T>): void;
|
|
7882
8638
|
update: () => void;
|
|
7883
8639
|
getMapDataInternal(): MapDataInternal | undefined;
|
|
7884
8640
|
getMapData(): MapData | undefined;
|
|
@@ -7888,7 +8644,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api' {
|
|
|
7888
8644
|
updateWatermark(options: Omit<WatermarkOptions, 'onClick'>): void;
|
|
7889
8645
|
get currentFloorStack(): FloorStack;
|
|
7890
8646
|
get currentFloor(): Floor;
|
|
7891
|
-
getState<T extends Space | MapObject | Label | Marker |
|
|
8647
|
+
getState<T extends Space | Text3DView | MapObject | Label | Marker | Image | Shape | string>(target: T): TGetState<T>;
|
|
7892
8648
|
setHoverColor(c: string): void;
|
|
7893
8649
|
getHoverColor(): string | undefined;
|
|
7894
8650
|
createCoordinate(latitude: number, longitude: number, floor?: Floor): Coordinate;
|
|
@@ -7911,16 +8667,17 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object' {
|
|
|
7911
8667
|
import type { Position, AddLabelOptions, RendererCore, PathState, MarkerState, LineStyle, PaintStyle, EntityId } from '@mappedin/core-sdk';
|
|
7912
8668
|
import { FloorObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-object';
|
|
7913
8669
|
import type { Coordinate, Directions, Floor, TAddMarkerOptions, TAddPathOptions, TShow3DMapOptions } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
7914
|
-
import type { GLTFExportOptions, TAnimationOptions, TAddModelOptions, TAddModel, TAddImageOptions, TDirectionInstruction } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
8670
|
+
import type { GLTFExportOptions, TAnimationOptions, TAddModelOptions, TAddModel, TAddImageOptions, TDirectionInstruction, TAddText3DOptions } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
7915
8671
|
import { type AggregatedStyleMap } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/utils';
|
|
7916
8672
|
import { StackedMaps } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/stacked-maps/stacked-maps';
|
|
7917
8673
|
import type { TFloorChangeReason } from '@mappedin/mappedin-js/mappedin-js/src/events';
|
|
7918
|
-
import type { Path, Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
7919
|
-
import
|
|
8674
|
+
import type { Path, Shape, Label } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
8675
|
+
import { type Door, type PointOfInterest, type MapObject, type Node, type MapDataInternal, Space } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
7920
8676
|
import { type GeoJsonApi } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api';
|
|
7921
8677
|
import { FloorStackObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-stack-object';
|
|
7922
8678
|
import { DynamicFocus } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/dynamic-focus';
|
|
7923
8679
|
export const FLOOR_HEIGHT = 5;
|
|
8680
|
+
import type { Text3DState } from '@mappedin/core-sdk/src/components/text3d';
|
|
7924
8681
|
export class GeojsonApiMapObject extends PubSub<{
|
|
7925
8682
|
'floor-change': {
|
|
7926
8683
|
reason?: TFloorChangeReason;
|
|
@@ -7968,7 +8725,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object' {
|
|
|
7968
8725
|
Images: {
|
|
7969
8726
|
add: (target: Position, url: string, opts: TAddImageOptions & {
|
|
7970
8727
|
floorId?: string;
|
|
7971
|
-
}) => EntityId<import("
|
|
8728
|
+
}) => EntityId<import("@mappedin/core-sdk/src/components/image").ImageState> | undefined;
|
|
7972
8729
|
remove: (id: string) => void;
|
|
7973
8730
|
removeAll: () => void;
|
|
7974
8731
|
};
|
|
@@ -7989,16 +8746,25 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object' {
|
|
|
7989
8746
|
}) => string;
|
|
7990
8747
|
remove: (customGeometry: Shape) => string;
|
|
7991
8748
|
};
|
|
8749
|
+
Text3D: {
|
|
8750
|
+
label: (target: Space, content?: string, options?: TAddText3DOptions) => Text3DInfo | undefined;
|
|
8751
|
+
labelAll: (option?: TAddText3DOptions) => Text3DInfo[];
|
|
8752
|
+
remove: (id: string) => string | undefined;
|
|
8753
|
+
};
|
|
7992
8754
|
Labels: {
|
|
7993
8755
|
all: ({ onCreate, }: {
|
|
7994
8756
|
onCreate: (labelId: string | number, text: string, target: Space | Door | Coordinate | PointOfInterest | MapObject | Node) => void;
|
|
7995
8757
|
}) => void;
|
|
7996
8758
|
add: (coordinate: Position, text: string, opts?: AddLabelOptions & {
|
|
7997
8759
|
floorId?: string;
|
|
8760
|
+
spaceId?: string;
|
|
7998
8761
|
}) => {
|
|
7999
8762
|
id: string | number;
|
|
8000
8763
|
};
|
|
8001
|
-
remove: (
|
|
8764
|
+
remove: ({ label, entityId }: {
|
|
8765
|
+
label: Label;
|
|
8766
|
+
entityId: string;
|
|
8767
|
+
}) => void;
|
|
8002
8768
|
removeAll: () => void;
|
|
8003
8769
|
};
|
|
8004
8770
|
Paths: {
|
|
@@ -8010,6 +8776,10 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object' {
|
|
|
8010
8776
|
};
|
|
8011
8777
|
constructor(id: string, mapDataInternal: MapDataInternal | undefined, options: TShow3DMapOptions | undefined, api: GeoJsonApi);
|
|
8012
8778
|
}
|
|
8779
|
+
export type Text3DInfo = {
|
|
8780
|
+
target: Space;
|
|
8781
|
+
textInfo: EntityId<Text3DState>;
|
|
8782
|
+
};
|
|
8013
8783
|
}
|
|
8014
8784
|
|
|
8015
8785
|
declare module '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/label' {
|
|
@@ -8257,6 +9027,39 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/shape' {
|
|
|
8257
9027
|
}
|
|
8258
9028
|
}
|
|
8259
9029
|
|
|
9030
|
+
declare module '@mappedin/mappedin-js/mappedin-js/src/map-view-objects/text3d' {
|
|
9031
|
+
import type { Space, EnterpriseLocation } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
9032
|
+
/**
|
|
9033
|
+
* Class representing an Text3D on the {@link MapView}.
|
|
9034
|
+
*/
|
|
9035
|
+
export class Text3D {
|
|
9036
|
+
/**
|
|
9037
|
+
* The text3d's id
|
|
9038
|
+
*/
|
|
9039
|
+
readonly id: string;
|
|
9040
|
+
/**
|
|
9041
|
+
* @internal
|
|
9042
|
+
*/
|
|
9043
|
+
constructor(id: string, target: Space | EnterpriseLocation);
|
|
9044
|
+
/**
|
|
9045
|
+
* The text3d's target
|
|
9046
|
+
*/
|
|
9047
|
+
readonly target: Space | EnterpriseLocation;
|
|
9048
|
+
/**
|
|
9049
|
+
* @internal
|
|
9050
|
+
*/
|
|
9051
|
+
static readonly __type = "Text3D";
|
|
9052
|
+
readonly __type = "Text3D";
|
|
9053
|
+
/**
|
|
9054
|
+
* Checks if the provided instance is of type Text3D
|
|
9055
|
+
*
|
|
9056
|
+
* @param instance The instance to check.
|
|
9057
|
+
* @returns {boolean} True if the instance is a text3d, false otherwise.
|
|
9058
|
+
*/
|
|
9059
|
+
static is(instance: object): instance is Text3D;
|
|
9060
|
+
}
|
|
9061
|
+
}
|
|
9062
|
+
|
|
8260
9063
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/camera' {
|
|
8261
9064
|
import type { TCameraAnimationOptions, TCameraFocusOnTarget, TCameraTarget, TFocusOnOptions } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
8262
9065
|
import type { InsetPadding, RendererCore } from '@mappedin/core-sdk';
|
|
@@ -8415,7 +9218,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/labels' {
|
|
|
8415
9218
|
import { Label } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
8416
9219
|
import type { GeojsonApiMapObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/map-object';
|
|
8417
9220
|
import type { PointOfInterest, MapObject } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
8418
|
-
import
|
|
9221
|
+
import { Space, Door, Coordinate, Node } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
8419
9222
|
/**
|
|
8420
9223
|
* Class used to add and remove a {@link Label} on the {@link MapView}.
|
|
8421
9224
|
*
|
|
@@ -8577,7 +9380,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/markers' {
|
|
|
8577
9380
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/models' {
|
|
8578
9381
|
import type { TAddModelOptions, TAddModel } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
8579
9382
|
import { Model } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
8580
|
-
import type {
|
|
9383
|
+
import type { CurrentMapGetter } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/types';
|
|
8581
9384
|
/**
|
|
8582
9385
|
* Adding 3D models to a map can be a great way to represent landmarks to help users find key locations. They could also be used to show the location of assets or represent furniture to provide a rich indoor layout.
|
|
8583
9386
|
|
|
@@ -8596,7 +9399,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/models' {
|
|
|
8596
9399
|
/**
|
|
8597
9400
|
* @internal
|
|
8598
9401
|
*/
|
|
8599
|
-
get currentMap(): GeojsonApiMapObject | undefined;
|
|
9402
|
+
get currentMap(): import("./map-object").GeojsonApiMapObject | undefined;
|
|
8600
9403
|
/**
|
|
8601
9404
|
* @internal
|
|
8602
9405
|
*/
|
|
@@ -8638,8 +9441,6 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/models' {
|
|
|
8638
9441
|
*/
|
|
8639
9442
|
removeAll(): Model[];
|
|
8640
9443
|
}
|
|
8641
|
-
type CurrentMapGetter = () => GeojsonApiMapObject | undefined;
|
|
8642
|
-
export {};
|
|
8643
9444
|
}
|
|
8644
9445
|
|
|
8645
9446
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/paths' {
|
|
@@ -8990,7 +9791,13 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/style' {
|
|
|
8990
9791
|
}
|
|
8991
9792
|
|
|
8992
9793
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/outdoor' {
|
|
8993
|
-
import { type RendererCore
|
|
9794
|
+
import { type RendererCore } from '@mappedin/core-sdk';
|
|
9795
|
+
import type { BBox } from 'geojson';
|
|
9796
|
+
export type HiddenOutdoorGeometry = [
|
|
9797
|
+
BBox,
|
|
9798
|
+
polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[],
|
|
9799
|
+
layers: string[]
|
|
9800
|
+
];
|
|
8994
9801
|
/**
|
|
8995
9802
|
* The outdoor map shown around the Mappedin indoor map can be manipulated to show or hide additional information. It can be used to add GeoJSON based geometry, images, deck.gl layers and more.
|
|
8996
9803
|
*
|
|
@@ -9009,7 +9816,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/outdoor' {
|
|
|
9009
9816
|
/**
|
|
9010
9817
|
* @internal
|
|
9011
9818
|
*/
|
|
9012
|
-
constructor(core: RendererCore, hiddenOutdoorGeometry?: [
|
|
9819
|
+
constructor(core: RendererCore, hiddenOutdoorGeometry?: HiddenOutdoorGeometry[]);
|
|
9013
9820
|
/**
|
|
9014
9821
|
* Set the style of the outdoor map. Use one of [Mappedin's predefined styles](https://developer.mappedin.com/web-sdk/outdoor-map#styles) or link to a custom style.
|
|
9015
9822
|
* @param style {any}
|
|
@@ -9832,20 +10639,25 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry3d' {
|
|
|
9832
10639
|
import type { MeshComponent } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
9833
10640
|
import type { ModelComponent } from '@mappedin/mappedin-js/geojson/src/components/model';
|
|
9834
10641
|
import type { PathComponent } from '@mappedin/mappedin-js/geojson/src/components/path';
|
|
9835
|
-
import type { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/style';
|
|
10642
|
+
import type { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles/style';
|
|
9836
10643
|
import type { ImageComponent } from '@mappedin/mappedin-js/geojson/src/components/image';
|
|
9837
10644
|
import type { CustomGeometryComponent } from '@mappedin/mappedin-js/geojson/src/components/custom';
|
|
9838
10645
|
import type { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
9839
|
-
import type {
|
|
10646
|
+
import type { Geometry2D } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
10647
|
+
import { GeometryGroupObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
10648
|
+
import type { Text3DComponent } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
10649
|
+
import type { Text3DStyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles';
|
|
9840
10650
|
export enum Geometry3DComponents {
|
|
9841
10651
|
Mesh = 0,
|
|
9842
10652
|
Style = 1,
|
|
9843
10653
|
Interaction = 2
|
|
9844
10654
|
}
|
|
10655
|
+
type Geometry3DObjectTypes = 'geometry' | 'path' | 'model' | 'custom-geometry' | 'image' | 'text3d';
|
|
9845
10656
|
export class Geometry3DObject3D extends Object3D {
|
|
10657
|
+
type: Geometry3DObjectTypes;
|
|
9846
10658
|
userData: {
|
|
9847
10659
|
entityId: string;
|
|
9848
|
-
type:
|
|
10660
|
+
type: Geometry3DObjectTypes;
|
|
9849
10661
|
};
|
|
9850
10662
|
}
|
|
9851
10663
|
export type PathMaterial = ShaderMaterial & {
|
|
@@ -9855,15 +10667,27 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry3d' {
|
|
|
9855
10667
|
export class PatMeshContainer extends Geometry3DObject3D {
|
|
9856
10668
|
children: [PathMesh, PathMesh];
|
|
9857
10669
|
}
|
|
9858
|
-
export type MeshComponentTypes = MeshComponent | PathComponent | ModelComponent | CustomGeometryComponent | ImageComponent;
|
|
9859
|
-
|
|
10670
|
+
export type MeshComponentTypes = MeshComponent | PathComponent | ModelComponent | CustomGeometryComponent | Text3DComponent | ImageComponent;
|
|
10671
|
+
type MappedComponentType<M> = M extends MeshComponent ? 'geometry' : M extends PathComponent ? 'path' : M extends ModelComponent ? 'model' : M extends CustomGeometryComponent ? 'custom-geometry' : M extends ImageComponent ? 'image' : M extends Text3DComponent ? 'text3d' : never;
|
|
10672
|
+
export class Geometry3D<M extends MeshComponentTypes = MeshComponent, S extends StyleComponent | Text3DStyleComponent = StyleComponent, I extends InteractionComponent = InteractionComponent, T extends MappedComponentType<M> = MappedComponentType<M>> {
|
|
9860
10673
|
id: string | number;
|
|
9861
|
-
components: [
|
|
9862
|
-
get object3d():
|
|
9863
|
-
get
|
|
9864
|
-
get type():
|
|
9865
|
-
|
|
9866
|
-
|
|
10674
|
+
components: [M, S, I?];
|
|
10675
|
+
get object3d(): M["mesh"];
|
|
10676
|
+
get parentObject3D(): GroupContainerObject3D | GeometryGroupObject3D | null;
|
|
10677
|
+
get type(): T;
|
|
10678
|
+
entities2D: Map<string | number, Geometry2D>;
|
|
10679
|
+
constructor(meshComponent: M, styleComponent: S);
|
|
10680
|
+
addEntity(entity: Geometry2D): void;
|
|
10681
|
+
removeEntity(entity: Geometry2D): void;
|
|
10682
|
+
removeAllEntities(): void;
|
|
10683
|
+
}
|
|
10684
|
+
export type TextGeometry3D = Geometry3D<Text3DComponent, Text3DStyleComponent, InteractionComponent, 'text3d'>;
|
|
10685
|
+
export type CustomGeometry3D = Geometry3D<CustomGeometryComponent, StyleComponent, InteractionComponent, 'custom-geometry'>;
|
|
10686
|
+
export type ModelGeometry3D = Geometry3D<ModelComponent, StyleComponent, InteractionComponent, 'model'>;
|
|
10687
|
+
export type PathGeometry3D = Geometry3D<PathComponent, StyleComponent, InteractionComponent, 'path'>;
|
|
10688
|
+
export type ImageGeometry3D = Geometry3D<ImageComponent, StyleComponent, InteractionComponent, 'image'>;
|
|
10689
|
+
export type MeshGeometry3D = Geometry3D<MeshComponent, StyleComponent, InteractionComponent, 'geometry'>;
|
|
10690
|
+
export type Geometry3DTypes = TextGeometry3D | CustomGeometry3D | PathGeometry3D | ImageGeometry3D | MeshGeometry3D | ModelGeometry3D;
|
|
9867
10691
|
export interface PathUniforms {
|
|
9868
10692
|
vertexes: {
|
|
9869
10693
|
type: 'f';
|
|
@@ -9946,6 +10770,7 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry3d' {
|
|
|
9946
10770
|
value: number;
|
|
9947
10771
|
};
|
|
9948
10772
|
}
|
|
10773
|
+
export {};
|
|
9949
10774
|
}
|
|
9950
10775
|
|
|
9951
10776
|
declare module '@mappedin/mappedin-js/geojson/src/entities/geometry2d' {
|
|
@@ -9954,6 +10779,7 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry2d' {
|
|
|
9954
10779
|
import type LabelComponent from '@mappedin/mappedin-js/geojson/src/components/label';
|
|
9955
10780
|
import type { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
9956
10781
|
import type { InteractionComponent } from '@mappedin/mappedin-js/geojson/src/components/interaction';
|
|
10782
|
+
import { type GeometryGroupObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
9957
10783
|
export enum Geometry2DComponents {
|
|
9958
10784
|
UI = 0,
|
|
9959
10785
|
Interaction = 1
|
|
@@ -9963,7 +10789,7 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry2d' {
|
|
|
9963
10789
|
export class Geometry2D {
|
|
9964
10790
|
id: string | number;
|
|
9965
10791
|
get type(): 'label' | 'marker';
|
|
9966
|
-
get
|
|
10792
|
+
get parentObject3D(): GroupContainerObject3D | GeometryGroupObject3D | null;
|
|
9967
10793
|
/**
|
|
9968
10794
|
* When the position of the entity changes, this should be set to true, so that systems like pan bounds can update
|
|
9969
10795
|
*/
|
|
@@ -9973,6 +10799,7 @@ declare module '@mappedin/mappedin-js/geojson/src/entities/geometry2d' {
|
|
|
9973
10799
|
disposed: boolean;
|
|
9974
10800
|
constructor(ui: MarkerComponent | LabelComponent, position: Vector3);
|
|
9975
10801
|
get position(): Vector3;
|
|
10802
|
+
setAltitude(z: number): void;
|
|
9976
10803
|
}
|
|
9977
10804
|
}
|
|
9978
10805
|
|
|
@@ -9987,17 +10814,44 @@ declare module '@mappedin/mappedin-js/geojson/src/components/stack' {
|
|
|
9987
10814
|
|
|
9988
10815
|
declare module '@mappedin/mappedin-js/geojson/src/components/interaction' {
|
|
9989
10816
|
export class InteractionComponent {
|
|
9990
|
-
hover: boolean;
|
|
10817
|
+
hover: boolean | 'user-interaction';
|
|
9991
10818
|
dirty: boolean;
|
|
9992
10819
|
}
|
|
9993
10820
|
}
|
|
9994
10821
|
|
|
10822
|
+
declare module '@mappedin/mappedin-js/geojson/src/services/text3d/text3d' {
|
|
10823
|
+
import { type Text3DStyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles';
|
|
10824
|
+
import { Text, BatchedText } from 'troika-three-text';
|
|
10825
|
+
import type { RendererCore } from '@mappedin/mappedin-js/geojson/src';
|
|
10826
|
+
import type { Text3DComponent } from '@mappedin/mappedin-js/geojson/src/components/text3d';
|
|
10827
|
+
export function createTroikaText(entityId: string | number, text3DComponent: Text3DComponent, styleComponent: Text3DStyleComponent, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): Promise<{
|
|
10828
|
+
text: Text;
|
|
10829
|
+
} | undefined>;
|
|
10830
|
+
export { BatchedText, Text };
|
|
10831
|
+
/**
|
|
10832
|
+
* typeof module is forbiten in typescript. see: [@typescript-eslint/consistent-type-imports]
|
|
10833
|
+
*/
|
|
10834
|
+
export type ModuleType = {
|
|
10835
|
+
createTroikaText: typeof createTroikaText;
|
|
10836
|
+
preloadFont: typeof preloadFont;
|
|
10837
|
+
BatchedText: typeof BatchedText;
|
|
10838
|
+
};
|
|
10839
|
+
/**
|
|
10840
|
+
* Preloads a font from the given URL. Enable developer to preload font way before scene is ready
|
|
10841
|
+
*
|
|
10842
|
+
* @param fontUrl - The URL of the font to preload. When undefined, default font (Roboto) is loaded
|
|
10843
|
+
* @returns A promise that resolves when the font is successfully preloaded, or rejects with an error if the font cannot be loaded.
|
|
10844
|
+
*/
|
|
10845
|
+
export function preloadFont(fontUrl?: string): Promise<string>;
|
|
10846
|
+
}
|
|
10847
|
+
|
|
9995
10848
|
declare module '@mappedin/mappedin-js/geojson/src/components/geometry-group-style' {
|
|
9996
10849
|
import { type Shading } from '@mappedin/mappedin-js/geojson/src/types';
|
|
9997
10850
|
type GeometryGroupStyle = {
|
|
9998
10851
|
color: string;
|
|
9999
10852
|
topColor?: string;
|
|
10000
10853
|
opacity: number;
|
|
10854
|
+
height?: number;
|
|
10001
10855
|
shading?: Shading;
|
|
10002
10856
|
outline: boolean;
|
|
10003
10857
|
texture?: string;
|
|
@@ -10008,6 +10862,7 @@ declare module '@mappedin/mappedin-js/geojson/src/components/geometry-group-styl
|
|
|
10008
10862
|
color: string;
|
|
10009
10863
|
topColor?: string;
|
|
10010
10864
|
opacity: number;
|
|
10865
|
+
height?: number;
|
|
10011
10866
|
outline: boolean;
|
|
10012
10867
|
texture?: string;
|
|
10013
10868
|
topTexture?: string;
|
|
@@ -10154,68 +11009,6 @@ declare module '@mappedin/mappedin-js/geojson/src/components/image' {
|
|
|
10154
11009
|
}
|
|
10155
11010
|
}
|
|
10156
11011
|
|
|
10157
|
-
declare module '@mappedin/mappedin-js/geojson/src/entities' {
|
|
10158
|
-
export { updateInteractivity } from '@mappedin/mappedin-js/geojson/src/entities/utils';
|
|
10159
|
-
export { Geometry2D, Geometry2DComponents } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
10160
|
-
export { Geometry3D, Geometry3DComponents, type PathMesh, type PatMeshContainer, type PathMaterial, } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
10161
|
-
}
|
|
10162
|
-
|
|
10163
|
-
declare module '@mappedin/mappedin-js/geojson/src/components/style' {
|
|
10164
|
-
import type { LineStyle } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10165
|
-
export const DEFAULT_COLOR = "#ffffff";
|
|
10166
|
-
export const DEFAULT_HEIGHT = 0.1;
|
|
10167
|
-
/**
|
|
10168
|
-
* Determines how a material is rendered, back face, front face or both (default)
|
|
10169
|
-
*/
|
|
10170
|
-
export type MaterialSide = 'back' | 'front' | 'double';
|
|
10171
|
-
type Style = {
|
|
10172
|
-
color: string;
|
|
10173
|
-
width: number;
|
|
10174
|
-
opacity: number;
|
|
10175
|
-
visible: boolean;
|
|
10176
|
-
height: number;
|
|
10177
|
-
altitude: number;
|
|
10178
|
-
join: LineStyle['join'];
|
|
10179
|
-
cap: LineStyle['cap'];
|
|
10180
|
-
topColor?: string;
|
|
10181
|
-
texture?: string;
|
|
10182
|
-
topTexture?: string;
|
|
10183
|
-
outline: boolean;
|
|
10184
|
-
showImage: boolean;
|
|
10185
|
-
showTextLabel: boolean;
|
|
10186
|
-
flipImageToFaceCamera: boolean;
|
|
10187
|
-
flipTextToFaceCamera: boolean;
|
|
10188
|
-
url?: string;
|
|
10189
|
-
side?: MaterialSide;
|
|
10190
|
-
};
|
|
10191
|
-
export class StyleComponent implements Style {
|
|
10192
|
-
initialColor: string;
|
|
10193
|
-
color: string;
|
|
10194
|
-
topColor?: string;
|
|
10195
|
-
topTexture?: string;
|
|
10196
|
-
texture?: string;
|
|
10197
|
-
hoverColor?: string;
|
|
10198
|
-
dirty: boolean;
|
|
10199
|
-
visible: boolean;
|
|
10200
|
-
opacity: number;
|
|
10201
|
-
width: number;
|
|
10202
|
-
height: number;
|
|
10203
|
-
initialHeight: number;
|
|
10204
|
-
altitude: number;
|
|
10205
|
-
join: LineStyle['join'];
|
|
10206
|
-
cap: LineStyle['cap'];
|
|
10207
|
-
outline: boolean;
|
|
10208
|
-
showImage: boolean;
|
|
10209
|
-
showTextLabel: boolean;
|
|
10210
|
-
flipImageToFaceCamera: boolean;
|
|
10211
|
-
flipTextToFaceCamera: boolean;
|
|
10212
|
-
url?: string;
|
|
10213
|
-
side: MaterialSide;
|
|
10214
|
-
constructor(style?: Partial<Style>);
|
|
10215
|
-
}
|
|
10216
|
-
export {};
|
|
10217
|
-
}
|
|
10218
|
-
|
|
10219
11012
|
declare module '@mappedin/mappedin-js/geojson/src/types/options' {
|
|
10220
11013
|
import type { Position } from '@mappedin/mappedin-js/geojson/src/types/geometry';
|
|
10221
11014
|
import type { Map as MapLibreMap } from '@mappedin/mappedin-js/packages/outdoor-context-v4';
|
|
@@ -10344,38 +11137,71 @@ declare module '@mappedin/mappedin-js/packages/common/pubsub' {
|
|
|
10344
11137
|
}
|
|
10345
11138
|
}
|
|
10346
11139
|
|
|
10347
|
-
declare module '@mappedin/mappedin-js/geojson/src/
|
|
10348
|
-
|
|
10349
|
-
}
|
|
10350
|
-
|
|
10351
|
-
|
|
10352
|
-
|
|
10353
|
-
|
|
10354
|
-
import type { MarkerComponent } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
10355
|
-
import { MeshComponent } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
10356
|
-
type SomeEvent = {
|
|
10357
|
-
'invalidate:2d': undefined;
|
|
11140
|
+
declare module '@mappedin/mappedin-js/geojson/src/services/renderer' {
|
|
11141
|
+
import type { Scene, Camera } from 'three';
|
|
11142
|
+
import { Color, WebGL1Renderer, WebGLRenderer } from 'three';
|
|
11143
|
+
export type TRendererOptions = {
|
|
11144
|
+
alpha: boolean;
|
|
11145
|
+
onWebGLRendererError: (e: Error) => void;
|
|
11146
|
+
xRayPath: boolean;
|
|
10358
11147
|
};
|
|
10359
|
-
export class
|
|
10360
|
-
|
|
10361
|
-
|
|
10362
|
-
|
|
10363
|
-
|
|
10364
|
-
|
|
10365
|
-
|
|
10366
|
-
|
|
11148
|
+
export class Renderer {
|
|
11149
|
+
backgroundAlpha: number;
|
|
11150
|
+
backgroundColor: Color;
|
|
11151
|
+
width: number;
|
|
11152
|
+
height: number;
|
|
11153
|
+
options: TRendererOptions;
|
|
11154
|
+
renderer?: WebGLRenderer | WebGL1Renderer;
|
|
11155
|
+
constructor(renderOptions: any, targetWebGLVersion?: number);
|
|
11156
|
+
/**
|
|
11157
|
+
* Dispose of the renderer and its buffers.
|
|
11158
|
+
*/
|
|
11159
|
+
destroy(): void;
|
|
11160
|
+
/**
|
|
11161
|
+
* Re-render the scene, depending on which parts of the scene have been
|
|
11162
|
+
* invalidated.
|
|
11163
|
+
*
|
|
11164
|
+
* @method render
|
|
11165
|
+
* @param renderTarget {null or WebGLRenderTarget}
|
|
11166
|
+
* @param scene {Scene}
|
|
11167
|
+
* @param sceneCamera {Camera}
|
|
11168
|
+
*/
|
|
11169
|
+
render(scene: Scene, sceneCamera: Camera): void;
|
|
11170
|
+
clear(): void;
|
|
11171
|
+
/**
|
|
11172
|
+
* Set the size of the renderer, composer, and all its internal buffers.
|
|
11173
|
+
*
|
|
11174
|
+
* @method setBufferSize
|
|
11175
|
+
* @param width {number}
|
|
11176
|
+
* @param height {number}
|
|
11177
|
+
*/
|
|
11178
|
+
setBufferSize(width: number, height: number): void;
|
|
11179
|
+
/**
|
|
11180
|
+
* Set the color and opacity that will be drawn behind the scene.
|
|
11181
|
+
*
|
|
11182
|
+
* @method setBackgroundColor
|
|
11183
|
+
* @param color {Color}
|
|
11184
|
+
* @param alpha {number}
|
|
11185
|
+
*/
|
|
11186
|
+
setBackgroundColor(color: any, alpha: any): void;
|
|
11187
|
+
domElement(): HTMLCanvasElement | undefined;
|
|
10367
11188
|
}
|
|
10368
|
-
|
|
11189
|
+
}
|
|
11190
|
+
|
|
11191
|
+
declare module '@mappedin/mappedin-js/geojson/src/systems/interactions' {
|
|
11192
|
+
export { InteractionSystem } from '@mappedin/mappedin-js/geojson/src/systems/interactions/system';
|
|
10369
11193
|
}
|
|
10370
11194
|
|
|
10371
11195
|
declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-creation-and-optimization/system' {
|
|
10372
11196
|
import type { BufferGeometry } from 'three';
|
|
10373
11197
|
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10374
11198
|
import { Geometry3D, Geometry3DObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
10375
|
-
import { type MeshComponentProperties } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
11199
|
+
import { MeshComponent, type MeshComponentProperties } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
11200
|
+
import { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles/style';
|
|
10376
11201
|
import type { Feature, LineString, MultiPolygon, Point, Polygon } from 'geojson';
|
|
10377
11202
|
import type { LineStyle, ModelProperties, ModelStyle, PaintStyle } from '@mappedin/mappedin-js/geojson/src/types';
|
|
10378
11203
|
import type { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
|
|
11204
|
+
import type { ModelGeometry3D } from '@mappedin/mappedin-js/geojson/src/entities';
|
|
10379
11205
|
import { PubSub } from '@packages/internal/common';
|
|
10380
11206
|
export class MeshCreationAndOptimizationSystem extends PubSub<{
|
|
10381
11207
|
'model-loaded': void;
|
|
@@ -10385,8 +11211,8 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-creation-and-opti
|
|
|
10385
11211
|
loader?: GLTFLoader;
|
|
10386
11212
|
constructor(state: RendererState, convertTo3DMapPosition: any);
|
|
10387
11213
|
getGLTFLoader(): Promise<void>;
|
|
10388
|
-
createEntityFromFeature(id: string | number, feature: Feature<Polygon | LineString | MultiPolygon, MeshComponentProperties>, style?: LineStyle | PaintStyle): Geometry3D
|
|
10389
|
-
createModelFromFeature(id: string | number, feature: Feature<Point, ModelProperties>, style?: ModelStyle):
|
|
11214
|
+
createEntityFromFeature(id: string | number, feature: Feature<Polygon | LineString | MultiPolygon, MeshComponentProperties>, style?: LineStyle | PaintStyle): Geometry3D<MeshComponent, StyleComponent, import("../../components/interaction").InteractionComponent, "geometry">;
|
|
11215
|
+
createModelFromFeature(id: string | number, feature: Feature<Point, ModelProperties>, style?: ModelStyle): ModelGeometry3D;
|
|
10390
11216
|
populateEntityMesh(entity: Geometry3D, geometry: BufferGeometry): void;
|
|
10391
11217
|
populateModelGroup(entities: Set<string | number>, url: string, tree: any): Promise<Geometry3DObject3D>;
|
|
10392
11218
|
populateEntityGroup(entities: Set<string | number>): Set<string | number>;
|
|
@@ -10470,9 +11296,9 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/2d-draw/system' {
|
|
|
10470
11296
|
declare module '@mappedin/mappedin-js/geojson/src/systems/draw/system' {
|
|
10471
11297
|
import { PubSub } from '@packages/internal/common';
|
|
10472
11298
|
import { MeshComponent } from '@mappedin/mappedin-js/geojson/src/components/mesh';
|
|
10473
|
-
import { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/style';
|
|
11299
|
+
import type { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/styles/style';
|
|
10474
11300
|
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10475
|
-
import { InteractionComponent } from '@mappedin/mappedin-js/geojson/src/components/interaction';
|
|
11301
|
+
import type { InteractionComponent } from '@mappedin/mappedin-js/geojson/src/components/interaction';
|
|
10476
11302
|
import type { GeometryGroupStyleComponent } from '@mappedin/mappedin-js/geojson/src/components/geometry-group-style';
|
|
10477
11303
|
export class DrawSystem extends PubSub<{
|
|
10478
11304
|
'texture-loaded': void;
|
|
@@ -10519,7 +11345,7 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/render/system' {
|
|
|
10519
11345
|
constructor(renderer: Renderer, state: RendererState, mode: RendererCore['mode'], scene: Scene, cameraObject: PerspectiveCamera, viewCamera: Camera, systems: Systems);
|
|
10520
11346
|
twoDdirty: boolean;
|
|
10521
11347
|
threeDdirty: boolean;
|
|
10522
|
-
update: (sync?: boolean) =>
|
|
11348
|
+
update: (sync?: boolean) => Promise<any>;
|
|
10523
11349
|
destroy(): void;
|
|
10524
11350
|
}
|
|
10525
11351
|
}
|
|
@@ -10822,9 +11648,11 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/geometry-in-focus/syst
|
|
|
10822
11648
|
declare module '@mappedin/mappedin-js/geojson/src/systems/outdoor-layers/system' {
|
|
10823
11649
|
import type { Map } from '@packages/internal/outdoor-context-v4';
|
|
10824
11650
|
import type { Position } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
11651
|
+
import { type BBox } from 'geojson';
|
|
10825
11652
|
export class OutdoorLayers {
|
|
10826
11653
|
dirty: boolean;
|
|
10827
11654
|
hideLayersUnderPoint(point: Position, layers: string[]): void;
|
|
11655
|
+
hideLayersIntersectingPolygons(bbox: BBox, polygons: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>[], layers: string[]): void;
|
|
10828
11656
|
constructor(map?: Map);
|
|
10829
11657
|
destroy(): void;
|
|
10830
11658
|
}
|
|
@@ -10835,7 +11663,7 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/path' {
|
|
|
10835
11663
|
}
|
|
10836
11664
|
|
|
10837
11665
|
declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-detachment/system' {
|
|
10838
|
-
import { type
|
|
11666
|
+
import { type All3DTypes, type RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10839
11667
|
/**
|
|
10840
11668
|
* This system is responsible for updating the opacity of the mesh, which results in the mesh
|
|
10841
11669
|
* being detached from the parent's optimized geometry group and rendered as a separate mesh.
|
|
@@ -10845,16 +11673,13 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-detachment/system
|
|
|
10845
11673
|
rendererState: RendererState;
|
|
10846
11674
|
dirty: boolean;
|
|
10847
11675
|
constructor(rendererState: RendererState);
|
|
10848
|
-
updateOne(geometry:
|
|
11676
|
+
updateOne(geometry: All3DTypes | undefined): void;
|
|
10849
11677
|
update(): void;
|
|
10850
11678
|
}
|
|
10851
11679
|
}
|
|
10852
11680
|
|
|
10853
11681
|
declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-modification/system' {
|
|
10854
|
-
import {
|
|
10855
|
-
import type { GeometryGroupObject3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
10856
|
-
import type { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
10857
|
-
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
11682
|
+
import type { EntityTypes, RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10858
11683
|
/**
|
|
10859
11684
|
* Any physical changes to geometry should go in here. This includes height changes, etc.
|
|
10860
11685
|
* This is to ensure that physical changes apply before any other systems need to do their work,
|
|
@@ -10867,7 +11692,7 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/mesh-modification/syst
|
|
|
10867
11692
|
rendererState: RendererState;
|
|
10868
11693
|
dirty: boolean;
|
|
10869
11694
|
constructor(rendererState: RendererState);
|
|
10870
|
-
updateOne(entity
|
|
11695
|
+
updateOne(entity?: EntityTypes): void;
|
|
10871
11696
|
update(): void;
|
|
10872
11697
|
cleanup(): void;
|
|
10873
11698
|
}
|
|
@@ -10886,14 +11711,58 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/pre-render/system' {
|
|
|
10886
11711
|
}
|
|
10887
11712
|
}
|
|
10888
11713
|
|
|
10889
|
-
declare module '@mappedin/mappedin-js/geojson/src/
|
|
10890
|
-
import type {
|
|
10891
|
-
|
|
10892
|
-
export const
|
|
10893
|
-
|
|
10894
|
-
|
|
10895
|
-
|
|
11714
|
+
declare module '@mappedin/mappedin-js/geojson/src/components/styles/style' {
|
|
11715
|
+
import type { LineStyle } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
11716
|
+
export const DEFAULT_COLOR = "#ffffff";
|
|
11717
|
+
export const DEFAULT_HEIGHT = 0.1;
|
|
11718
|
+
/**
|
|
11719
|
+
* Determines how a material is rendered, back face, front face or both (default)
|
|
11720
|
+
*/
|
|
11721
|
+
export type MaterialSide = 'back' | 'front' | 'double';
|
|
11722
|
+
type Style = {
|
|
11723
|
+
color: string;
|
|
11724
|
+
width: number;
|
|
11725
|
+
opacity: number;
|
|
11726
|
+
visible: boolean;
|
|
11727
|
+
height: number;
|
|
11728
|
+
altitude: number;
|
|
11729
|
+
join: LineStyle['join'];
|
|
11730
|
+
cap: LineStyle['cap'];
|
|
11731
|
+
topColor?: string;
|
|
11732
|
+
texture?: string;
|
|
11733
|
+
topTexture?: string;
|
|
11734
|
+
outline: boolean;
|
|
11735
|
+
showImage: boolean;
|
|
11736
|
+
flipImageToFaceCamera: boolean;
|
|
11737
|
+
url?: string;
|
|
11738
|
+
side?: MaterialSide;
|
|
11739
|
+
renderOrder?: number;
|
|
11740
|
+
};
|
|
11741
|
+
export class StyleComponent implements Style {
|
|
11742
|
+
initialColor: string;
|
|
11743
|
+
color: string;
|
|
11744
|
+
topColor?: string;
|
|
11745
|
+
topTexture?: string;
|
|
11746
|
+
texture?: string;
|
|
11747
|
+
hoverColor?: string;
|
|
11748
|
+
dirty: boolean;
|
|
11749
|
+
visible: boolean;
|
|
11750
|
+
opacity: number;
|
|
11751
|
+
width: number;
|
|
11752
|
+
height: number;
|
|
11753
|
+
initialHeight: number;
|
|
11754
|
+
altitude: number;
|
|
11755
|
+
join: LineStyle['join'];
|
|
11756
|
+
cap: LineStyle['cap'];
|
|
11757
|
+
outline: boolean;
|
|
11758
|
+
showImage: boolean;
|
|
11759
|
+
flipImageToFaceCamera: boolean;
|
|
11760
|
+
url?: string;
|
|
11761
|
+
side: MaterialSide;
|
|
11762
|
+
renderOrder: number;
|
|
11763
|
+
constructor(style?: Partial<Style>);
|
|
10896
11764
|
}
|
|
11765
|
+
export {};
|
|
10897
11766
|
}
|
|
10898
11767
|
|
|
10899
11768
|
declare module '@mappedin/mappedin-js/packages/geojson-navigator/src' {
|
|
@@ -10988,6 +11857,17 @@ declare module '@mappedin/mappedin-js/geojson/src/utils/tranform-request' {
|
|
|
10988
11857
|
};
|
|
10989
11858
|
}
|
|
10990
11859
|
|
|
11860
|
+
declare module '@mappedin/mappedin-js/geojson/src/utils/math' {
|
|
11861
|
+
export function normalizeAngle(angle: number): number;
|
|
11862
|
+
}
|
|
11863
|
+
|
|
11864
|
+
declare module '@mappedin/mappedin-js/geojson/src/entities' {
|
|
11865
|
+
export { updateInteractivity } from '@mappedin/mappedin-js/geojson/src/entities/utils';
|
|
11866
|
+
export { Geometry2D, Geometry2DComponents } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
11867
|
+
export { Geometry3D, Geometry3DComponents } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
11868
|
+
export type { PathMesh, PatMeshContainer, PathMaterial, Geometry3DTypes, ImageGeometry3D, TextGeometry3D, ModelGeometry3D, CustomGeometry3D, MeshGeometry3D, } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
11869
|
+
}
|
|
11870
|
+
|
|
10991
11871
|
declare module '@mappedin/mappedin-js/geojson/src/systems/exporter/exporter' {
|
|
10992
11872
|
import type { RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
10993
11873
|
export type GLTFExportOptions = {
|
|
@@ -11018,6 +11898,155 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/exporter/exporter' {
|
|
|
11018
11898
|
}
|
|
11019
11899
|
}
|
|
11020
11900
|
|
|
11901
|
+
declare module '@mappedin/mappedin-js/geojson/src/components/styles/text-style' {
|
|
11902
|
+
/**
|
|
11903
|
+
* avoid storying default values on the text style to save space
|
|
11904
|
+
*/
|
|
11905
|
+
export class Text3DStyleComponent implements Partial<Text3DStyle> {
|
|
11906
|
+
visible?: boolean;
|
|
11907
|
+
altitude?: number;
|
|
11908
|
+
color?: string;
|
|
11909
|
+
dirty: boolean;
|
|
11910
|
+
maxWidth?: number;
|
|
11911
|
+
maxHeight?: number;
|
|
11912
|
+
hoverByPolygon?: boolean;
|
|
11913
|
+
flipToFaceCamera?: boolean | undefined;
|
|
11914
|
+
font?: string;
|
|
11915
|
+
fillOpacity?: number;
|
|
11916
|
+
fontSize?: number;
|
|
11917
|
+
margin?: number;
|
|
11918
|
+
outlineWidth?: number;
|
|
11919
|
+
outlineBlur?: number | string;
|
|
11920
|
+
outlineOffsetX?: number;
|
|
11921
|
+
strokeColor?: string;
|
|
11922
|
+
strokeOpacity?: number;
|
|
11923
|
+
strokeWidth?: number;
|
|
11924
|
+
hoverColor?: string | undefined;
|
|
11925
|
+
outlineOffsetY?: number;
|
|
11926
|
+
outlineColor?: string;
|
|
11927
|
+
outlineOpacity?: number;
|
|
11928
|
+
constructor(initialState?: Partial<Text3DStyle>);
|
|
11929
|
+
/**
|
|
11930
|
+
* Put together a json ignore all the undefined fields.
|
|
11931
|
+
* This is helpful when we Object.assign(instance, json) to update the instance.
|
|
11932
|
+
*/
|
|
11933
|
+
getState(includeDirty?: boolean): Partial<Text3DStyle>;
|
|
11934
|
+
}
|
|
11935
|
+
/**
|
|
11936
|
+
* Not directly storing default values on the text style to save space
|
|
11937
|
+
* TODO: lookign at text style spec from maplibre. we can also support:
|
|
11938
|
+
* letterSpacing?: number;
|
|
11939
|
+
* lineHeight: number;
|
|
11940
|
+
* anchor: number; => .anchorX & .anchorY
|
|
11941
|
+
* justify: nubmer; => .textAlign
|
|
11942
|
+
* tarnsform: string;
|
|
11943
|
+
* offset: number;
|
|
11944
|
+
*/
|
|
11945
|
+
export const DEFAULT_TEXT_STYLE: Readonly<Text3DStyle>;
|
|
11946
|
+
export type Text3DStyle = {
|
|
11947
|
+
/**
|
|
11948
|
+
* Controls the visibility of the text element.
|
|
11949
|
+
* @default true
|
|
11950
|
+
*/
|
|
11951
|
+
visible: boolean;
|
|
11952
|
+
/**
|
|
11953
|
+
* The color of the text. Will change to hoverColor when the associated polygon is hovered.
|
|
11954
|
+
* Accepts any CSS color string.
|
|
11955
|
+
* @default 'black'
|
|
11956
|
+
*/
|
|
11957
|
+
color: string;
|
|
11958
|
+
/**
|
|
11959
|
+
* When true, the text will flip to face the camera while maintaining its position.
|
|
11960
|
+
* @default true
|
|
11961
|
+
*/
|
|
11962
|
+
flipToFaceCamera: boolean;
|
|
11963
|
+
/**
|
|
11964
|
+
* URL to a custom font file (.ttf, .otf, .woff).
|
|
11965
|
+
* Falls back to Roboto if undefined.
|
|
11966
|
+
*/
|
|
11967
|
+
font: string | undefined;
|
|
11968
|
+
/**
|
|
11969
|
+
* The size of the text in meters. Will be automatically adjusted if it exceeds
|
|
11970
|
+
* the text area bounds.
|
|
11971
|
+
*/
|
|
11972
|
+
fontSize: number;
|
|
11973
|
+
/**
|
|
11974
|
+
* Padding between the text and its bounding box, in meters.
|
|
11975
|
+
* Can be specified as either:
|
|
11976
|
+
* - A single number for uniform padding on all sides
|
|
11977
|
+
* - An array of 4 numbers [top, right, bottom, left] for individual side padding
|
|
11978
|
+
* @default [0.2, 1, 0.2, 1.5]
|
|
11979
|
+
*/
|
|
11980
|
+
margin: number | [number, number, number, number];
|
|
11981
|
+
/**
|
|
11982
|
+
* Color of the text outline.
|
|
11983
|
+
* Accepts any CSS color string.
|
|
11984
|
+
* @default 'black'
|
|
11985
|
+
*/
|
|
11986
|
+
outlineColor: string;
|
|
11987
|
+
/**
|
|
11988
|
+
* Opacity of the text outline.
|
|
11989
|
+
* Accepts values between 0 and 1.
|
|
11990
|
+
* @default 1
|
|
11991
|
+
*/
|
|
11992
|
+
outlineOpacity: number;
|
|
11993
|
+
/**
|
|
11994
|
+
* Blur radius for the text outline.
|
|
11995
|
+
* Can be a number in pixels or a string with units.
|
|
11996
|
+
*/
|
|
11997
|
+
outlineBlur: number | string;
|
|
11998
|
+
/**
|
|
11999
|
+
* Width of the text outline effect in pixels.
|
|
12000
|
+
*/
|
|
12001
|
+
outlineWidth: number;
|
|
12002
|
+
/**
|
|
12003
|
+
* Horizontal offset of the outline effect from the text, in pixels.
|
|
12004
|
+
*/
|
|
12005
|
+
outlineOffsetX: number;
|
|
12006
|
+
/**
|
|
12007
|
+
* Vertical offset of the outline effect from the text, in pixels.
|
|
12008
|
+
*/
|
|
12009
|
+
outlineOffsetY: number;
|
|
12010
|
+
/**
|
|
12011
|
+
* Width of the inner stroke of each text glyph.
|
|
12012
|
+
* @default 0
|
|
12013
|
+
*/
|
|
12014
|
+
strokeWidth: number;
|
|
12015
|
+
/**
|
|
12016
|
+
* Maximum width constraint for the text area in meters.
|
|
12017
|
+
* Overrides default text field constraints when set.
|
|
12018
|
+
*/
|
|
12019
|
+
maxWidth: number | undefined;
|
|
12020
|
+
/**
|
|
12021
|
+
* Maximum height constraint for the text area in meters.
|
|
12022
|
+
* Overrides default text field constraints when set.
|
|
12023
|
+
*/
|
|
12024
|
+
maxHeight: number | undefined;
|
|
12025
|
+
/**
|
|
12026
|
+
* Opacity of the text stroke when strokeWidth > 0.
|
|
12027
|
+
* @default 1
|
|
12028
|
+
*/
|
|
12029
|
+
strokeOpacity: number;
|
|
12030
|
+
/**
|
|
12031
|
+
* Color of the text stroke when strokeWidth > 0.
|
|
12032
|
+
* Accepts any CSS color string.
|
|
12033
|
+
* @default 'black'
|
|
12034
|
+
*/
|
|
12035
|
+
strokeColor: string;
|
|
12036
|
+
/**
|
|
12037
|
+
* Opacity of the text fill, independent of stroke and outline opacity.
|
|
12038
|
+
* Set to 0 to show only stroke/outline.
|
|
12039
|
+
* Accepts values between 0 and 1.
|
|
12040
|
+
*/
|
|
12041
|
+
fillOpacity: number;
|
|
12042
|
+
/**
|
|
12043
|
+
* Color to display when text is hovered.
|
|
12044
|
+
* Falls back to global hover color if undefined.
|
|
12045
|
+
*/
|
|
12046
|
+
hoverColor: string | undefined;
|
|
12047
|
+
};
|
|
12048
|
+
}
|
|
12049
|
+
|
|
11021
12050
|
declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-object' {
|
|
11022
12051
|
import type { Polygon, MultiPolygon, FloorProperties as MVFFloor, ParsedMVF, Feature } from '@mappedin/mvf';
|
|
11023
12052
|
import type { RendererCore } from '@mappedin/core-sdk';
|
|
@@ -11025,8 +12054,12 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-object'
|
|
|
11025
12054
|
import type { TShow3DMapOptions } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
11026
12055
|
class Layer {
|
|
11027
12056
|
containerId: string;
|
|
12057
|
+
labelIds: Set<string>;
|
|
11028
12058
|
layers: Map<string, string>;
|
|
11029
|
-
|
|
12059
|
+
renderer: RendererCore;
|
|
12060
|
+
constructor(renderer: RendererCore, containerId: string, layers?: Map<any, any>);
|
|
12061
|
+
show(): void;
|
|
12062
|
+
hide(): void;
|
|
11030
12063
|
}
|
|
11031
12064
|
export class FloorObject implements MVFFloor {
|
|
11032
12065
|
id: string;
|
|
@@ -11052,11 +12085,11 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/utils' {
|
|
|
11052
12085
|
import { Coordinate, type MapObject, type Space } from '@mappedin/mappedin-js/mappedin-js/src/map-data-objects';
|
|
11053
12086
|
import type { Position, EntranceCollection, LineString, Polygon, Point, SpaceProperties, ObstructionProperties, StyleCollection, PolygonStyle, LineStringStyle, Feature, ObstructionCollection, PointStyle } from '@mappedin/mvf';
|
|
11054
12087
|
import type { WithPolygonImage } from '@packages/internal/mvf-utils';
|
|
11055
|
-
import type { FeatureCollection, MultiLineString } from 'geojson';
|
|
12088
|
+
import type { BBox, FeatureCollection, MultiLineString } from 'geojson';
|
|
11056
12089
|
import type { LabelState, MarkerState, GeometryState, CollisionRankingTier, LineStyle, PaintStyle } from '@mappedin/core-sdk';
|
|
11057
12090
|
import { type TGeometryState, type TLabelState, type TDirectionInstructionAction, type TShow3DMapOptions, type Label, type Marker, type Model } from '@mappedin/mappedin-js/mappedin-js/src';
|
|
11058
12091
|
import type { TDoorsState, TMarkerState, TWallsState } from '@mappedin/mappedin-js/mappedin-js/src/types';
|
|
11059
|
-
import type { Image, Shape } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
12092
|
+
import type { Image, Shape, Text3D } from '@mappedin/mappedin-js/mappedin-js/src/map-view-objects';
|
|
11060
12093
|
import type { GeoJsonApi } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/api';
|
|
11061
12094
|
import type { Tween } from '@tweenjs/tween.js';
|
|
11062
12095
|
export function convertCoordinateToPosition(coord: Coordinate): Position;
|
|
@@ -11083,10 +12116,12 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/utils' {
|
|
|
11083
12116
|
export type WithId<T> = T & {
|
|
11084
12117
|
id?: string;
|
|
11085
12118
|
};
|
|
11086
|
-
export function groupGeometryByStyle(features: Feature<LineString | Polygon | Point, SpaceProperties | ObstructionProperties>[], styleMap: AggregatedStyleMap): Map<WithId<PolygonStyle> | WithId<LineStringStyle> | WithId<PointStyle>, Feature<
|
|
12119
|
+
export function groupGeometryByStyle(features: Feature<LineString | Polygon | Point, SpaceProperties | ObstructionProperties>[], styleMap: AggregatedStyleMap): Map<WithId<PolygonStyle> | WithId<LineStringStyle> | WithId<PointStyle>, Feature<Polygon | LineString | Point, WithPolygonImage<SpaceProperties> | WithPolygonImage<ObstructionProperties>>[]>;
|
|
11087
12120
|
export function translateToCoreStyle(style: PolygonStyle | LineStringStyle, userOptions?: TShow3DMapOptions): PaintStyle | LineStyle;
|
|
11088
|
-
export const getTargetID: <T extends Space | Shape | MapObject | Label | Marker | Model | Image | string>(target: T, api: GeoJsonApi) => string | undefined;
|
|
12121
|
+
export const getTargetID: <T extends Space | Shape | MapObject | Label | Text3D | Marker | Model | Image | string>(target: T, api: GeoJsonApi) => string | undefined;
|
|
11089
12122
|
export function tweenToPromise(tween: Tween): Promise<void>;
|
|
12123
|
+
export function getBoundingBox(geometry: GeoJSON.Feature<GeoJSON.Polygon | GeoJSON.MultiPolygon, any>): BBox;
|
|
12124
|
+
export function expandBbox(bbox: BBox, bboxToExpand: BBox): number[];
|
|
11090
12125
|
export function unique<T>(array: T[]): T[];
|
|
11091
12126
|
}
|
|
11092
12127
|
|
|
@@ -11094,7 +12129,7 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-stack-ob
|
|
|
11094
12129
|
import type { RendererCore } from '@mappedin/core-sdk';
|
|
11095
12130
|
import type { FloorId, FloorStack as MVFFloorStack, Facade as MVFFacade } from '@mappedin/mvf';
|
|
11096
12131
|
import type { FloorObject } from '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-object';
|
|
11097
|
-
export class FloorStackObject implements Omit<MVFFloorStack, 'maps' | 'floors' | 'defaultFloor'> {
|
|
12132
|
+
export class FloorStackObject implements Omit<MVFFloorStack, 'maps' | 'floors' | 'defaultFloor' | 'footprint'> {
|
|
11098
12133
|
#private;
|
|
11099
12134
|
id: MVFFloorStack['id'];
|
|
11100
12135
|
externalId: MVFFloorStack['externalId'];
|
|
@@ -11106,7 +12141,6 @@ declare module '@mappedin/mappedin-js/mappedin-js/src/api-geojson/floor-stack-ob
|
|
|
11106
12141
|
floorObjects: FloorObject[];
|
|
11107
12142
|
floorObjectsByElevation: Map<number, FloorObject>;
|
|
11108
12143
|
metadata?: MVFFloorStack['metadata'];
|
|
11109
|
-
footprint?: MVFFloorStack['footprint'];
|
|
11110
12144
|
containerId: string;
|
|
11111
12145
|
facade?: MVFFacade;
|
|
11112
12146
|
constructor(floorStack: MVFFloorStack, parentId: string, renderer: RendererCore, facade?: MVFFacade);
|
|
@@ -11124,7 +12158,7 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/collisions/collider-pr
|
|
|
11124
12158
|
import { Rectangle } from '@packages/internal/quad-tree';
|
|
11125
12159
|
export type TSerializedCollider = {
|
|
11126
12160
|
rank: number;
|
|
11127
|
-
|
|
12161
|
+
enabledAndVisible: boolean;
|
|
11128
12162
|
x: number;
|
|
11129
12163
|
y: number;
|
|
11130
12164
|
bboxes: {
|
|
@@ -11149,42 +12183,6 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/collisions/collider-pr
|
|
|
11149
12183
|
};
|
|
11150
12184
|
}
|
|
11151
12185
|
|
|
11152
|
-
declare module '@mappedin/mappedin-js/geojson/src/entities/utils' {
|
|
11153
|
-
import type { CollisionRankingTier, GeometryState, LabelState, RendererCore } from '@mappedin/mappedin-js/geojson/src';
|
|
11154
|
-
import { type MarkerState } from '@mappedin/mappedin-js/geojson/src/components/marker';
|
|
11155
|
-
import type { PathUpdateState } from '@mappedin/mappedin-js/geojson/src/components/path';
|
|
11156
|
-
import type { Geometry3DTypes, Position, RendererState } from '@mappedin/mappedin-js/geojson/src/renderer';
|
|
11157
|
-
import { GeometryGroupObject3D, type GeometryGroupState } from '@mappedin/mappedin-js/geojson/src/entities/geometry-group';
|
|
11158
|
-
import { GroupContainerObject3D } from '@mappedin/mappedin-js/geojson/src/entities/group-container';
|
|
11159
|
-
import { Geometry3D } from '@mappedin/mappedin-js/geojson/src/entities/geometry3d';
|
|
11160
|
-
import { Geometry2D } from '@mappedin/mappedin-js/geojson/src/entities/geometry2d';
|
|
11161
|
-
import type { StyleComponent } from '@mappedin/mappedin-js/geojson/src/components/style';
|
|
11162
|
-
import type { GeometryGroupStyleComponent } from '@mappedin/mappedin-js/geojson/src/components/geometry-group-style';
|
|
11163
|
-
export function updateInteractivity(entity: Geometry3DTypes | Geometry2D, update: boolean | undefined, state: RendererState): boolean;
|
|
11164
|
-
export function updateGroupColor(entity: GeometryGroupObject3D, state: RendererState, update: Partial<Pick<GeometryGroupState, 'color' | 'topColor'>>): boolean | undefined;
|
|
11165
|
-
export function updateGroupShading(entity: GeometryGroupObject3D, update?: GeometryGroupState['shading']): boolean;
|
|
11166
|
-
export function updateImageProps(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
11167
|
-
export function updateHeight(entity: Geometry3D | GeometryGroupObject3D, state: RendererState, update?: number): boolean;
|
|
11168
|
-
export function updateColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Partial<GeometryState>): void;
|
|
11169
|
-
export function updatePosition(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Position | undefined, convertTo3DMapPosition: RendererCore['convertTo3DMapPosition']): void;
|
|
11170
|
-
export function updateParent(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: GroupContainerObject3D | undefined): boolean;
|
|
11171
|
-
export function updateEnabled(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: boolean | undefined): void;
|
|
11172
|
-
export function updateMarker(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<MarkerState> | undefined, state: RendererState): boolean;
|
|
11173
|
-
export function updateRank(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: CollisionRankingTier | undefined): boolean;
|
|
11174
|
-
export function updateLabel(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update: Partial<LabelState> | undefined, state: RendererState): void;
|
|
11175
|
-
export function updateHoverColor(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: string): void;
|
|
11176
|
-
export function updateFlipImageToFaceCamera(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: boolean): void;
|
|
11177
|
-
export function updateVisibility(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: boolean): boolean;
|
|
11178
|
-
export function updateOpacity(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, state: RendererState, update?: number): boolean;
|
|
11179
|
-
export function updateGroupTexture(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: Pick<GeometryGroupStyleComponent, 'texture' | 'topTexture'>): void;
|
|
11180
|
-
export function updateIndividualGeometryTexture(entity: Geometry3D, update?: Pick<StyleComponent, 'texture' | 'topTexture'>): boolean;
|
|
11181
|
-
export function updateIndividualGeometryOpacity(entity: Geometry3D, update?: number): boolean;
|
|
11182
|
-
export function updateAltitude(entity: Geometry3D | Geometry2D | GeometryGroupObject3D | GroupContainerObject3D, update?: number): boolean;
|
|
11183
|
-
export function updateOutline(entity: Geometry3DTypes, update?: boolean): boolean;
|
|
11184
|
-
export function handlePathUpdate(geometry: Geometry3D, update: PathUpdateState): void;
|
|
11185
|
-
export function pickPathOptions(update: PathUpdateState): Partial<PathUpdateState>;
|
|
11186
|
-
}
|
|
11187
|
-
|
|
11188
12186
|
declare module '@mappedin/mappedin-js/geojson/src/systems/interactions/system' {
|
|
11189
12187
|
import type { PerspectiveCamera, Vector3, Object3D, Mesh } from 'three';
|
|
11190
12188
|
import { Raycaster } from 'three';
|
|
@@ -11592,13 +12590,13 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/camera/system' {
|
|
|
11592
12590
|
* @param [curve] {Mappedin.Easing} The animation curve to use for the animation.
|
|
11593
12591
|
* @param [callback] {Function} A callback that will be executed when the animation is done.
|
|
11594
12592
|
* @param [options] {Object} An Options object
|
|
11595
|
-
* @param [options.
|
|
12593
|
+
* @param [options.interruptible=true] {Boolean} Determines if this animation must complete before any new animations start
|
|
11596
12594
|
it will cancel and omit any previous animations. Set to "chain" to chain instead
|
|
11597
12595
|
*
|
|
11598
12596
|
* @return {Mappedin.Tween} The tween being used, if you want to do anything to control it manually. Do not overide it's events.
|
|
11599
12597
|
*/
|
|
11600
12598
|
animateCamera: (target: AnimateCameraTarget, duration: number, curve?: (n: number) => number, callback?: (...args: any) => void, cancelledCallback?: (...args: any) => void, options?: {
|
|
11601
|
-
|
|
12599
|
+
interruptible?: boolean;
|
|
11602
12600
|
}) => Promise<void>;
|
|
11603
12601
|
/**
|
|
11604
12602
|
* Allows you to set any of the Camera's position, zoom, rotation and tilt at once, with one function.
|
|
@@ -11864,6 +12862,7 @@ declare module '@mappedin/mappedin-js/geojson/src/systems/camera/types' {
|
|
|
11864
12862
|
boundingBox?: any;
|
|
11865
12863
|
callback?: () => void;
|
|
11866
12864
|
cancelledCallback?: () => void;
|
|
12865
|
+
interruptible?: boolean;
|
|
11867
12866
|
};
|
|
11868
12867
|
}
|
|
11869
12868
|
|