|
@@ -665,14 +665,13 @@ export default {
|
|
|
? obj.url.indexOf("geoserver")
|
|
|
: obj.url.indexOf("siweiserver");
|
|
|
let url = obj.url.substring(0, ind + 9) + "/ows";
|
|
|
- let point =
|
|
|
- "109.63004004171668,18.23499241311749 109.63028021461876,18.23213821035424 109.63097884008462,18.234344782708543 109.63004004171668,18.23499241311749";
|
|
|
+
|
|
|
let pointml = `<gml:Point srsName='EPSG:4326'><gml:coordinates>
|
|
|
${xy.lng},${xy.lat}</gml:coordinates></gml:Point>`;
|
|
|
let polygonml = `<gml:Polygon srsName="EPSG:4326">
|
|
|
<gml:outerBoundaryIs>
|
|
|
<gml:LinearRing>
|
|
|
- <gml:coordinates> ${point} </gml:coordinates>
|
|
|
+ <gml:coordinates> ${xy.points} </gml:coordinates>
|
|
|
</gml:LinearRing>
|
|
|
</gml:outerBoundaryIs>
|
|
|
</gml:Polygon>`;
|
|
@@ -683,7 +682,9 @@ export default {
|
|
|
typeName: `${obj.fwgzkj}:${obj.fwmc}`,
|
|
|
outputFormat: "application/json",
|
|
|
srsName: "EPSG:4326",
|
|
|
- filter: `<Filter xmlns='http://www.opengis.net/ogc' xmlns:gml='http://www.opengis.net/gml'><Intersects><PropertyName>geom</PropertyName> ${polygonml}</Intersects></Filter>`,
|
|
|
+ filter: `<Filter xmlns='http://www.opengis.net/ogc' xmlns:gml='http://www.opengis.net/gml'><Intersects><PropertyName>geom</PropertyName> ${
|
|
|
+ xy.lng ? pointml : polygonml
|
|
|
+ }</Intersects></Filter>`,
|
|
|
};
|
|
|
console.log("----", params);
|
|
|
let res = await axios.get(url, { params });
|
|
@@ -907,7 +908,7 @@ export default {
|
|
|
this.mapQuerys("mapLayerQuery"); //图层点击事件
|
|
|
this.remove_query_click();
|
|
|
viewer.entities.removeAll();
|
|
|
- common.clearHandlerDrawing("Polygon");
|
|
|
+ // common.clearHandlerDrawing("Polygon");
|
|
|
break;
|
|
|
}
|
|
|
case 2: {
|
|
@@ -952,17 +953,16 @@ export default {
|
|
|
}
|
|
|
common.handlerDrawing("Polygon").then(
|
|
|
(res) => {
|
|
|
- // console.log(res.positions, "------");
|
|
|
- //过滤掉高度
|
|
|
- const filteredArr = res.positions.filter((item, index) => {
|
|
|
- if ((index + 1) % 3 !== 0) return item;
|
|
|
- });
|
|
|
- filteredArr.push(res.positions[0]);
|
|
|
- filteredArr.push(res.positions[1]);
|
|
|
- console.log(filteredArr, "max-----");
|
|
|
store.state.vectorlayerlist.forEach((obj) => {
|
|
|
if (obj.serverType == "geoserver") {
|
|
|
- // this.getGeoserver(xy, obj);
|
|
|
+ let points = "";
|
|
|
+ res.positions.forEach((item, index) => {
|
|
|
+ if ((index + 1) % 3 == 1) points += item + ",";
|
|
|
+ if ((index + 1) % 3 == 2) points += item + " ";
|
|
|
+ });
|
|
|
+ points += res.positions[0] + ",";
|
|
|
+ points += res.positions[1] + " ";
|
|
|
+ this.getGeoserver({ points }, obj);
|
|
|
} else {
|
|
|
// if (!obj.fwgzkj && !obj.fwmc) {
|
|
|
// continue;
|