import GeometryCollection from './GeometryCollection'; import { GeometryOptionsType, type Geometry } from './Geometry'; import { MultiPathsCoordinates, PathCoordinates, PathsCoordinates } from './Path'; import { MarkerCoordinatesType } from './Marker'; import { LineStringCoordinatesType } from './LineString'; import { PolygonCoordinatesType } from './Polygon'; /** * MultiPoint、MultiLineString和MultiPolygon的父类 * @english * The parent class for MultiPoint, MultiLineString and MultiPolygon * @category geometry * @abstract * @extends {GeometryCollection} */ type MultiGeometryCoordinates = PathCoordinates | PathsCoordinates | MultiPathsCoordinates; type SingleGeometryCreateCoordinates = MarkerCoordinatesType | LineStringCoordinatesType | PolygonCoordinatesType; export type MultiGeometryCreateCoordinates = Array; type MultiGeometryData = Array; type GeometryClass = (new (coordinates: SingleGeometryCreateCoordinates, options: Record) => T); declare class MultiGeometry extends GeometryCollection { GeometryType: GeometryClass; /** * @param {Class} geoType Type of the geometry * @param {String} type type in String, e.g. "MultiPoint", "MultiLineString" * @param {Geometry[]} data data * @param {Object} [options=null] configuration options */ constructor(geoType: GeometryClass, type: string, data: MultiGeometryData, options?: GeometryOptionsType); /** * 获取集合中得坐标 * @english * Get coordinates of the collection * @return {Coordinate[]|Coordinate[][]|Coordinate[][][]} coordinates */ getCoordinates(): MultiGeometryCoordinates; /** * 设置集合得坐标 * @english * Set new coordinates to the collection * @param {Coordinate[]|Coordinate[][]|Coordinate[][][]} coordinates * @returns {Geometry} this * @fires maptalk.Geometry#shapechange */ setCoordinates(coordinates: MultiGeometryCreateCoordinates): this; } export default MultiGeometry; //# sourceMappingURL=MultiGeometry.d.ts.map