@itwin/core-frontend
Version:
iTwin.js frontend components
93 lines • 3.4 kB
TypeScript
/** @packageDocumentation
* @module MapLayers
*/
import { PropertyDescription, PropertyRecord, PropertyValue } from "@itwin/appui-abstract";
import { Cartographic } from "@itwin/core-common";
import { GraphicPrimitive } from "../../common/render/GraphicPrimitive";
/** Options supplied to a `Viewport.getMapFeatureInfo` .
* @beta
*/
export interface MapFeatureInfoOptions {
/** The distance in screen pixels from the specified geometry within which the query operation should be performed. */
tolerance?: number;
}
/** Contains record data of a [[MapLayerFeature]] instance .
* @beta
*/
export declare class MapFeatureInfoRecord extends PropertyRecord {
/** Construct a record from [PropertyValue]($appui-abstract) and [PropertyDescription]($appui-abstract) objects. */
constructor(value: PropertyValue, property: PropertyDescription);
}
/** Main feature info container for a MapFeatureInfo query.
* Results are grouped per map-layer instance.
* @see [[MapLayerFeatureInfo]]
* @beta
*/
export interface MapFeatureInfo {
/** Feature info for each layer. */
layerInfos?: MapLayerFeatureInfo[];
/** The approximate location in world coordinates on the identified feature. */
hitPoint?: Cartographic;
}
/** Features container for a given map-layer.
* Results are grouped per sub-layer instance.
* @see [[MapSubLayerFeatureInfo]]
* @beta
*/
export interface MapLayerFeatureInfo {
/** Name of the layer associated with the identified feature. */
layerName: string;
/** Feature info for each sub-layer. */
subLayerInfos?: MapSubLayerFeatureInfo[];
}
/** Features container for a given sub-layer.
* @see [[MapSubLayerFeatureInfo]]
* @beta
*/
export interface MapSubLayerFeatureInfo {
/** Name of the layer associated with the identified feature. */
subLayerName: string;
/** Name of the field representing the feature label (suggestion only). */
displayFieldName?: string;
/** List of features identified for this sub-layer. */
features: MapLayerFeature[];
}
/** Attributes and graphics container of a given feature instance
* Results are grouped per sub-layer instance.
* @see [[GraphicPrimitive]]
* @see [[MapFeatureInfoRecord]]
* @beta
*/
export interface MapLayerFeature {
/** List of geometries identified for this feature. */
geometries?: MapLayerFeatureGeometry[];
/** List of attributes identified for this feature. */
attributes: MapLayerFeatureAttribute[];
}
/** Geometry of a [[MapLayerFeature]]
* @see [[MapLayerFeature]]
* @beta
*/
export interface MapLayerFeatureGeometry {
/** graphic primitive representing a feature. */
graphic: GraphicPrimitive;
}
/** Attribute of a [[MapLayerFeature]]
* @see [[MapLayerFeature]]
* @beta
*/
export interface MapLayerFeatureAttribute {
/** Value of a feature attribute. */
value: PropertyValue;
/** Property (or field) description of a feature attribute. */
property: PropertyDescription;
}
/** Utility class that creates a [PropertyRecord]($appui-abstract) out of [[MapLayerFeatureAttribute]]
* @see [[MapLayerFeature]]
* @beta
*/
export declare class MapLayerFeatureRecord {
/** Convert a [[MapLayerFeatureAttribute]] object into [PropertyRecord]($appui-abstract) object. */
static createRecordFromAttribute(attribute: MapLayerFeatureAttribute): PropertyRecord;
}
//# sourceMappingURL=MapFeatureInfo.d.ts.map