Skip to content

Commit 058e2fe

Browse files
committed
【ICL-1511】使用数据集构建泰森多边形,传入L.Polygon | ol.geom.Polygon | GeoJSONObject等格式设置裁剪区域参数clipRegion报错 review by qiwei
1 parent 1f0e54d commit 058e2fe

File tree

8 files changed

+57
-4
lines changed

8 files changed

+57
-4
lines changed

src/leaflet/services/SpatialAnalystService.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -377,6 +377,9 @@ export var SpatialAnalystService = ServiceBase.extend({
377377
if (params.clipParam && params.clipParam.clipRegion) {
378378
params.clipParam.clipRegion = Util.toSuperMapGeometry(params.clipParam.clipRegion);
379379
}
380+
if (params.clipRegion) {
381+
params.clipRegion = Util.toSuperMapGeometry(params.clipRegion);
382+
}
380383
//支持格式:Vector Layers; GeoJson
381384
if (params.sourceGeometry) {
382385
var SRID = null;

src/mapboxgl/services/SpatialAnalystService.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ export class SpatialAnalystService extends ServiceBase {
365365
if (params.clipParam && params.clipParam.clipRegion) {
366366
params.clipParam.clipRegion = Util.toSuperMapGeometry(params.clipParam.clipRegion);
367367
}
368+
if (params.clipRegion) {
369+
params.clipRegion = Util.toSuperMapGeometry(params.clipRegion);
370+
}
368371
//sourceRoute 路由对象。用于里程分析,该对象可以是用户自己生 成或在数据源中查询得到的符合标准的路由对象;geojson格式
369372
if (params.sourceRoute) {
370373
if (params.sourceRoute) {

src/maplibregl/services/SpatialAnalystService.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ export class SpatialAnalystService extends ServiceBase {
365365
if (params.clipParam && params.clipParam.clipRegion) {
366366
params.clipParam.clipRegion = Util.toSuperMapGeometry(params.clipParam.clipRegion);
367367
}
368+
if (params.clipRegion) {
369+
params.clipRegion = Util.toSuperMapGeometry(params.clipRegion);
370+
}
368371
//sourceRoute 路由对象。用于里程分析,该对象可以是用户自己生 成或在数据源中查询得到的符合标准的路由对象;geojson格式
369372
if (params.sourceRoute) {
370373
if (params.sourceRoute) {

src/openlayers/services/SpatialAnalystService.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -371,6 +371,9 @@ export class SpatialAnalystService extends ServiceBase {
371371
if (params.clipParam && params.clipParam.clipRegion) {
372372
params.clipParam.clipRegion = this.convertGeometry(params.clipParam.clipRegion);
373373
}
374+
if (params.clipRegion) {
375+
params.clipRegion = this.convertGeometry(params.clipRegion);
376+
}
374377
//支持格式:Vector Layers; GeoJson
375378
if (params.sourceGeometry) {
376379
var SRID = null;

test/leaflet/services/ThiessenAnalysisSpec.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,16 @@ describe('leaflet_SpatialAnalystService_thiessenAnalysis', () => {
4848

4949
it('thiessenAnalysis', (done) => {
5050
var dsThiessenAnalystParameters = new DatasetThiessenAnalystParameters({
51-
dataset: "Factory@Changchun"
51+
dataset: "Factory@Changchun",
52+
clipRegion: polygon
5253
});
54+
var polygon = L.polygon([
55+
[-1000, 5000],
56+
[-1000, 7000],
57+
[-3000, 7000],
58+
[-3000, 5000],
59+
[-1000, 5000]
60+
]);
5361
var thiessenAnalystService = spatialAnalystService(spatialAnalystURL, options);
5462
spyOn(FetchRequest, 'commit').and.callFake((method, testUrl, params, options) => {
5563
expect(method).toBe("POST");

test/mapboxgl/services/ThiessenAnalysisSpec.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,19 @@ describe('mapboxgl_SpatialAnalystService_thiessenAnalysis', () => {
2222
//泰森多边形分析 数据集泰森多边形
2323
it('thiessenAnalysis_byDataset', (done) => {
2424
var datasetThiessenAnalystParameters = new DatasetThiessenAnalystParameters({
25-
dataset: "Town_P@Jingjin"
25+
dataset: "Town_P@Jingjin",
26+
clipRegion: polygon
2627
});
28+
var polygon = {
29+
"type": "Polygon",
30+
"coordinates": [[
31+
[116, 39],
32+
[117, 39],
33+
[117, 38],
34+
[116, 38],
35+
[116, 39]
36+
]]
37+
};
2738
var service = new SpatialAnalystService(url, options);
2839
spyOn(FetchRequest, 'commit').and.callFake((method, testUrl, params, options) => {
2940
expect(method).toBe("POST");

test/maplibregl/services/ThiessenAnalysisSpec.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,19 @@ describe('maplibregl_SpatialAnalystService_thiessenAnalysis', () => {
2222
//泰森多边形分析 数据集泰森多边形
2323
it('thiessenAnalysis_byDataset', (done) => {
2424
var datasetThiessenAnalystParameters = new DatasetThiessenAnalystParameters({
25-
dataset: "Town_P@Jingjin"
25+
dataset: "Town_P@Jingjin",
26+
clipRegion: polygon
2627
});
28+
var polygon = {
29+
"type": "Polygon",
30+
"coordinates": [[
31+
[116, 39],
32+
[117, 39],
33+
[117, 38],
34+
[116, 38],
35+
[116, 39]
36+
]]
37+
};
2738
var service = new SpatialAnalystService(url, options);
2839
spyOn(FetchRequest, 'commit').and.callFake((method, testUrl, params, options) => {
2940
expect(method).toBe("POST");

test/openlayers/services/ThiessenAnalysisSpec.js

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import {
1212
} from '../../../src/common/util/FetchRequest';
1313

1414
import Point from 'ol/geom/Point';
15+
import Polygon from 'ol/geom/Polygon';
1516

1617
var originalTimeout, serviceResults;
1718
var changchunServiceUrl = GlobeParameter.spatialAnalystURL_Changchun;
@@ -28,8 +29,18 @@ describe('openlayers_SpatialAnalystService_thiessenAnalysis', () => {
2829
//数据集泰森多边形
2930
it('thiessenAnalysis_datasets', (done) => {
3031
var dThiessenAnalystParameters = new DatasetThiessenAnalystParameters({
31-
dataset: "Factory@Changchun"
32+
dataset: "Factory@Changchun",
33+
clipRegion: polygon
3234
});
35+
var polygon = new Polygon([
36+
[
37+
[5000, -1000],
38+
[7000, -1000],
39+
[7000, -3000],
40+
[5000, -3000],
41+
[5000, -1000]
42+
]
43+
])
3344
var spatialAnalystService = new SpatialAnalystService(changchunServiceUrl);
3445
spyOn(FetchRequest, 'commit').and.callFake((method, testUrl, params, options) => {
3546
expect(method).toBe("POST");

0 commit comments

Comments
 (0)