Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: 添加更多的ts定义 #373

Merged
merged 1 commit into from
Aug 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions packages/types/src/base.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -168,6 +168,29 @@ declare namespace AMap {
*/
toString?(): string;
}
class GeometryUtil {
distance(p1, p2): number;
ringArea(ring: LngLat[] | [number, number][]): number;
ringAreaByAltitude(params: any): number;
isClockwise(ring: LngLat[] | [number, number][]): boolean;
typePolygon(ring: LngLat[] | [number, number][]): boolean;
makesureClockwise(ring: LngLat[] | [number, number][]): [number, number][];
makesureAntiClockwise(ring: LngLat[] | [number, number][]): [number, number][];
distanceOfLine(ring: LngLat[] | [number, number][]): number;
isPointInRing(p: LngLat | [number, number],ring: LngLat[] | [number, number][]): boolean;
distanceToLine(p: LngLat | [number, number],line: LngLat[] | [number, number][]): number;
}

interface DistrictSearchOptions {
level: string; showbiz: boolean; extensions: string; subdistrict: number
}
/**
* 需引入相关plugin
*/
class DistrictSearch {
constructor(opts: DistrictSearchOptions);
search(keywords: string, callback: (status: string, result: any) => void): void;
}
class MapEventListener<T = ''> {
/**
* 设置控件可见
Expand Down
24 changes: 23 additions & 1 deletion packages/types/src/core.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -40,11 +40,16 @@ declare namespace AMap {
* @param duration
*/
setZoom(zoom: number, immediately?: boolean, duration?: number): void;
/**
* 设置当前地图可现实的缩放级别, 取值范围为[2, 20]
* @param zoomRange 缩放级别范围
*/
setZooms(zoomRange: [number, number]): void;
/**
* 获取当前地图缩放级别, 默认取值范围为[2, 20]
* @param digits zoom级别的小数位精度,缺省为2
*/
getZoom(digits: number): number;
getZoom(digits?: number): number;
/** 地图放大一级显示 */
zoomIn(): void;
/** 地图缩小一级显示 */
Expand Down Expand Up @@ -252,6 +257,23 @@ declare namespace AMap {
* @returns 新的地图视口范围
*/
setFitView(overlays: Array<TileLayer> | null, immediately: boolean, avoid: Array<number>, maxZoom?: number): Bounds;
/**
* 根据 overlays 计算出合适的中心点和 zoom 级别
* 参数说明:
* @param overlays (Array<Overlay>) 覆盖物
* @param avoid (Array<Number> = [0,0,0,0]) 四周边距,上、下、左、右
* @param maxZoom (Number = CoreMap.defaultZooms[1]) 最大 zoom 级别
*/
getFitZoomAndCenterByOverlays(overlays: Array<TileLayer> | null, avoid: number[], maxZoom: number): void;
/**
* 根据 overlays 计算出合适的中心点和 zoom 级别
* 参数说明:
* @param bounds ((Array<number> | Bounds)) 需要计算的范围
* @param avoid (Array<Number> = [0,0,0,0]) 四周边距,上、下、左、右
* @param maxZoom (Number = CoreMap.defaultZooms[1]) 最大 zoom 级别
*/
getFitZoomAndCenterByBounds(bounds: (number[] | Bounds), avoid: number[], maxZoom: number): void;

/**
* 添加控件。参数可以是插件列表中的任何插件对象,如:ToolBar、OverView、Scale等
* @param control 控件对象
Expand Down
18 changes: 13 additions & 5 deletions packages/types/src/overlay.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -356,7 +356,7 @@ declare namespace AMap {
* @param point
*/
contains(point: LngLatLike): boolean;

destroy(): void;
}
interface PolylineEvents extends EventsCommonProps {
onDragStart?(event:MapsEvent):void;
Expand Down Expand Up @@ -478,6 +478,7 @@ declare namespace AMap {
setExtData(extData: any): void;
/** 获取圆形的属性 */
getOptions(): CircleOptions;
destroy(): void;
}
interface CircleEvents extends EventsCommonProps { }
interface CircleOptions {
Expand Down Expand Up @@ -555,6 +556,7 @@ declare namespace AMap {
setExtData(extData: any): void;
/** 获取圆形的属性 */
getOptions(): CircleMarkerOptions;
destroy(): void;
}
interface CircleMarkerEvents extends EventsCommonProps { }
interface CircleMarkerOptions {
Expand Down Expand Up @@ -606,6 +608,7 @@ declare namespace AMap {
getExtData(): any;
/** 设置用户自定义属性,支持JavaScript API任意数据类型 */
setExtData(extData: any): void;
destroy(): void;
}
interface EllipseOptions {
/**
Expand Down Expand Up @@ -694,6 +697,7 @@ declare namespace AMap {
setExtData(extData: any): void;
/** 获取矩形的属性 */
getOptions(): RectangleOptions;
destroy(): void;
}
interface RectangleOptions {
/** 要显示该覆盖物的地图对象 */
Expand Down Expand Up @@ -770,6 +774,7 @@ declare namespace AMap {
getLength(): number;
/** 获取当前折线的矩形范围对象 */
getBounds(): Bounds | undefined;
destroy(): void;
}
interface BezierCurveOptions {
/**
Expand Down Expand Up @@ -838,6 +843,12 @@ declare namespace AMap {
/** 多边形 */
class Polygon extends MapEventListener<'hide' | 'show' | 'touchstart' | 'mouseout' | 'mouseover' | 'mouseup' | 'mousedown' | 'rightclick' | 'click' | 'dblclick' | 'touchend' | 'touchmove'> {
constructor(opts: PolygonOptions);
hide(): void;
show(): void;
/** 获取用户自定义属性 */
getExtData(): any;
/** 设置用户自定义属性,支持JavaScript API任意数据类型,如Polygon的id等 */
setExtData(ext: any): void;
/** 设置多边形轮廓线节点数组,当为“环”多边形时,path为二维数组,数组元素为多边形轮廓线的节点坐标数组 */
setPath(path: Array<LngLat> | Array<Array<LngLat>>): void;
/** 获取多边形轮廓线节点数组。其中lat和lng是经纬度参数。 */
Expand All @@ -848,14 +859,11 @@ declare namespace AMap {
getOptions(): PolygonOptions;
/** 获取当前多边形的矩形范围对象。(自v1.2 新增) */
getBounds(): Bounds;
destroy(): void;
/** 获取多边形的面积(单位:平方米)(自v1.1 新增) */
getArea(): number;
/** 在指定地图上显示当前的多边形。参数取值为null时,在地图上移除当前多边形(自v1.2 新增) */
setMap(map: Map | null): void;
/** 设置用户自定义属性,支持JavaScript API任意数据类型,如Polygon的id等 */
setExtData(ext: any): void;
/** 获取用户自定义属性 */
getExtData(): any;
/** 判断指定点坐标是否在多边形范围内 */
contains(point: LngLat): boolean;
}
Expand Down