Skip to content

Commit c98dc8f

Browse files
committed
fix 漏提交
1 parent ef887f7 commit c98dc8f

File tree

1 file changed

+106
-0
lines changed

1 file changed

+106
-0
lines changed

src/common/iServer/ClipParameter.js

Lines changed: 106 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,106 @@
1+
import SuperMap from '../SuperMap';
2+
3+
/**
4+
* @class SuperMap.ClipParameter
5+
* @classdesc 用于裁剪的参数。
6+
* @description 优先使用用户指定的裁剪区域多边形进行裁剪,也可以通过指定数据源和数据集名,从而使用指定数据集的边界多边形进行裁剪。
7+
* @param options - {Object} 参数。<br>
8+
* clipDatasetName - {String} 裁剪的数据集名。<br>
9+
* clipDatasourceName - {String} 裁剪的数据集所在数据源的名字。<br>
10+
* clipRegion - {Object} 用户指定的裁剪区域。面对象可以是SuperMap.Geometry.Polygon|L.Polygon|L.GeoJSON|ol.geom.Polygon|ol.format.GeoJSON。</br>
11+
* isClipInRegion - {Boolean} 是否对裁剪区内的数据集进行裁剪。<br>
12+
* isExactClip - {Boolean} 是否使用精确裁剪。
13+
*/
14+
export default class ClipParameter {
15+
16+
/**
17+
* @member SuperMap.ClipParameter.prototype.clipDatasetName -{string}
18+
* @description 用于裁剪的数据集名,当clipRegion不设置时起作用。
19+
*/
20+
clipDatasetName = null;
21+
22+
/**
23+
* @member SuperMap.ClipParameter.prototype.clipDatasourceName -{string}
24+
* @description 用于裁剪的数据集所在数据源的名字。
25+
*/
26+
clipDatasourceName = null;
27+
28+
/**
29+
* @member SuperMap.ClipParameter.prototype.clipRegion -{Object}
30+
* @description 用户指定的裁剪区域,优先使用。<br>
31+
* 面对象可以是SuperMap.Geometry.Polygon|L.Polygon|L.GeoJSON|ol.geom.Polygon|ol.format.GeoJSON。
32+
*/
33+
clipRegion = null;
34+
35+
/**
36+
* @member SuperMap.ClipParameter.prototype.isClipInRegion -{boolean}
37+
* @description 是否对裁剪区内的数据集进行裁剪。
38+
*/
39+
isClipInRegion = false;
40+
41+
/**
42+
* @member SuperMap.ClipParameter.prototype.isExactClip -{boolean}
43+
* @description 是否使用精确裁剪。
44+
*/
45+
isExactClip = null;
46+
47+
constructor(options) {
48+
if (options) {
49+
SuperMap.Util.extend(this, options);
50+
}
51+
}
52+
53+
54+
/**
55+
* @function SuperMap.ClipParameter.prototype.destroy
56+
* @description 释放资源,将引用资源的属性置空。
57+
*/
58+
destroy() {
59+
var me = this;
60+
me.clipDatasetName = null;
61+
me.clipDatasourceName = null;
62+
me.clipRegion = null;
63+
me.isClipInRegion = null;
64+
me.isExactClip = null;
65+
}
66+
67+
68+
/**
69+
* @function SuperMap.ClipParameter.prototype.toJSON
70+
* @description 将 ClipParameter 对象转化为json字符串。
71+
* @return {string} 返回转换后的 JSON 字符串。
72+
*/
73+
toJSON() {
74+
if (this.isClipInRegion == false)
75+
return null;
76+
var strClipParameter = "";
77+
var me = this;
78+
79+
strClipParameter += "'isClipInRegion':" + SuperMap.Util.toJSON(me.isClipInRegion);
80+
81+
if (me.clipDatasetName != null)
82+
strClipParameter += "," + "'clipDatasetName':" + SuperMap.Util.toJSON(me.clipDatasetName);
83+
84+
if (me.clipDatasourceName != null)
85+
strClipParameter += "," + "'clipDatasourceName':" + SuperMap.Util.toJSON(me.clipDatasourceName);
86+
87+
if (me.isExactClip != null)
88+
strClipParameter += "," + "'isExactClip':" + SuperMap.Util.toJSON(me.isExactClip);
89+
90+
if (me.clipRegion != null) {
91+
var serverGeometry = SuperMap.REST.ServerGeometry.fromGeometry(me.clipRegion);
92+
if (serverGeometry) {
93+
var pointsCount = serverGeometry.parts[0];
94+
var point2ds = serverGeometry.points.splice(0, pointsCount);
95+
strClipParameter += "," + "'clipRegion':" + "{\"point2Ds\":";
96+
strClipParameter += SuperMap.Util.toJSON(point2ds);
97+
strClipParameter += "}";
98+
}
99+
}
100+
return "{" + strClipParameter + "}";
101+
}
102+
103+
104+
CLASS_NAME = "SuperMap.ClipParameter"
105+
}
106+
SuperMap.ClipParameter = ClipParameter;

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy