@golemio/mvt-maps 0.0.1-dev.1826529834 → 0.0.1-dev.1848286726
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/output-gateway/controllers/V2MvtController.js +2 -1
- package/dist/output-gateway/controllers/V2MvtController.js.map +1 -1
- package/dist/output-gateway/routers/V2MvtRouter.js +1 -0
- package/dist/output-gateway/routers/V2MvtRouter.js.map +1 -1
- package/dist/output-gateway/routers/interfaces/IMvtParams.d.ts +1 -0
- package/dist/output-gateway/services/MvtClusterService.d.ts +6 -4
- package/dist/output-gateway/services/MvtClusterService.js +46 -19
- package/dist/output-gateway/services/MvtClusterService.js.map +1 -1
- package/docs/openapi-output.yaml +10 -2
- package/package.json +1 -1
|
@@ -32,7 +32,7 @@ let V2MvtController = exports.V2MvtController = class V2MvtController {
|
|
|
32
32
|
this.getAll = (req, res, next) => __awaiter(this, void 0, void 0, function* () {
|
|
33
33
|
try {
|
|
34
34
|
const params = this.parseParams(req);
|
|
35
|
-
const result = yield this.service.getTile(params.table, params.geometry, params.x, params.y, params.z, params.maxZoom, params.attributes, params.radius);
|
|
35
|
+
const result = yield this.service.getTile(params.table, params.geometry, params.x, params.y, params.z, params.maxZoom, params.attributes, params.radius, params.clusterPoint);
|
|
36
36
|
res.setHeader("Content-Type", "application/vnd.mapbox-vector-tile");
|
|
37
37
|
res.status(200).send(result);
|
|
38
38
|
}
|
|
@@ -54,6 +54,7 @@ let V2MvtController = exports.V2MvtController = class V2MvtController {
|
|
|
54
54
|
: [req.query.attributes],
|
|
55
55
|
radius: req.query.radius ? parseInt(req.query.radius) : undefined,
|
|
56
56
|
maxZoom: parseInt(req.query.maxZoom),
|
|
57
|
+
clusterPoint: req.query.clusterPoint ? req.query.clusterPoint : undefined,
|
|
57
58
|
};
|
|
58
59
|
}
|
|
59
60
|
catch (err) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2MvtController.js","sourceRoot":"","sources":["../../../src/output-gateway/controllers/V2MvtController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,6EAAwE;AACxE,iEAAwE;AAExE,sEAAoE;AACpE,qEAAmE;AAG5D,IAAM,eAAe,6BAArB,MAAM,eAAe;IACxB,YAA4D,OAAkC;QAA1B,YAAO,GAAP,OAAO,CAAmB;QAEvF,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CACrC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"V2MvtController.js","sourceRoot":"","sources":["../../../src/output-gateway/controllers/V2MvtController.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AACA,6EAAwE;AACxE,iEAAwE;AAExE,sEAAoE;AACpE,qEAAmE;AAG5D,IAAM,eAAe,6BAArB,MAAM,eAAe;IACxB,YAA4D,OAAkC;QAA1B,YAAO,GAAP,OAAO,CAAmB;QAEvF,WAAM,GAAG,CAAO,GAAY,EAAE,GAAa,EAAE,IAAkB,EAAE,EAAE;YACtE,IAAI;gBACA,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CACrC,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,CAAC,EACR,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,YAAY,CACtB,CAAC;gBAEF,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,oCAAoC,CAAC,CAAC;gBACpE,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aAChC;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,GAAG,CAAC,CAAC;aACb;QACL,CAAC,CAAA,CAAC;IAtB+F,CAAC;IAwB1F,WAAW,CAAC,GAAY;QAC5B,IAAI;YACA,OAAO;gBACH,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAW,CAAC;gBACnC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,KAAe;gBAChC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,QAAkB;gBACtC,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC;oBAC3C,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,UAAuB;oBACpC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,UAAoB,CAAC;gBACtC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,MAAgB,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC3E,OAAO,EAAE,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,OAAiB,CAAC;gBAC9C,YAAY,EAAE,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,YAAuB,CAAC,CAAC,CAAC,SAAS;aACxF,CAAC;SACL;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,6BAAY,CAAC,qBAAqB,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;SAClF;IACL,CAAC;CACJ,CAAA;0BA5CY,eAAe;IAD3B,IAAA,qBAAU,GAAE;IAEI,WAAA,IAAA,iBAAM,EAAC,2CAAoB,CAAC,iBAAiB,CAAC,CAAA;qCAAkB,qCAAiB;GADrF,eAAe,CA4C3B"}
|
|
@@ -26,6 +26,7 @@ class V2MvtRouter extends AbstractRouter_1.AbstractRouter {
|
|
|
26
26
|
(0, express_validator_1.query)("attributes.*").exists().isString().not().isArray(),
|
|
27
27
|
(0, express_validator_1.query)("maxZoom").exists().isInt(),
|
|
28
28
|
(0, express_validator_1.query)("radius").optional().isInt(),
|
|
29
|
+
(0, express_validator_1.query)("clusterPoint").optional().isString().not().isArray(),
|
|
29
30
|
], Validation_1.checkErrors, this.cacheHeaderMiddleware.getMiddleware(5 * 60, 60), this.controller.getAll);
|
|
30
31
|
}
|
|
31
32
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"V2MvtRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/routers/V2MvtRouter.ts"],"names":[],"mappings":";;;AAAA,kCAA0C;AAC1C,sEAAoE;AACpE,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,mFAA2E;AAC3E,2CAA2C;AAG3C,MAAM,WAAY,SAAQ,+BAAc;IAIpC;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9B,IAAI,CAAC,UAAU,GAAG,iBAAY,CAAC,OAAO,CAAC,2CAAoB,CAAC,eAAe,CAAC,CAAC;QAC7E,IAAI,CAAC,qBAAqB,GAAG,iBAAY,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QAC/G,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,WAAW,EACX;YACI,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAClD,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACrD,IAAA,yBAAK,EAAC,YAAY,CAAC,CAAC,MAAM,EAAE;YAC5B,IAAA,yBAAK,EAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACzD,IAAA,yBAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;YACjC,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;
|
|
1
|
+
{"version":3,"file":"V2MvtRouter.js","sourceRoot":"","sources":["../../../src/output-gateway/routers/V2MvtRouter.ts"],"names":[],"mappings":";;;AAAA,kCAA0C;AAC1C,sEAAoE;AACpE,sFAAmF;AAEnF,+DAAuE;AACvE,6EAA2E;AAC3E,mFAA2E;AAC3E,2CAA2C;AAG3C,MAAM,WAAY,SAAQ,+BAAc;IAIpC;QACI,KAAK,CAAC,wBAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE9B,IAAI,CAAC,UAAU,GAAG,iBAAY,CAAC,OAAO,CAAC,2CAAoB,CAAC,eAAe,CAAC,CAAC;QAC7E,IAAI,CAAC,qBAAqB,GAAG,iBAAY,CAAC,OAAO,CAAwB,oBAAc,CAAC,qBAAqB,CAAC,CAAC;QAC/G,IAAI,CAAC,UAAU,EAAE,CAAC;IACtB,CAAC;IAES,UAAU;QAChB,IAAI,CAAC,MAAM,CAAC,GAAG,CACX,WAAW,EACX;YACI,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAC3C,IAAA,yBAAK,EAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YAClD,IAAA,yBAAK,EAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACrD,IAAA,yBAAK,EAAC,YAAY,CAAC,CAAC,MAAM,EAAE;YAC5B,IAAA,yBAAK,EAAC,cAAc,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;YACzD,IAAA,yBAAK,EAAC,SAAS,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE;YACjC,IAAA,yBAAK,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE;YAClC,IAAA,yBAAK,EAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE;SAC9D,EACD,wBAAW,EACX,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,EACpD,IAAI,CAAC,UAAU,CAAC,MAAM,CACzB,CAAC;IACN,CAAC;CACJ;AAED,MAAM,WAAW,GAAmB,IAAI,WAAW,EAAE,CAAC;AAE7C,kCAAW"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
2
1
|
import { ILogger } from "@golemio/core/dist/helpers";
|
|
2
|
+
import { IDatabaseConnector } from "@golemio/core/dist/helpers/data-access/postgres/IDatabaseConnector";
|
|
3
3
|
export declare class MvtClusterService {
|
|
4
4
|
private connector;
|
|
5
5
|
private logger;
|
|
6
6
|
constructor(connector: IDatabaseConnector, logger: ILogger);
|
|
7
|
-
getTile(table: string, geometry: string, x: number, y: number, z: number, zoomLevel: number, attributes: string[], radius?: number): Promise<Uint8Array>;
|
|
8
|
-
private
|
|
9
|
-
private
|
|
7
|
+
getTile(table: string, geometry: string, x: number, y: number, z: number, zoomLevel: number, attributes: string[], radius?: number, clusterPoint?: string): Promise<Uint8Array>;
|
|
8
|
+
private getBaseQuery;
|
|
9
|
+
private getLevelClusterQuery;
|
|
10
|
+
private getLevelGroupQuery;
|
|
11
|
+
private getTileQuery;
|
|
10
12
|
}
|
|
@@ -22,37 +22,66 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
22
22
|
};
|
|
23
23
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
24
|
exports.MvtClusterService = void 0;
|
|
25
|
-
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
26
25
|
const clusterbuster_1 = require("@golemio/clusterbuster");
|
|
27
26
|
const CoreToken_1 = require("@golemio/core/dist/helpers/ioc/CoreToken");
|
|
28
|
-
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
29
27
|
const golemio_errors_1 = require("@golemio/core/dist/shared/golemio-errors");
|
|
28
|
+
const sequelize_1 = require("@golemio/core/dist/shared/sequelize");
|
|
29
|
+
const tsyringe_1 = require("@golemio/core/dist/shared/tsyringe");
|
|
30
30
|
let MvtClusterService = exports.MvtClusterService = class MvtClusterService {
|
|
31
31
|
constructor(connector, logger) {
|
|
32
32
|
this.connector = connector;
|
|
33
33
|
this.logger = logger;
|
|
34
|
-
this.
|
|
35
|
-
|
|
36
|
-
${
|
|
34
|
+
this.getBaseQuery = (clusterPoint) => {
|
|
35
|
+
return ({ x, y, z, table, geometry, maxZoomLevel, attributes, query }) => `SELECT
|
|
36
|
+
${clusterPoint} AS center,
|
|
37
|
+
${geometry} as zoomGeom,
|
|
37
38
|
1 AS size,
|
|
38
39
|
0 AS clusterNo,
|
|
39
40
|
${maxZoomLevel + 1} AS expansionZoom${attributes}
|
|
40
41
|
FROM ${table}
|
|
41
42
|
WHERE
|
|
42
43
|
ST_Intersects(TileBBox(${z}, ${x}, ${y}, 4326), ${geometry})
|
|
43
|
-
${query.length > 0 ? `AND ${query.join(" AND ")}` : ""}
|
|
44
|
-
|
|
45
|
-
this.
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
${query.length > 0 ? `AND ${query.join(" AND ")}` : ""}`;
|
|
45
|
+
};
|
|
46
|
+
this.getLevelClusterQuery = ({ parentTable, zoomLevel, radius, attributes, zoomToDistance, }) => {
|
|
47
|
+
return `SELECT
|
|
48
|
+
center,
|
|
49
|
+
zoomGeom,
|
|
50
|
+
expansionZoom,
|
|
51
|
+
clusterNo AS previousClusterNo,
|
|
52
|
+
size,
|
|
53
|
+
ST_ClusterDBSCAN(center, ${zoomToDistance(zoomLevel, radius)}, 1) over () as clusters${attributes}
|
|
54
|
+
FROM ${parentTable}`;
|
|
55
|
+
};
|
|
56
|
+
this.getLevelGroupQuery = ({ zoomLevel, attributes }) => {
|
|
57
|
+
return `SELECT
|
|
58
|
+
SUM(size) as size,
|
|
59
|
+
clusters AS clusterNo,
|
|
60
|
+
(
|
|
61
|
+
CASE COUNT(previousClusterNo)
|
|
62
|
+
WHEN 1 THEN FIRST(expansionZoom)
|
|
63
|
+
ELSE ${zoomLevel + 1} END
|
|
64
|
+
) AS expansionZoom, ${attributes}
|
|
65
|
+
ST_Centroid(ST_Collect(center)) as center,
|
|
66
|
+
FIRST(zoomGeom) as zoomGeom
|
|
67
|
+
FROM clustered_${zoomLevel}
|
|
68
|
+
GROUP BY clusters`;
|
|
69
|
+
};
|
|
70
|
+
this.getTileQuery = ({ x, y, z, table, geometry, extent, bufferSize, attributes }) => {
|
|
71
|
+
return `SELECT
|
|
72
|
+
case size
|
|
73
|
+
WHEN 1 THEN
|
|
74
|
+
ST_AsMVTGeom(ST_Transform(zoomGeom, 3857), TileBBox(${z}, ${x}, ${y}, 3857), ${extent}, ${bufferSize}, false)
|
|
75
|
+
ELSE ST_AsMVTGeom(ST_Transform(${geometry}, 3857), TileBBox(${z}, ${x}, ${y}, 3857), ${extent}, ${bufferSize}, false)
|
|
76
|
+
end AS geom,
|
|
48
77
|
jsonb_build_object(
|
|
49
78
|
'count', size,
|
|
50
79
|
'expansionZoom', expansionZoom${attributes}
|
|
51
80
|
) AS attributes
|
|
52
|
-
FROM ${table}
|
|
53
|
-
|
|
81
|
+
FROM ${table}`;
|
|
82
|
+
};
|
|
54
83
|
}
|
|
55
|
-
getTile(table, geometry, x, y, z, zoomLevel, attributes, radius = 15) {
|
|
84
|
+
getTile(table, geometry, x, y, z, zoomLevel, attributes, radius = 15, clusterPoint) {
|
|
56
85
|
return __awaiter(this, void 0, void 0, function* () {
|
|
57
86
|
const defaultConfig = {
|
|
58
87
|
sourceLayer: "points",
|
|
@@ -60,15 +89,13 @@ let MvtClusterService = exports.MvtClusterService = class MvtClusterService {
|
|
|
60
89
|
bufferSize: 256,
|
|
61
90
|
debug: false,
|
|
62
91
|
query: [],
|
|
63
|
-
getBaseQuery: this.
|
|
64
|
-
getTileQuery: this.
|
|
92
|
+
getBaseQuery: this.getBaseQuery(clusterPoint !== null && clusterPoint !== void 0 ? clusterPoint : geometry),
|
|
93
|
+
getTileQuery: this.getTileQuery,
|
|
65
94
|
};
|
|
66
95
|
const query = (0, clusterbuster_1.createQueryForTile)(Object.assign(Object.assign({}, defaultConfig), { z,
|
|
67
96
|
x,
|
|
68
|
-
y, maxZoomLevel: zoomLevel, table,
|
|
69
|
-
|
|
70
|
-
radius,
|
|
71
|
-
attributes }));
|
|
97
|
+
y, maxZoomLevel: zoomLevel, table, geometry: geometry, radius,
|
|
98
|
+
attributes, getLevelClusterQuery: this.getLevelClusterQuery, getLevelGroupQuery: this.getLevelGroupQuery }));
|
|
72
99
|
try {
|
|
73
100
|
const result = yield this.connector.getConnection().query(query, {
|
|
74
101
|
type: sequelize_1.QueryTypes.SELECT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MvtClusterService.js","sourceRoot":"","sources":["../../../src/output-gateway/services/MvtClusterService.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"MvtClusterService.js","sourceRoot":"","sources":["../../../src/output-gateway/services/MvtClusterService.ts"],"names":[],"mappings":"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"}
|
package/docs/openapi-output.yaml
CHANGED
|
@@ -66,7 +66,7 @@ paths:
|
|
|
66
66
|
required: true
|
|
67
67
|
schema:
|
|
68
68
|
type: string
|
|
69
|
-
example:
|
|
69
|
+
example: location
|
|
70
70
|
- name: attributes
|
|
71
71
|
in: query
|
|
72
72
|
description: List of attribute columns to include in the tile features.
|
|
@@ -79,7 +79,7 @@ paths:
|
|
|
79
79
|
- name: maxZoom
|
|
80
80
|
in: query
|
|
81
81
|
description: Maximum zoom level at which data from this table should be rendered.
|
|
82
|
-
required:
|
|
82
|
+
required: true
|
|
83
83
|
schema:
|
|
84
84
|
type: number
|
|
85
85
|
example: 12
|
|
@@ -89,7 +89,15 @@ paths:
|
|
|
89
89
|
required: false
|
|
90
90
|
schema:
|
|
91
91
|
type: number
|
|
92
|
+
default: 15
|
|
92
93
|
example: 15
|
|
94
|
+
- name: clusterPoint
|
|
95
|
+
in: query
|
|
96
|
+
description: Name of the column that will be used for clustering, use only if it differs from geometry. (e.g. calculating clustering for polygons can take longer and result in bigger clusters.)
|
|
97
|
+
required: false
|
|
98
|
+
schema:
|
|
99
|
+
type: string
|
|
100
|
+
example: point
|
|
93
101
|
responses:
|
|
94
102
|
200:
|
|
95
103
|
description: OK
|