gisviewer-vue3-arcgis
Version:
在应用中引入私服的包, 项目根目录下 新建文件 .npmrc 在 .npmrc 中对包源进行配置:
317 lines (316 loc) • 7.24 kB
TypeScript
/**
* 路口象限,路口中心点为坐标轴原点,正北方向为0°。
* 225° ~ 315°:西象限。
* 315° ~ 45°:北象限。
* 45° ~ 135°:东象限。
* 135° ~ 225°:南象限。
*/
import * as Three from 'three';
export declare enum QuadrantCode {
West = "1",
North = "2",
East = "3",
South = "4"
}
export interface IResult {
status: number;
message: string;
result?: any;
}
export interface IVehicleTrack {
time?: string;
timestamp: number;
localTimestamp: number;
crossId?: string;
ptcId: string;
vehicleId: string;
x: number;
y: number;
ptcType: number;
vehicleType: number;
heading: number;
vehicleColor: number | string;
plateColor: number;
showName?: string;
state?: string;
fixAngle?: number;
speed?: number;
plateNo?: string;
roadLayer?: string;
step?: number;
}
export interface IVehicleRecord {
model: Three.Mesh | Three.Object3D;
data: IVehicleTrack;
segmentStartTime?: number;
segmentTotalTime?: number;
waitForDelete: boolean;
isMoving: boolean;
currentPos?: number[];
}
export interface ILaneNumberParams {
lanes: {
crossId: string;
laneNumber: string;
stopLineCenter: number[];
laneDirection?: number;
}[];
}
export interface ISetMapCenterParams {
center?: number[];
target?: __esri.GoToTarget2D;
zoom?: number;
duration?: number;
}
export interface ILayerVisibleParams {
id: string;
visible: boolean;
}
export interface ILookAtParams {
center: number[];
height: number;
tilt?: number;
heading?: number;
duration?: number;
}
export interface IStartCrossBufferParam {
crossId: string;
crossCenter: number[];
bufferRadius?: number;
}
export interface IPoint {
type: string;
x: number;
y: number;
z?: number;
}
export interface ILine {
type: string;
paths: number[][][];
}
export interface IPolygon {
type: string;
rings: number[][][];
}
export interface IPointSymbol {
type: string;
style?: string;
url?: string;
width?: number;
height?: number;
xoffset?: number;
yoffset?: number;
horizontalOrigin?: string;
verticalOrigin?: string;
color?: string;
size?: number;
}
export interface ILineSymbol {
type: string;
color?: string | number[];
width?: number;
height?: number;
extrudeHeight?: number;
cornerType?: string;
}
export interface IPolygonSymbol {
type: string;
style?: string;
color?: string | number[];
outline?: {
color?: string | number[];
width?: number;
};
}
export interface IOverlay {
geometry: IPoint | ILine | IPolygon;
id?: string;
visible?: boolean;
symbol?: IPointSymbol | ILineSymbol | IPolygonSymbol;
properties?: any;
}
export interface IMaskParam {
geometry: IPolygon;
maskColor?: number[];
maskSize?: number;
}
export interface IOverlayParam {
type?: string;
defaultSymbol?: IPointSymbol | ILineSymbol | IPolygonSymbol;
defaultVisible?: boolean;
overlays: Array<IOverlay>;
visible?: boolean;
}
export interface ISetMapCameraParams {
name: string;
zoom?: number;
duration?: number;
}
export interface IQueueLengthParams {
crossNo: string;
laneId: number;
queueLength: number;
}
export interface IToggleTrafficInfoParams {
name: string;
visible: boolean;
}
export interface ITraceRendererInterface {
init(): Promise<void>;
getLog(): (string | number | undefined)[][];
addVehicles(objects: IVehicleTrack[]): Promise<void>;
updateVehicles(objects: IVehicleTrack[]): Promise<void>;
deleteVehicles(idList: string[]): void;
clearVehicles(): void;
updatePanelContent(contentType: EVehiclePlateState): void;
toggleGroundVehicle(visible: boolean): void;
toggleElevatedVehicle(visible: boolean): void;
toggleTrafficInfo(params: IToggleTrafficInfoParams): void;
togglePause(pause: boolean): void;
setInterpolate(enable: boolean): void;
}
export declare enum EVehiclePlateState {
None = 0,
PlateNumber = 1,
Id = 2,
Mix = 3
}
export interface ILaneInfo {
roadId: string;
sectionId: number;
laneId: number;
}
/** 采样后的车道 */
export interface ISampledLane {
id: number;
type: string;
innerPath: number[][];
outerPath: number[][];
}
/** 采样后的路段 */
export interface ISampledLaneSection {
id: number;
lanePaths: ISampledLane[];
}
/** 采样后的道路 */
export interface ISampledRoad {
id: string;
name: string;
junction: string;
refLine: number[][];
laneSections: ISampledLaneSection[];
}
export interface IRoadLink {
elementId: string;
elementType: string;
contactPoint?: string;
}
export interface IRoadStopLinesResult {
junctionId: string;
stopLines: {
roadId: string;
line: number[][];
}[];
}
export interface IShowOpenDriveFromFileParams {
server: string;
file: string;
options?: {
showJunctionPolygon: boolean;
showJunctionLane: boolean;
showRoadName: boolean;
centerMap?: boolean;
};
selectedCallback?: (info: any) => void;
}
export interface IFindSumoParams {
type: string;
id: string;
flash?: boolean;
}
export interface IUnselectSumoParams {
type: string;
id?: string;
}
export interface ISplitOpenDriveLaneParams {
id: string;
start?: number;
end?: number;
}
export interface IJunctionTableData {
id: string;
name: string;
nodeType: string;
type: string;
coordinates: number[];
district: string;
crossId?: string;
factoryCode?: string;
}
export interface ISignalCountdownProps {
flash: boolean;
displayMode: string;
crossId: string;
roadId: string;
mapPoint: number[];
stopLine: number[][];
position: {
left: number;
top: number;
};
rotation: number;
scale: number;
lampStatus: {
uNumber?: number;
uColor?: string;
lNumber?: number;
lColor?: string;
sNumber?: number;
sColor?: string;
rNumber?: number;
rColor?: string;
};
}
export interface IShowSignalControlAreaParams {
areaList: any[];
style?: string;
}
export interface IDistrictRoad {
id: string;
coordinates: number[][];
districtId: string;
subDistrictId: string;
}
export interface IFindSignalControlAreaParams {
type: string;
id: string;
scale?: number;
}
export interface INode {
id: string;
longitude: number;
latitude: number;
name: string;
signalId?: string;
coordinates?: number[][];
}
export interface IEditSignalControlAreaParams {
crossesInArea: INode[];
addCrossCallback: (params: INode) => void;
removeCrossCallback: (params: {
id: string;
}) => void;
removeAllCrossCallback?: () => void;
odrServer: string;
}
export interface IShowGreenWaveBandParams {
bandId: string;
coordinates: number[][];
nodeList: INode[];
}
export interface IRoadLine {
id: string;
fromNode: string;
toNode: string;
coordinates: number[][];
}