Skip to content

Commit 01873b1

Browse files
authored
type: 添加更多的ts定义 (#373)
1 parent 94171fa commit 01873b1

File tree

3 files changed

+59
-6
lines changed

3 files changed

+59
-6
lines changed

packages/types/src/base.d.ts

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -168,6 +168,29 @@ declare namespace AMap {
168168
*/
169169
toString?(): string;
170170
}
171+
class GeometryUtil {
172+
distance(p1, p2): number;
173+
ringArea(ring: LngLat[] | [number, number][]): number;
174+
ringAreaByAltitude(params: any): number;
175+
isClockwise(ring: LngLat[] | [number, number][]): boolean;
176+
typePolygon(ring: LngLat[] | [number, number][]): boolean;
177+
makesureClockwise(ring: LngLat[] | [number, number][]): [number, number][];
178+
makesureAntiClockwise(ring: LngLat[] | [number, number][]): [number, number][];
179+
distanceOfLine(ring: LngLat[] | [number, number][]): number;
180+
isPointInRing(p: LngLat | [number, number],ring: LngLat[] | [number, number][]): boolean;
181+
distanceToLine(p: LngLat | [number, number],line: LngLat[] | [number, number][]): number;
182+
}
183+
184+
interface DistrictSearchOptions {
185+
level: string; showbiz: boolean; extensions: string; subdistrict: number
186+
}
187+
/**
188+
* 需引入相关plugin
189+
*/
190+
class DistrictSearch {
191+
constructor(opts: DistrictSearchOptions);
192+
search(keywords: string, callback: (status: string, result: any) => void): void;
193+
}
171194
class MapEventListener<T = ''> {
172195
/**
173196
* 设置控件可见

packages/types/src/core.d.ts

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,16 @@ declare namespace AMap {
4040
* @param duration
4141
*/
4242
setZoom(zoom: number, immediately?: boolean, duration?: number): void;
43+
/**
44+
* 设置当前地图可现实的缩放级别, 取值范围为[2, 20]
45+
* @param zoomRange 缩放级别范围
46+
*/
47+
setZooms(zoomRange: [number, number]): void;
4348
/**
4449
* 获取当前地图缩放级别, 默认取值范围为[2, 20]
4550
* @param digits zoom级别的小数位精度,缺省为2
4651
*/
47-
getZoom(digits: number): number;
52+
getZoom(digits?: number): number;
4853
/** 地图放大一级显示 */
4954
zoomIn(): void;
5055
/** 地图缩小一级显示 */
@@ -252,6 +257,23 @@ declare namespace AMap {
252257
* @returns 新的地图视口范围
253258
*/
254259
setFitView(overlays: Array<TileLayer> | null, immediately: boolean, avoid: Array<number>, maxZoom?: number): Bounds;
260+
/**
261+
* 根据 overlays 计算出合适的中心点和 zoom 级别
262+
* 参数说明:
263+
* @param overlays (Array<Overlay>) 覆盖物
264+
* @param avoid (Array<Number> = [0,0,0,0]) 四周边距,上、下、左、右
265+
* @param maxZoom (Number = CoreMap.defaultZooms[1]) 最大 zoom 级别
266+
*/
267+
getFitZoomAndCenterByOverlays(overlays: Array<TileLayer> | null, avoid: number[], maxZoom: number): void;
268+
/**
269+
* 根据 overlays 计算出合适的中心点和 zoom 级别
270+
* 参数说明:
271+
* @param bounds ((Array<number> | Bounds)) 需要计算的范围
272+
* @param avoid (Array<Number> = [0,0,0,0]) 四周边距,上、下、左、右
273+
* @param maxZoom (Number = CoreMap.defaultZooms[1]) 最大 zoom 级别
274+
*/
275+
getFitZoomAndCenterByBounds(bounds: (number[] | Bounds), avoid: number[], maxZoom: number): void;
276+
255277
/**
256278
* 添加控件。参数可以是插件列表中的任何插件对象,如:ToolBar、OverView、Scale等
257279
* @param control 控件对象

packages/types/src/overlay.d.ts

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,7 @@ declare namespace AMap {
356356
* @param point
357357
*/
358358
contains(point: LngLatLike): boolean;
359-
359+
destroy(): void;
360360
}
361361
interface PolylineEvents extends EventsCommonProps {
362362
onDragStart?(event:MapsEvent):void;
@@ -478,6 +478,7 @@ declare namespace AMap {
478478
setExtData(extData: any): void;
479479
/** 获取圆形的属性 */
480480
getOptions(): CircleOptions;
481+
destroy(): void;
481482
}
482483
interface CircleEvents extends EventsCommonProps { }
483484
interface CircleOptions {
@@ -555,6 +556,7 @@ declare namespace AMap {
555556
setExtData(extData: any): void;
556557
/** 获取圆形的属性 */
557558
getOptions(): CircleMarkerOptions;
559+
destroy(): void;
558560
}
559561
interface CircleMarkerEvents extends EventsCommonProps { }
560562
interface CircleMarkerOptions {
@@ -606,6 +608,7 @@ declare namespace AMap {
606608
getExtData(): any;
607609
/** 设置用户自定义属性,支持JavaScript API任意数据类型 */
608610
setExtData(extData: any): void;
611+
destroy(): void;
609612
}
610613
interface EllipseOptions {
611614
/**
@@ -694,6 +697,7 @@ declare namespace AMap {
694697
setExtData(extData: any): void;
695698
/** 获取矩形的属性 */
696699
getOptions(): RectangleOptions;
700+
destroy(): void;
697701
}
698702
interface RectangleOptions {
699703
/** 要显示该覆盖物的地图对象 */
@@ -770,6 +774,7 @@ declare namespace AMap {
770774
getLength(): number;
771775
/** 获取当前折线的矩形范围对象 */
772776
getBounds(): Bounds | undefined;
777+
destroy(): void;
773778
}
774779
interface BezierCurveOptions {
775780
/**
@@ -838,6 +843,12 @@ declare namespace AMap {
838843
/** 多边形 */
839844
class Polygon extends MapEventListener<'hide' | 'show' | 'touchstart' | 'mouseout' | 'mouseover' | 'mouseup' | 'mousedown' | 'rightclick' | 'click' | 'dblclick' | 'touchend' | 'touchmove'> {
840845
constructor(opts: PolygonOptions);
846+
hide(): void;
847+
show(): void;
848+
/** 获取用户自定义属性 */
849+
getExtData(): any;
850+
/** 设置用户自定义属性,支持JavaScript API任意数据类型,如Polygon的id等 */
851+
setExtData(ext: any): void;
841852
/** 设置多边形轮廓线节点数组,当为“环”多边形时,path为二维数组,数组元素为多边形轮廓线的节点坐标数组 */
842853
setPath(path: Array<LngLat> | Array<Array<LngLat>>): void;
843854
/** 获取多边形轮廓线节点数组。其中lat和lng是经纬度参数。 */
@@ -848,14 +859,11 @@ declare namespace AMap {
848859
getOptions(): PolygonOptions;
849860
/** 获取当前多边形的矩形范围对象。(自v1.2 新增) */
850861
getBounds(): Bounds;
862+
destroy(): void;
851863
/** 获取多边形的面积(单位:平方米)(自v1.1 新增) */
852864
getArea(): number;
853865
/** 在指定地图上显示当前的多边形。参数取值为null时,在地图上移除当前多边形(自v1.2 新增) */
854866
setMap(map: Map | null): void;
855-
/** 设置用户自定义属性,支持JavaScript API任意数据类型,如Polygon的id等 */
856-
setExtData(ext: any): void;
857-
/** 获取用户自定义属性 */
858-
getExtData(): any;
859867
/** 判断指定点坐标是否在多边形范围内 */
860868
contains(point: LngLat): boolean;
861869
}

0 commit comments

Comments
 (0)