|
@@ -308,10 +308,6 @@ export default {
|
|
|
value: "1.5.2.10",
|
|
value: "1.5.2.10",
|
|
|
label: "区域高程统计",
|
|
label: "区域高程统计",
|
|
|
},
|
|
},
|
|
|
- {
|
|
|
|
|
- value: "1.5.4.5",
|
|
|
|
|
- label: "缓冲区计算",
|
|
|
|
|
- },
|
|
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
@@ -376,6 +372,10 @@ export default {
|
|
|
value: "1.5.6.1",
|
|
value: "1.5.6.1",
|
|
|
label: "单点的坐标转换接口",
|
|
label: "单点的坐标转换接口",
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.5.6.2",
|
|
|
|
|
+ label: "geojson坐标转换接口",
|
|
|
|
|
+ },
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
{
|
|
{
|
|
@@ -392,6 +392,37 @@ export default {
|
|
|
},
|
|
},
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
|
|
+ // 时空算子库
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.2.5",
|
|
|
|
|
+ label: "1.2.5时空算子库",
|
|
|
|
|
+ children: [
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.2.5.1",
|
|
|
|
|
+ label: "墨卡托计算距离面积",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.2.5.2",
|
|
|
|
|
+ label: "设置障碍的路径计算",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.2.5.3",
|
|
|
|
|
+ label: "判断点线面体的相互状态(待测试)",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "1.2.5.4",
|
|
|
|
|
+ label: "缓冲区计算",
|
|
|
|
|
+ },
|
|
|
|
|
+ // {
|
|
|
|
|
+ // value: "1.2.5.5",
|
|
|
|
|
+ // label: "线面体分割",
|
|
|
|
|
+ // },
|
|
|
|
|
+ // {
|
|
|
|
|
+ // value: "1.2.5.6",
|
|
|
|
|
+ // label: "时空差异分析",
|
|
|
|
|
+ // },
|
|
|
|
|
+ ],
|
|
|
|
|
+ },
|
|
|
],
|
|
],
|
|
|
// 场景规则
|
|
// 场景规则
|
|
|
SceneRule: {
|
|
SceneRule: {
|
|
@@ -685,17 +716,6 @@ export default {
|
|
|
// 后台接口路径
|
|
// 后台接口路径
|
|
|
apiUrl: "/relationAnalys/parting",
|
|
apiUrl: "/relationAnalys/parting",
|
|
|
},
|
|
},
|
|
|
- "1.5.4.5": {
|
|
|
|
|
- // 功能描述
|
|
|
|
|
- functionalDefinition:
|
|
|
|
|
- "以一个核心要素(点、线、面)为中心,按自定义半径(如 500 米、1 千米)划定范围,查询范围内所有目标要素(如设施、地块、道路),核心用于 “资源覆盖范围” 场景。由于不是我负责,暂时为缓冲区计算功能。",
|
|
|
|
|
- // 元素类型
|
|
|
|
|
- elementTypes: ["point", "polyline", "polygon", "EPSILON"],
|
|
|
|
|
- // 元素个数
|
|
|
|
|
- numberOf: 2,
|
|
|
|
|
- // 后台接口路径
|
|
|
|
|
- apiUrl: "/relationAnalys/neighbor",
|
|
|
|
|
- },
|
|
|
|
|
"1.5.5.1": {
|
|
"1.5.5.1": {
|
|
|
// 功能描述
|
|
// 功能描述
|
|
|
functionalDefinition:
|
|
functionalDefinition:
|
|
@@ -726,6 +746,10 @@ export default {
|
|
|
value: "UTM",
|
|
value: "UTM",
|
|
|
label: "UTM",
|
|
label: "UTM",
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WEB_Mercator",
|
|
|
|
|
+ label: "WEB_Mercator",
|
|
|
|
|
+ },
|
|
|
],
|
|
],
|
|
|
outPrj: [
|
|
outPrj: [
|
|
|
{
|
|
{
|
|
@@ -740,12 +764,63 @@ export default {
|
|
|
value: "UTM",
|
|
value: "UTM",
|
|
|
label: "UTM",
|
|
label: "UTM",
|
|
|
},
|
|
},
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WEB_Mercator",
|
|
|
|
|
+ label: "WEB_Mercator",
|
|
|
|
|
+ },
|
|
|
],
|
|
],
|
|
|
// 元素个数
|
|
// 元素个数
|
|
|
numberOf: 0,
|
|
numberOf: 0,
|
|
|
// 后台接口路径
|
|
// 后台接口路径
|
|
|
apiUrl: "/coordinateSystemTransformation/pointTransformation",
|
|
apiUrl: "/coordinateSystemTransformation/pointTransformation",
|
|
|
},
|
|
},
|
|
|
|
|
+ "1.5.6.2": {
|
|
|
|
|
+ // 功能描述
|
|
|
|
|
+ functionalDefinition:
|
|
|
|
|
+ "传入geoJsonPolygons(geojson)并解析成JSONArray,然后转坐标并返回geojson",
|
|
|
|
|
+ // 元素类型
|
|
|
|
|
+ elementTypes: ["point", "polyline", "polygon", "inPrj", "outPrj"],
|
|
|
|
|
+ inPrj: [
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WGS84",
|
|
|
|
|
+ label: "WGS84",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "SH2000",
|
|
|
|
|
+ label: "SH2000",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "UTM",
|
|
|
|
|
+ label: "UTM",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WEB_Mercator",
|
|
|
|
|
+ label: "WEB_Mercator",
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ outPrj: [
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WGS84",
|
|
|
|
|
+ label: "WGS84",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "SH2000",
|
|
|
|
|
+ label: "SH2000",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "UTM",
|
|
|
|
|
+ label: "UTM",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WEB_Mercator",
|
|
|
|
|
+ label: "WEB_Mercator",
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ // 元素个数
|
|
|
|
|
+ numberOf: 1,
|
|
|
|
|
+ // 后台接口路径
|
|
|
|
|
+ apiUrl: "/coordinateSystemTransformation/transformation",
|
|
|
|
|
+ },
|
|
|
"1.5.7.1": {
|
|
"1.5.7.1": {
|
|
|
// 功能描述
|
|
// 功能描述
|
|
|
functionalDefinition:
|
|
functionalDefinition:
|
|
@@ -785,6 +860,91 @@ export default {
|
|
|
// 后台接口路径
|
|
// 后台接口路径
|
|
|
apiUrl: "/spatiotemporal_data_format_conversion/downloadFile",
|
|
apiUrl: "/spatiotemporal_data_format_conversion/downloadFile",
|
|
|
},
|
|
},
|
|
|
|
|
+ // 这就都是时空算子库了
|
|
|
|
|
+ "1.2.5.1": {
|
|
|
|
|
+ // 功能描述
|
|
|
|
|
+ functionalDefinition:
|
|
|
|
|
+ "墨卡托投影是一种等角正圆柱投影,经纬线相互垂直,纬线间隔随纬度升高而增大 。计算距离时,利用投影后的坐标,根据勾股定理计算两点间的直线距离,再通过特定的比例尺换算公式,将投影距离转换为实际地面距离。计算面积时,先将多边形分割成多个三角形,利用三角形面积公式计算各三角形面积,再求和得到多边形面积,过程中同样要考虑投影带来的变形和比例尺差异。",
|
|
|
|
|
+ // 元素类型
|
|
|
|
|
+ elementTypes: ["polyline", "polygon", "unit", "inPrj"],
|
|
|
|
|
+ // 单位
|
|
|
|
|
+ unit: [
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "METER",
|
|
|
|
|
+ label: "米",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "KILOMETER",
|
|
|
|
|
+ label: "千米",
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ inPrj: [
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WGS84",
|
|
|
|
|
+ label: "WGS84",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "SH2000",
|
|
|
|
|
+ label: "SH2000",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "UTM",
|
|
|
|
|
+ label: "UTM",
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ value: "WEB_Mercator",
|
|
|
|
|
+ label: "WEB_Mercator",
|
|
|
|
|
+ },
|
|
|
|
|
+ ],
|
|
|
|
|
+ // 元素个数
|
|
|
|
|
+ numberOf: 1,
|
|
|
|
|
+ // 后台接口路径
|
|
|
|
|
+ apiUrl: "/spaceTimeOperatorLibrary/adjacent",
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ "1.2.5.2": {
|
|
|
|
|
+ // 功能描述:(必须要有两个点和一个障碍面?)
|
|
|
|
|
+ functionalDefinition:
|
|
|
|
|
+ "基于图论的思想,将地图抽象为一个图,其中节点表示位置,边表示可通行路径,设置障碍的区域则视为不可通行的边或节点。通过搜索算法,如 Dijkstra 算法、A * 算法等,在考虑障碍的情况下,寻找从起点到终点的最优路径。这些算法会根据节点间的距离、代价等因素,不断探索和评估路径,直到找到满足条件的最佳路径。",
|
|
|
|
|
+ // 元素类型
|
|
|
|
|
+ elementTypes: ["point", "point", "polygon"],
|
|
|
|
|
+ // 元素个数
|
|
|
|
|
+ numberOf: 3,
|
|
|
|
|
+ // 后台接口路径
|
|
|
|
|
+ apiUrl: "/spaceTimeOperatorLibrary/pathCalculation",
|
|
|
|
|
+ },
|
|
|
|
|
+ "1.2.5.3": {
|
|
|
|
|
+ // 功能描述:(由于使用了jts的工具,这个工具类必须要有高程数据,暂时测试不了)
|
|
|
|
|
+ functionalDefinition:
|
|
|
|
|
+ "对于点与线的关系,通过计算点到线的垂直距离,若距离为 0,则点在线上;对于点与面的关系,可通过射线法,从点出发作一条射线,统计射线与多边形边界的交点个数,若为奇数则点在面内,偶数则在面外。线与线的关系可通过判断两条线段是否相交来确定;线与面的关系则是判断线与面的边界是否相交以及交点个数等。对于体与点、线、面的关系,类似地通过计算几何的方法,判断点是否在体内,线是否贯穿体,面是否与体相交等。",
|
|
|
|
|
+ // 元素类型
|
|
|
|
|
+ elementTypes: ["pointZ", "polylineZ", "polygonZ"],
|
|
|
|
|
+ // 元素个数
|
|
|
|
|
+ numberOf: 2,
|
|
|
|
|
+ // 后台接口路径
|
|
|
|
|
+ apiUrl: "/spaceTimeOperatorLibrary/topologyPlus",
|
|
|
|
|
+ },
|
|
|
|
|
+ "1.2.5.4": {
|
|
|
|
|
+ // 功能描述
|
|
|
|
|
+ functionalDefinition:
|
|
|
|
|
+ "以点、线、面等几何对象为基础,按照给定的距离生成围绕这些对象的缓冲区。对于点,缓冲区是一个以点为圆心,给定距离为半径的圆;对于线,缓冲区是沿着线的两侧扩展一定距离形成的带状区域;对于面,缓冲区是在面的边界向外或向内扩展一定距离得到的新面。计算过程中需要考虑几何对象的形状、方向以及缓冲区的平滑度等因素。",
|
|
|
|
|
+ // 元素类型
|
|
|
|
|
+ elementTypes: ["point", "polyline", "polygon", "EPSILON"],
|
|
|
|
|
+ // 元素个数
|
|
|
|
|
+ numberOf: 2,
|
|
|
|
|
+ // 后台接口路径
|
|
|
|
|
+ apiUrl: "/relationAnalys/neighbor",
|
|
|
|
|
+ },
|
|
|
|
|
+ // children: [
|
|
|
|
|
+ // {
|
|
|
|
|
+ // value: "1.2.5.5",
|
|
|
|
|
+ // label: "线面体分割",
|
|
|
|
|
+ // },
|
|
|
|
|
+ // {
|
|
|
|
|
+ // value: "1.2.5.6",
|
|
|
|
|
+ // label: "时空差异分析(两个面计算不相交的面)",
|
|
|
|
|
+ // },
|
|
|
|
|
+ // ],
|
|
|
},
|
|
},
|
|
|
currentTool: null,
|
|
currentTool: null,
|
|
|
drawingMode: null,
|
|
drawingMode: null,
|
|
@@ -1445,6 +1605,24 @@ export default {
|
|
|
) {
|
|
) {
|
|
|
requestData.EPSILON = this.params.EPSILON;
|
|
requestData.EPSILON = this.params.EPSILON;
|
|
|
}
|
|
}
|
|
|
|
|
+ if (
|
|
|
|
|
+ this.SceneValue &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue] &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue].elementTypes &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue].elementTypes.includes("inPrj") &&
|
|
|
|
|
+ this.params.inPrj
|
|
|
|
|
+ ) {
|
|
|
|
|
+ requestData.inPrj = this.params.inPrj;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (
|
|
|
|
|
+ this.SceneValue &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue] &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue].elementTypes &&
|
|
|
|
|
+ this.SceneRule[this.SceneValue].elementTypes.includes("outPrj") &&
|
|
|
|
|
+ this.params.outPrj
|
|
|
|
|
+ ) {
|
|
|
|
|
+ requestData.outPrj = this.params.outPrj;
|
|
|
|
|
+ }
|
|
|
this.jsonData = requestData;
|
|
this.jsonData = requestData;
|
|
|
return requestData;
|
|
return requestData;
|
|
|
},
|
|
},
|