| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.getAllGeometriesRecursively = exports.getAllElementsRecursively = exports.getAllElements = exports.findGeometry = void 0;
- var util_1 = require("@antv/util");
- /**
- * 在 View 中查找第一个指定 type 类型的 geometry
- * @param view
- * @param type
- */
- function findGeometry(view, type) {
- return view.geometries.find(function (g) { return g.type === type; });
- }
- exports.findGeometry = findGeometry;
- /**
- * 获取 View 的 所有 elements
- */
- function getAllElements(view) {
- return (0, util_1.reduce)(view.geometries, function (r, geometry) {
- return r.concat(geometry.elements);
- }, []);
- }
- exports.getAllElements = getAllElements;
- /**
- * 递归获取 View 的 所有 elements, 包括 View 的子 View
- */
- function getAllElementsRecursively(view) {
- if ((0, util_1.get)(view, ['views', 'length'], 0) <= 0) {
- return getAllElements(view);
- }
- return (0, util_1.reduce)(view.views, function (ele, subView) {
- return ele.concat(getAllElementsRecursively(subView));
- }, getAllElements(view));
- }
- exports.getAllElementsRecursively = getAllElementsRecursively;
- /**
- * 递归获取 View 的 所有 geometries, 包括 View 的子 View
- */
- function getAllGeometriesRecursively(view) {
- if ((0, util_1.get)(view, ['views', 'length'], 0) <= 0) {
- return view.geometries;
- }
- return (0, util_1.reduce)(view.views, function (ele, subView) {
- return ele.concat(subView.geometries);
- }, view.geometries);
- }
- exports.getAllGeometriesRecursively = getAllGeometriesRecursively;
- //# sourceMappingURL=geometry.js.map
|