UNPKG

@itwin/measure-tools-react

Version:
40 lines 2.22 kB
import type { BeButtonEvent, ScreenViewport } from "@itwin/core-frontend"; import { EventHandled, SnapDetail } from "@itwin/core-frontend"; import type { Feature } from "../api/FeatureTracking.js"; import { MeasurementToolBase } from "../api/MeasurementTool.js"; import type { LocationMeasurement } from "../measurements/LocationMeasurement.js"; import { MeasureLocationToolModel } from "../toolmodels/MeasureLocationToolModel.js"; import type { DialogItem, DialogPropertySyncItem } from "@itwin/appui-abstract"; import { SheetMeasurementsHelper } from "../api/SheetMeasurementHelper.js"; /** Tool that measure precise locations */ export declare class MeasureLocationTool extends MeasurementToolBase<LocationMeasurement, MeasureLocationToolModel> { static toolId: string; static iconSpec: string; private static readonly useDynamicMeasurementPropertyName; protected get allowedDrawingTypes(): SheetMeasurementsHelper.DrawingType[]; private static _isUserNotifiedOfGeolocationFailure; private _useDynamicMeasurement; static get flyover(): string; static get description(): string; static get keyin(): string; protected get feature(): Feature | undefined; constructor(enableSheetMeasurements?: boolean, allowedViewportCallback?: (vp: ScreenViewport) => boolean); onRestartTool(): Promise<void>; onPostInstall(): Promise<void>; onDataButtonDown(ev: BeButtonEvent): Promise<EventHandled>; private sheetMeasurementsDataButtonDown; onMouseMotion(ev: BeButtonEvent): Promise<void>; private createLocationProps; protected createToolModel(): MeasureLocationToolModel; isValidLocation(ev: BeButtonEvent, isButtonEvent: boolean): boolean; protected requestSnap(ev: BeButtonEvent): Promise<SnapDetail | undefined>; /** Update the props to add GeoLocation information when available */ private queryGeoLocation; private getSlopeFromNormal; protected updateToolAssistance(): void; onInstall(): Promise<boolean>; onCleanup(): Promise<void>; supplyToolSettingsProperties(): DialogItem[]; applyToolSettingPropertyChange(updatedValue: DialogPropertySyncItem): Promise<boolean>; } //# sourceMappingURL=MeasureLocationTool.d.ts.map