From 988afc18af4b0081c4ec1ce14bd2f9b18826bc67 Mon Sep 17 00:00:00 2001 From: thinkinggis Date: Fri, 1 Mar 2019 10:43:36 +0800 Subject: [PATCH] =?UTF-8?q?fix(src):=20require=20=E5=BC=95=E5=85=A5?= =?UTF-8?q?=E6=96=B9=E5=BC=8F=E5=88=87=E6=8D=A2=E6=88=90import?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .eslintignore | 3 + .eslintrc | 6 +- src/attr/base.js | 8 +- src/attr/color-util.js | 7 +- src/attr/color.js | 9 +- src/attr/colorscales.js | 2 +- src/attr/filter.js | 4 +- src/attr/index.js | 27 +- src/attr/opacity.js | 4 +- src/attr/position.js | 6 +- src/attr/shape.js | 6 +- src/attr/size.js | 8 +- src/attr/symbol.js | 4 +- src/component/index.js | 12 - src/component/tooltip/index.js | 568 -------------------------- src/core/base.js | 4 +- src/core/controller/index.js | 2 +- src/core/controller/scale.js | 8 +- src/core/image.js | 2 +- src/core/layer.js | 5 +- src/core/scene.js | 2 +- src/core/source.js | 2 +- src/core/three.js | 20 +- src/geo/lngLat.js | 75 ---- src/geom/buffer/point.js | 3 +- src/geom/buffer/point/fillBuffer.js | 3 +- src/geom/buffer/point/normalBuffer.js | 2 +- src/geom/buffer/point/strokeBuffer.js | 5 +- src/geom/buffer/point/textBuffer.js | 32 +- src/geom/buffer/polygon.js | 2 +- src/geom/buffer/text.js | 52 +-- src/geom/extrude.js | 6 +- src/geom/shape/path.js | 16 +- src/global.js | 2 +- src/index.js | 2 +- src/layer/lineLayer.js | 1 - src/layer/pointLayer.js | 54 ++- src/map/AMap.js | 4 +- src/map/mapbox.js | 32 +- src/scale/auto/cat.js | 7 +- src/scale/auto/number.js | 10 +- src/scale/auto/time.js | 8 +- src/scale/auto/util.js | 7 +- src/scale/base.js | 6 +- src/scale/category.js | 8 +- src/scale/identity.js | 6 +- src/scale/index.js | 28 +- src/scale/linear.js | 8 +- src/scale/log.js | 6 +- src/scale/pow.js | 6 +- src/scale/time-cat.js | 12 +- src/scale/time-util.js | 4 +- src/scale/time.js | 12 +- src/source/transform/grid.js | 6 - src/theme/index.js | 5 +- src/theme/light.js | 9 +- src/track.js | 2 +- src/util.js | 4 +- src/util/ajax.js | 6 +- src/util/common.js | 2 +- src/util/dom.js | 4 +- src/util/format.js | 5 +- src/util/index.js | 6 +- src/util/matrix.js | 10 +- src/util/path.js | 4 +- src/worker/main.worker.js | 9 +- test/unit/source/transfrom/hexagon.js | 1 - webpack-dev.config.js | 18 +- 68 files changed, 295 insertions(+), 934 deletions(-) delete mode 100644 src/component/index.js delete mode 100644 src/component/tooltip/index.js delete mode 100644 src/geo/lngLat.js diff --git a/.eslintignore b/.eslintignore index 81629f01bf..4a4753f137 100755 --- a/.eslintignore +++ b/.eslintignore @@ -1,4 +1,5 @@ build/ +bundler/ coverage/ lib/ dist/ @@ -7,3 +8,5 @@ node_modules/ demos/assets/ demos/index.html demos/* +rollup/* +webpack/* diff --git a/.eslintrc b/.eslintrc index 446574a9c4..39752e76b3 100755 --- a/.eslintrc +++ b/.eslintrc @@ -11,7 +11,11 @@ "G2": true, "_": true, "mapboxgl":true, - "dat" : true + "dat" : true, + }, + "env": { + "browser": true, + "node": true }, "parser": "babel-eslint", "parserOptions": { diff --git a/src/attr/base.js b/src/attr/base.js index 51a1812b5d..8da8dcca0c 100644 --- a/src/attr/base.js +++ b/src/attr/base.js @@ -2,8 +2,8 @@ * @fileOverview the Attribute base class * @author huangtonger@aliyun.com */ -const ColorUtil = require('./color-util'); -const Util = require('../util'); +import ColorUtil from './color-util'; +import Util from '../util'; function toScaleString(scale, value) { if (Util.isString(value)) { @@ -171,7 +171,7 @@ class AttributeBase { } if (this.type === 'color' && !Util.isArray(values)) { values = ColorUtil.toRGB(values).map(e => e / 255); - // values[3] = values[3] * 255; + // values[3] = values[3] * 255; } if (!Util.isArray(values)) { values = [ values ]; @@ -196,4 +196,4 @@ class AttributeBase { } } -module.exports = AttributeBase; +export default AttributeBase; diff --git a/src/attr/color-util.js b/src/attr/color-util.js index 32f0f6acee..e5f5aa75d1 100644 --- a/src/attr/color-util.js +++ b/src/attr/color-util.js @@ -2,8 +2,7 @@ * @fileOverview 颜色计算的辅助方法 * @author dxq613@gmail.com */ - -const Util = require('../util'); +import Util from '../util'; const RGB_REG = /rgba?\(([\s.,0-9]+)\)/; // const RGBA_REG = /rgba\((\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*(\d+)\s*\)/; @@ -80,7 +79,7 @@ const ColorUtil = { } return rst; }, - // 转成 WebGl color buffer + // 转成 WebGl color buffer color2Arr(str) { const rgba = this.toRGB(str); return rgba.map(v => v / 255); @@ -112,4 +111,4 @@ const ColorUtil = { } }; -module.exports = ColorUtil; +export default ColorUtil; diff --git a/src/attr/color.js b/src/attr/color.js index cadfdef123..625cf996a5 100644 --- a/src/attr/color.js +++ b/src/attr/color.js @@ -2,10 +2,9 @@ * @fileOverview the color attribute of core * @author huangtonger@aliyun.com */ - -const ColorUtil = require('./color-util'); -const Base = require('./base'); -const Util = require('../util'); +import ColorUtil from './color-util'; +import Base from './base'; +import Util from '../util'; /** * 视觉通道 color @@ -38,4 +37,4 @@ class Color extends Base { } } -module.exports = Color; +export default Color; diff --git a/src/attr/colorscales.js b/src/attr/colorscales.js index 15a5185676..bbda09d0e0 100644 --- a/src/attr/colorscales.js +++ b/src/attr/colorscales.js @@ -97,4 +97,4 @@ export const colorScales = { magma: new Uint8Array([ 0, 0, 4, 255, 1, 0, 5, 255, 1, 1, 6, 255, 1, 1, 8, 255, 2, 1, 9, 255, 2, 2, 11, 255, 2, 2, 13, 255, 3, 3, 15, 255, 3, 3, 18, 255, 4, 4, 20, 255, 5, 4, 22, 255, 6, 5, 24, 255, 6, 5, 26, 255, 7, 6, 28, 255, 8, 7, 30, 255, 9, 7, 32, 255, 10, 8, 34, 255, 11, 9, 36, 255, 12, 9, 38, 255, 13, 10, 41, 255, 14, 11, 43, 255, 16, 11, 45, 255, 17, 12, 47, 255, 18, 13, 49, 255, 19, 13, 52, 255, 20, 14, 54, 255, 21, 14, 56, 255, 22, 15, 59, 255, 24, 15, 61, 255, 25, 16, 63, 255, 26, 16, 66, 255, 28, 16, 68, 255, 29, 17, 71, 255, 30, 17, 73, 255, 32, 17, 75, 255, 33, 17, 78, 255, 34, 17, 80, 255, 36, 18, 83, 255, 37, 18, 85, 255, 39, 18, 88, 255, 41, 17, 90, 255, 42, 17, 92, 255, 44, 17, 95, 255, 45, 17, 97, 255, 47, 17, 99, 255, 49, 17, 101, 255, 51, 16, 103, 255, 52, 16, 105, 255, 54, 16, 107, 255, 56, 16, 108, 255, 57, 15, 110, 255, 59, 15, 112, 255, 61, 15, 113, 255, 63, 15, 114, 255, 64, 15, 116, 255, 66, 15, 117, 255, 68, 15, 118, 255, 69, 16, 119, 255, 71, 16, 120, 255, 73, 16, 120, 255, 74, 16, 121, 255, 76, 17, 122, 255, 78, 17, 123, 255, 79, 18, 123, 255, 81, 18, 124, 255, 82, 19, 124, 255, 84, 19, 125, 255, 86, 20, 125, 255, 87, 21, 126, 255, 89, 21, 126, 255, 90, 22, 126, 255, 92, 22, 127, 255, 93, 23, 127, 255, 95, 24, 127, 255, 96, 24, 128, 255, 98, 25, 128, 255, 100, 26, 128, 255, 101, 26, 128, 255, 103, 27, 128, 255, 104, 28, 129, 255, 106, 28, 129, 255, 107, 29, 129, 255, 109, 29, 129, 255, 110, 30, 129, 255, 112, 31, 129, 255, 114, 31, 129, 255, 115, 32, 129, 255, 117, 33, 129, 255, 118, 33, 129, 255, 120, 34, 129, 255, 121, 34, 130, 255, 123, 35, 130, 255, 124, 35, 130, 255, 126, 36, 130, 255, 128, 37, 130, 255, 129, 37, 129, 255, 131, 38, 129, 255, 132, 38, 129, 255, 134, 39, 129, 255, 136, 39, 129, 255, 137, 40, 129, 255, 139, 41, 129, 255, 140, 41, 129, 255, 142, 42, 129, 255, 144, 42, 129, 255, 145, 43, 129, 255, 147, 43, 128, 255, 148, 44, 128, 255, 150, 44, 128, 255, 152, 45, 128, 255, 153, 45, 128, 255, 155, 46, 127, 255, 156, 46, 127, 255, 158, 47, 127, 255, 160, 47, 127, 255, 161, 48, 126, 255, 163, 48, 126, 255, 165, 49, 126, 255, 166, 49, 125, 255, 168, 50, 125, 255, 170, 51, 125, 255, 171, 51, 124, 255, 173, 52, 124, 255, 174, 52, 123, 255, 176, 53, 123, 255, 178, 53, 123, 255, 179, 54, 122, 255, 181, 54, 122, 255, 183, 55, 121, 255, 184, 55, 121, 255, 186, 56, 120, 255, 188, 57, 120, 255, 189, 57, 119, 255, 191, 58, 119, 255, 192, 58, 118, 255, 194, 59, 117, 255, 196, 60, 117, 255, 197, 60, 116, 255, 199, 61, 115, 255, 200, 62, 115, 255, 202, 62, 114, 255, 204, 63, 113, 255, 205, 64, 113, 255, 207, 64, 112, 255, 208, 65, 111, 255, 210, 66, 111, 255, 211, 67, 110, 255, 213, 68, 109, 255, 214, 69, 108, 255, 216, 69, 108, 255, 217, 70, 107, 255, 219, 71, 106, 255, 220, 72, 105, 255, 222, 73, 104, 255, 223, 74, 104, 255, 224, 76, 103, 255, 226, 77, 102, 255, 227, 78, 101, 255, 228, 79, 100, 255, 229, 80, 100, 255, 231, 82, 99, 255, 232, 83, 98, 255, 233, 84, 98, 255, 234, 86, 97, 255, 235, 87, 96, 255, 236, 88, 96, 255, 237, 90, 95, 255, 238, 91, 94, 255, 239, 93, 94, 255, 240, 95, 94, 255, 241, 96, 93, 255, 242, 98, 93, 255, 242, 100, 92, 255, 243, 101, 92, 255, 244, 103, 92, 255, 244, 105, 92, 255, 245, 107, 92, 255, 246, 108, 92, 255, 246, 110, 92, 255, 247, 112, 92, 255, 247, 114, 92, 255, 248, 116, 92, 255, 248, 118, 92, 255, 249, 120, 93, 255, 249, 121, 93, 255, 249, 123, 93, 255, 250, 125, 94, 255, 250, 127, 94, 255, 250, 129, 95, 255, 251, 131, 95, 255, 251, 133, 96, 255, 251, 135, 97, 255, 252, 137, 97, 255, 252, 138, 98, 255, 252, 140, 99, 255, 252, 142, 100, 255, 252, 144, 101, 255, 253, 146, 102, 255, 253, 148, 103, 255, 253, 150, 104, 255, 253, 152, 105, 255, 253, 154, 106, 255, 253, 155, 107, 255, 254, 157, 108, 255, 254, 159, 109, 255, 254, 161, 110, 255, 254, 163, 111, 255, 254, 165, 113, 255, 254, 167, 114, 255, 254, 169, 115, 255, 254, 170, 116, 255, 254, 172, 118, 255, 254, 174, 119, 255, 254, 176, 120, 255, 254, 178, 122, 255, 254, 180, 123, 255, 254, 182, 124, 255, 254, 183, 126, 255, 254, 185, 127, 255, 254, 187, 129, 255, 254, 189, 130, 255, 254, 191, 132, 255, 254, 193, 133, 255, 254, 194, 135, 255, 254, 196, 136, 255, 254, 198, 138, 255, 254, 200, 140, 255, 254, 202, 141, 255, 254, 204, 143, 255, 254, 205, 144, 255, 254, 207, 146, 255, 254, 209, 148, 255, 254, 211, 149, 255, 254, 213, 151, 255, 254, 215, 153, 255, 254, 216, 154, 255, 253, 218, 156, 255, 253, 220, 158, 255, 253, 222, 160, 255, 253, 224, 161, 255, 253, 226, 163, 255, 253, 227, 165, 255, 253, 229, 167, 255, 253, 231, 169, 255, 253, 233, 170, 255, 253, 235, 172, 255, 252, 236, 174, 255, 252, 238, 176, 255, 252, 240, 178, 255, 252, 242, 180, 255, 252, 244, 182, 255, 252, 246, 184, 255, 252, 247, 185, 255, 252, 249, 187, 255, 252, 251, 189, 255, 252, 253, 191, 255 ]), plasma: new Uint8Array([ 13, 8, 135, 255, 16, 7, 136, 255, 19, 7, 137, 255, 22, 7, 138, 255, 25, 6, 140, 255, 27, 6, 141, 255, 29, 6, 142, 255, 32, 6, 143, 255, 34, 6, 144, 255, 36, 6, 145, 255, 38, 5, 145, 255, 40, 5, 146, 255, 42, 5, 147, 255, 44, 5, 148, 255, 46, 5, 149, 255, 47, 5, 150, 255, 49, 5, 151, 255, 51, 5, 151, 255, 53, 4, 152, 255, 55, 4, 153, 255, 56, 4, 154, 255, 58, 4, 154, 255, 60, 4, 155, 255, 62, 4, 156, 255, 63, 4, 156, 255, 65, 4, 157, 255, 67, 3, 158, 255, 68, 3, 158, 255, 70, 3, 159, 255, 72, 3, 159, 255, 73, 3, 160, 255, 75, 3, 161, 255, 76, 2, 161, 255, 78, 2, 162, 255, 80, 2, 162, 255, 81, 2, 163, 255, 83, 2, 163, 255, 85, 2, 164, 255, 86, 1, 164, 255, 88, 1, 164, 255, 89, 1, 165, 255, 91, 1, 165, 255, 92, 1, 166, 255, 94, 1, 166, 255, 96, 1, 166, 255, 97, 0, 167, 255, 99, 0, 167, 255, 100, 0, 167, 255, 102, 0, 167, 255, 103, 0, 168, 255, 105, 0, 168, 255, 106, 0, 168, 255, 108, 0, 168, 255, 110, 0, 168, 255, 111, 0, 168, 255, 113, 0, 168, 255, 114, 1, 168, 255, 116, 1, 168, 255, 117, 1, 168, 255, 119, 1, 168, 255, 120, 1, 168, 255, 122, 2, 168, 255, 123, 2, 168, 255, 125, 3, 168, 255, 126, 3, 168, 255, 128, 4, 168, 255, 129, 4, 167, 255, 131, 5, 167, 255, 132, 5, 167, 255, 134, 6, 166, 255, 135, 7, 166, 255, 136, 8, 166, 255, 138, 9, 165, 255, 139, 10, 165, 255, 141, 11, 165, 255, 142, 12, 164, 255, 143, 13, 164, 255, 145, 14, 163, 255, 146, 15, 163, 255, 148, 16, 162, 255, 149, 17, 161, 255, 150, 19, 161, 255, 152, 20, 160, 255, 153, 21, 159, 255, 154, 22, 159, 255, 156, 23, 158, 255, 157, 24, 157, 255, 158, 25, 157, 255, 160, 26, 156, 255, 161, 27, 155, 255, 162, 29, 154, 255, 163, 30, 154, 255, 165, 31, 153, 255, 166, 32, 152, 255, 167, 33, 151, 255, 168, 34, 150, 255, 170, 35, 149, 255, 171, 36, 148, 255, 172, 38, 148, 255, 173, 39, 147, 255, 174, 40, 146, 255, 176, 41, 145, 255, 177, 42, 144, 255, 178, 43, 143, 255, 179, 44, 142, 255, 180, 46, 141, 255, 181, 47, 140, 255, 182, 48, 139, 255, 183, 49, 138, 255, 184, 50, 137, 255, 186, 51, 136, 255, 187, 52, 136, 255, 188, 53, 135, 255, 189, 55, 134, 255, 190, 56, 133, 255, 191, 57, 132, 255, 192, 58, 131, 255, 193, 59, 130, 255, 194, 60, 129, 255, 195, 61, 128, 255, 196, 62, 127, 255, 197, 64, 126, 255, 198, 65, 125, 255, 199, 66, 124, 255, 200, 67, 123, 255, 201, 68, 122, 255, 202, 69, 122, 255, 203, 70, 121, 255, 204, 71, 120, 255, 204, 73, 119, 255, 205, 74, 118, 255, 206, 75, 117, 255, 207, 76, 116, 255, 208, 77, 115, 255, 209, 78, 114, 255, 210, 79, 113, 255, 211, 81, 113, 255, 212, 82, 112, 255, 213, 83, 111, 255, 213, 84, 110, 255, 214, 85, 109, 255, 215, 86, 108, 255, 216, 87, 107, 255, 217, 88, 106, 255, 218, 90, 106, 255, 218, 91, 105, 255, 219, 92, 104, 255, 220, 93, 103, 255, 221, 94, 102, 255, 222, 95, 101, 255, 222, 97, 100, 255, 223, 98, 99, 255, 224, 99, 99, 255, 225, 100, 98, 255, 226, 101, 97, 255, 226, 102, 96, 255, 227, 104, 95, 255, 228, 105, 94, 255, 229, 106, 93, 255, 229, 107, 93, 255, 230, 108, 92, 255, 231, 110, 91, 255, 231, 111, 90, 255, 232, 112, 89, 255, 233, 113, 88, 255, 233, 114, 87, 255, 234, 116, 87, 255, 235, 117, 86, 255, 235, 118, 85, 255, 236, 119, 84, 255, 237, 121, 83, 255, 237, 122, 82, 255, 238, 123, 81, 255, 239, 124, 81, 255, 239, 126, 80, 255, 240, 127, 79, 255, 240, 128, 78, 255, 241, 129, 77, 255, 241, 131, 76, 255, 242, 132, 75, 255, 243, 133, 75, 255, 243, 135, 74, 255, 244, 136, 73, 255, 244, 137, 72, 255, 245, 139, 71, 255, 245, 140, 70, 255, 246, 141, 69, 255, 246, 143, 68, 255, 247, 144, 68, 255, 247, 145, 67, 255, 247, 147, 66, 255, 248, 148, 65, 255, 248, 149, 64, 255, 249, 151, 63, 255, 249, 152, 62, 255, 249, 154, 62, 255, 250, 155, 61, 255, 250, 156, 60, 255, 250, 158, 59, 255, 251, 159, 58, 255, 251, 161, 57, 255, 251, 162, 56, 255, 252, 163, 56, 255, 252, 165, 55, 255, 252, 166, 54, 255, 252, 168, 53, 255, 252, 169, 52, 255, 253, 171, 51, 255, 253, 172, 51, 255, 253, 174, 50, 255, 253, 175, 49, 255, 253, 177, 48, 255, 253, 178, 47, 255, 253, 180, 47, 255, 253, 181, 46, 255, 254, 183, 45, 255, 254, 184, 44, 255, 254, 186, 44, 255, 254, 187, 43, 255, 254, 189, 42, 255, 254, 190, 42, 255, 254, 192, 41, 255, 253, 194, 41, 255, 253, 195, 40, 255, 253, 197, 39, 255, 253, 198, 39, 255, 253, 200, 39, 255, 253, 202, 38, 255, 253, 203, 38, 255, 252, 205, 37, 255, 252, 206, 37, 255, 252, 208, 37, 255, 252, 210, 37, 255, 251, 211, 36, 255, 251, 213, 36, 255, 251, 215, 36, 255, 250, 216, 36, 255, 250, 218, 36, 255, 249, 220, 36, 255, 249, 221, 37, 255, 248, 223, 37, 255, 248, 225, 37, 255, 247, 226, 37, 255, 247, 228, 37, 255, 246, 230, 38, 255, 246, 232, 38, 255, 245, 233, 38, 255, 245, 235, 39, 255, 244, 237, 39, 255, 243, 238, 39, 255, 243, 240, 39, 255, 242, 242, 39, 255, 241, 244, 38, 255, 241, 245, 37, 255, 240, 247, 36, 255, 240, 249, 33, 255 ]) }; -// module.exports = colorScales; +// export default colorScales; diff --git a/src/attr/filter.js b/src/attr/filter.js index 8c802cfcc2..6a0b29f650 100644 --- a/src/attr/filter.js +++ b/src/attr/filter.js @@ -5,7 +5,7 @@ * @Last Modified time: 2018-07-15 17:26:40 */ -const Base = require('./base'); +import Base from './base'; /** * 视觉通道 symbol @@ -19,4 +19,4 @@ class Filter extends Base { this.gradient = null; } } -module.exports = Filter; +export default Filter; diff --git a/src/attr/index.js b/src/attr/index.js index 81a4682448..eb4d45ba47 100644 --- a/src/attr/index.js +++ b/src/attr/index.js @@ -1,10 +1,19 @@ -const Base = require('./base'); -Base.Color = require('./color'); -Base.Size = require('./size'); -Base.Opacity = require('./opacity'); -Base.Shape = require('./shape'); -Base.Position = require('./position'); -Base.Symbol = require('./symbol'); -Base.Filter = require('./filter'); -module.exports = Base; +import Base from './base'; +import Color from './color'; +import Size from './size'; +import Opacity from './opacity'; +import Shape from './shape'; +import Position from './position'; +import Symbol from './symbol'; +import Filter from './filter'; + +Base.Color = Color; +Base.Size = Size; +Base.Opacity = Opacity; +Base.Shape = Shape; +Base.Position = Position; +Base.Symbol = Symbol; +Base.Filter = Filter; + +export default Base; diff --git a/src/attr/opacity.js b/src/attr/opacity.js index 7d2c07155f..058b8e1450 100644 --- a/src/attr/opacity.js +++ b/src/attr/opacity.js @@ -3,7 +3,7 @@ * @author huangtonger@aliyun.com */ -const Base = require('./base'); +import Base from './base'; /** * 视觉通道 Opacity @@ -18,4 +18,4 @@ class Opacity extends Base { } } -module.exports = Opacity; +export default Opacity; diff --git a/src/attr/position.js b/src/attr/position.js index e191c33342..70c1a85de7 100644 --- a/src/attr/position.js +++ b/src/attr/position.js @@ -4,8 +4,8 @@ */ -const Util = require('../util'); -const Base = require('./base'); +import Base from './base'; +import Util from '../util'; class Position extends Base { constructor(cfg) { @@ -88,4 +88,4 @@ class Position extends Base { } } -module.exports = Position; +export default Position; diff --git a/src/attr/shape.js b/src/attr/shape.js index c2daff1754..1474486394 100644 --- a/src/attr/shape.js +++ b/src/attr/shape.js @@ -4,7 +4,7 @@ */ -const Base = require('./base'); +import Base from './base'; /** * 视觉通道 Shape @@ -26,7 +26,7 @@ class Shape extends Base { const index = Math.round((values.length - 1) * percent); return values[index]; } - /** + /** * @override */ _getAttrValue(scale, value) { @@ -41,4 +41,4 @@ class Shape extends Base { } } -module.exports = Shape; +export default Shape; diff --git a/src/attr/size.js b/src/attr/size.js index 539f1d1766..ec2d9430d4 100644 --- a/src/attr/size.js +++ b/src/attr/size.js @@ -3,8 +3,8 @@ * @author huangtonger@aliyun.com */ -const Base = require('./base'); -const Util = require('../util'); +import Base from './base'; +import Util from '../util'; /** * 视觉通道 size @@ -20,7 +20,7 @@ class Size extends Base { } mapping() { - // 重构 + // 重构 const self = this; const outputs = []; const scales = self.scales; @@ -62,4 +62,4 @@ class Size extends Base { } -module.exports = Size; +export default Size; diff --git a/src/attr/symbol.js b/src/attr/symbol.js index 0ec2e19748..6461a381ee 100644 --- a/src/attr/symbol.js +++ b/src/attr/symbol.js @@ -5,7 +5,7 @@ * @Last Modified time: 2018-07-02 18:24:58 */ -const Base = require('./base'); +import Base from './base'; /** * 视觉通道 symbol @@ -19,4 +19,4 @@ class Symbol extends Base { this.gradient = null; } } -module.exports = Symbol; +export default Symbol; diff --git a/src/component/index.js b/src/component/index.js deleted file mode 100644 index b64cfa4ea5..0000000000 --- a/src/component/index.js +++ /dev/null @@ -1,12 +0,0 @@ -/** - * @fileOverview chart component module - * @author sima.zhang1990@gmail.com - */ -module.exports = { - Axis: require('./axis/index'), - Guide: require('./guide/index'), - Label: require('./label/index'), - Legend: require('./legend/index'), - Plot: require('./plot'), - Tooltip: require('./tooltip/index') -}; diff --git a/src/component/tooltip/index.js b/src/component/tooltip/index.js deleted file mode 100644 index dd7ac6800e..0000000000 --- a/src/component/tooltip/index.js +++ /dev/null @@ -1,568 +0,0 @@ -/** - * @fileOverview The class of tooltip - * @author sima.zhang - */ -const Util = require('../../util'); -const Base = require('../../base'); -const Global = require('../../global'); -const { DomUtil } = require('@antv/g'); - -const CONTAINER_CLASS = 'g2-tooltip'; -const TITLE_CLASS = 'g2-tooltip-title'; -const LIST_CLASS = 'g2-tooltip-list'; -const MARKER_CLASS = 'g2-tooltip-marker'; -const LIST_ITEM_CLASS = 'g2-tooltip-list-item'; - -function find(dom, cls) { - return dom.getElementsByClassName(cls)[0]; -} - -function refixTooltipPosition(x, y, el, viewWidth, viewHeight) { - const width = el.clientWidth; - const height = el.clientHeight; - const gap = 20; - - if (x + width + gap > viewWidth) { - x -= width + gap; - x = x < 0 ? 0 : x; - } else { - x += gap; - } - if (y + height + gap > viewHeight) { - y -= height + gap; - y = x < 0 ? 0 : y; - } else { - y += gap; - } - return [ x, y ]; -} - -function calcTooltipPosition(x, y, position, dom, target) { - const domWidth = dom.clientWidth; - const domHeight = dom.clientHeight; - let rectWidth = 0; - let rectHeight = 0; - let gap = 20; - - if (target) { - const rect = target.getBBox(); - rectWidth = rect.width; - rectHeight = rect.height; - x = rect.x; - y = rect.y; - gap = 5; - } - switch (position) { - case 'inside': - x = x + rectWidth / 2 - domWidth / 2; - y = y + rectHeight / 2 - domHeight / 2; - break; - case 'top': - x = x + rectWidth / 2 - domWidth / 2; - y = y - domHeight - gap; - break; - case 'left': - x = x - domWidth - gap; - y = y + rectHeight / 2 - domHeight / 2; - break; - case 'right': - x = x + rectWidth + gap; - y = y + rectHeight / 2 - domHeight / 2; - break; - case 'bottom': - default: - x = x + rectWidth / 2 - domWidth / 2; - y = y + rectHeight + gap; - break; - } - return [ x, y ]; -} - -function confineTooltipPosition(x, y, el, plotRange) { - const gap = 20; - const width = el.clientWidth; - const height = el.clientHeight; - if (x + width > plotRange.tr.x) { - x -= width + 2 * gap; - } - - if (x < plotRange.tl.x) { - x = plotRange.tl.x; - } - - if (y + height > plotRange.bl.y) { - y -= height + 2 * gap; - } - - if (y < plotRange.tl.y) { - y = plotRange.tl.y; - } - - return [ x, y ]; -} - -class Tooltip extends Base { - getDefaultCfg() { - return { - /** - * 右下角坐标 - * @type {Number} - */ - x: 0, - /** - * y 右下角坐标 - * @type {Number} - */ - y: 0, - /** - * tooltip 记录项 - * @type {Array} - */ - items: null, - /** - * 是否展示 title - * @type {Boolean} - */ - showTitle: true, - /** - * tooltip 辅助线配置 - * @type {Object} - */ - crosshairs: null, - /** - * 视图范围 - * @type {Object} - */ - plotRange: null, - /** - * x轴上,移动到位置的偏移量 - * @type {Number} - */ - offset: 10, - /** - * 时间戳 - * @type {Number} - */ - timeStamp: 0, - /** - * tooltip 容器模板 - * @type {String} - */ - containerTpl: '
' - + '
' - + '' - + '
', - /** - * tooltip 列表项模板 - * @type {String} - */ - itemTpl: '
  • ' - + '' - + '{name}: {value}
  • ', - /** - * 将 tooltip 展示在指定区域内 - * @type {Boolean} - */ - inPlot: true, - /** - * tooltip 内容跟随鼠标移动 - * @type {Boolean} - */ - follow: true, - /** - * 是否允许鼠标停留在 tooltip 上,默认不允许 - * @type {Boolean} - */ - enterable: false - }; - } - - _initTooltipWrapper() { - const self = this; - const containerTpl = self.get('containerTpl'); - const outterNode = self.get('canvas').get('el').parentNode; - let container; - if (/^\#/.test(containerTpl)) { // 如果传入 dom 节点的 id - const id = containerTpl.replace('#', ''); - container = document.getElementById(id); - } else { - container = DomUtil.createDom(containerTpl); - DomUtil.modifyCSS(container, self.get(CONTAINER_CLASS)); - outterNode.appendChild(container); - outterNode.style.position = 'relative'; - } - self.set('container', container); - } - - _init() { - const crosshairs = this.get('crosshairs'); - const frontPlot = this.get('frontPlot'); - const backPlot = this.get('backPlot'); - let crosshairsGroup; - - if (crosshairs) { - if (crosshairs.type === 'rect') { - this.set('crosshairs', Util.deepMix({}, Global.tooltipCrosshairsRect, crosshairs)); - crosshairsGroup = backPlot.addGroup({ - zIndex: 0 - }); - } else { - this.set('crosshairs', Util.deepMix({}, Global.tooltipCrosshairsLine, crosshairs)); - crosshairsGroup = frontPlot.addGroup(); - } - } - - this.set('crosshairsGroup', crosshairsGroup); - this._initTooltipWrapper(); - } - - constructor(cfg) { - super(cfg); - this._init(); // 初始化属性 - - if (this.get('items')) { - this._renderTooltip(); - } - this._renderCrosshairs(); - } - - - _clearDom() { - const container = this.get('container'); - const titleDom = find(container, TITLE_CLASS); - const listDom = find(container, LIST_CLASS); - if (titleDom) { - titleDom.innerHTML = ''; - } - if (listDom) { - listDom.innerHTML = ''; - } - } - - _addItem(item, index) { - const itemTpl = this.get('itemTpl'); // TODO: 有可能是个回调函数 - - const itemDiv = Util.substitute(itemTpl, Util.mix({ - index - }, item)); - - const itemDOM = DomUtil.createDom(itemDiv); - DomUtil.modifyCSS(itemDOM, this.get(LIST_ITEM_CLASS)); - const markerDom = find(itemDOM, MARKER_CLASS); - if (markerDom) { - DomUtil.modifyCSS(markerDom, this.get(MARKER_CLASS)); - } - - return itemDOM; - } - - _renderTooltip() { - const self = this; - const showTitle = self.get('showTitle'); - const titleContent = self.get('titleContent'); - const container = self.get('container'); - const titleDom = find(container, TITLE_CLASS); - const listDom = find(container, LIST_CLASS); - const items = self.get('items'); - self._clearDom(); - - if (titleDom && showTitle) { - DomUtil.modifyCSS(titleDom, self.get(TITLE_CLASS)); - titleDom.innerHTML = titleContent; - } - - if (listDom) { - DomUtil.modifyCSS(listDom, self.get(LIST_CLASS)); - Util.each(items, (item, index) => { - listDom.appendChild(self._addItem(item, index)); - }); - } - } - - _clearCrosshairsGroup() { - const crosshairsGroup = this.get('crosshairsGroup'); - this.set('crossLineShapeX', null); - this.set('crossLineShapeY', null); - this.set('crosshairsRectShape', null); - crosshairsGroup.clear(); - } - - _renderCrosshairs() { - const crosshairs = this.get('crosshairs'); - const canvas = this.get('canvas'); - const plotRange = this.get('plotRange'); - const isTransposed = this.get('isTransposed'); - if (crosshairs) { - this._clearCrosshairsGroup(); - switch (crosshairs.type) { - case 'x': - this._renderHorizontalLine(canvas, plotRange); - break; - case 'y': - this._renderVerticalLine(canvas, plotRange); - break; - case 'cross': - this._renderHorizontalLine(canvas, plotRange); - this._renderVerticalLine(canvas, plotRange); - break; - case 'rect': - this._renderBackground(canvas, plotRange); - break; - default: - isTransposed ? this._renderHorizontalLine(canvas, plotRange) : this._renderVerticalLine(canvas, plotRange); - } - } - } - - _addCrossLineShape(attrs, type) { - const crosshairsGroup = this.get('crosshairsGroup'); - const shape = crosshairsGroup.addShape('line', { - attrs - }); - shape.hide(); - this.set('crossLineShape' + type, shape); - return shape; - } - - _renderVerticalLine(canvas, plotRange) { - const { style } = this.get('crosshairs'); - const attrs = Util.mix({ - x1: 0, - y1: plotRange ? plotRange.bl.y : canvas.get('height'), - x2: 0, - y2: plotRange ? plotRange.tl.y : 0 - }, style); - - this._addCrossLineShape(attrs, 'Y'); - } - - _renderHorizontalLine(canvas, plotRange) { - const { style } = this.get('crosshairs'); - const attrs = Util.mix({ - x1: plotRange ? plotRange.bl.x : canvas.get('width'), - y1: 0, - x2: plotRange ? plotRange.br.x : 0, - y2: 0 - }, style); - - this._addCrossLineShape(attrs, 'X'); - } - - _renderBackground(canvas, plotRange) { - const { style } = this.get('crosshairs'); - const crosshairsGroup = this.get('crosshairsGroup'); - const attrs = Util.mix({ - x: plotRange ? plotRange.tl.x : 0, - y: plotRange ? plotRange.tl.y : canvas.get('height'), - width: plotRange ? plotRange.br.x - plotRange.bl.x : canvas.get('width'), - height: plotRange ? Math.abs(plotRange.tl.y - plotRange.bl.y) : canvas.get('height') - }, style); - - const shape = crosshairsGroup.addShape('rect', { - attrs - }); - shape.hide(); - this.set('crosshairsRectShape', shape); - return shape; - } - - isContentChange(title, items) { - const titleContent = this.get('titleContent'); - const lastItems = this.get('items'); - let isChanged = !(title === titleContent && lastItems.length === items.length); - if (!isChanged) { - Util.each(items, (item, index) => { - const preItem = lastItems[index]; - isChanged = (item.value !== preItem.value) || (item.color !== preItem.color) || (item.name !== preItem.name) || (item.title !== preItem.title); - if (isChanged) { - return false; - } - }); - } - - return isChanged; - } - - setContent(title, items) { - // const isChange = this.isContentChange(title, items); - // if (isChange) { - // 在外面进行判断是否内容发生改变 - const timeStamp = +new Date(); - this.set('items', items); - this.set('titleContent', title); - this.set('timeStamp', timeStamp); - this._renderTooltip(); - // } - return this; - } - - setMarkers(markerItems, markerCfg) { - const self = this; - let markerGroup = self.get('markerGroup'); - const frontPlot = self.get('frontPlot'); - if (!markerGroup) { - markerGroup = frontPlot.addGroup({ - zIndex: 1, - capture: false // 不进行拾取 - }); - self.set('markerGroup', markerGroup); - } else { - markerGroup.clear(); - } - Util.each(markerItems, item => { - markerGroup.addShape('marker', { - color: item.color, - attrs: Util.mix({}, markerCfg, { - x: item.x, - y: item.y - }) - }); - }); - this.set('markerItems', markerItems); - } - - clearMarkers() { - const markerGroup = this.get('markerGroup'); - markerGroup && markerGroup.clear(); - } - - setPosition(x, y, target) { - const container = this.get('container'); - const crossLineShapeX = this.get('crossLineShapeX'); - const crossLineShapeY = this.get('crossLineShapeY'); - const crosshairsRectShape = this.get('crosshairsRectShape'); - let endx = x; - let endy = y; - // const outterNode = this.get('canvas').get('el').parentNode; - const outterNode = this.get('canvas').get('el'); - const viewWidth = DomUtil.getWidth(outterNode); - const viewHeight = DomUtil.getHeight(outterNode); - let offset = this.get('offset'); - - let position; - if (this.get('position')) { - position = calcTooltipPosition(x, y, this.get('position'), container, target); - x = position[0]; - y = position[1]; - } else if (!this.get('position')) { - position = refixTooltipPosition(x, y, container, viewWidth, viewHeight); - x = position[0]; - y = position[1]; - } - - if (this.get('inPlot')) { // tooltip 必须限制在绘图区域内 - const plotRange = this.get('plotRange'); - position = confineTooltipPosition(x, y, container, plotRange); - x = position[0]; - y = position[1]; - } - - if (this.get('x') !== x || this.get('y') !== y) { - const markerItems = this.get('markerItems'); - if (!Util.isEmpty(markerItems)) { - endx = markerItems[0].x; - endy = markerItems[0].y; - } - if (crossLineShapeY) { // 第一次进入时,画布需要单独绘制,所以需要先设定corss的位置 - crossLineShapeY.move(endx, 0); - } - if (crossLineShapeX) { - crossLineShapeX.move(0, endy); - } - - if (crosshairsRectShape) { // 绘制矩形辅助框,只在直角坐标系下生效 - const isTransposed = this.get('isTransposed'); - const items = this.get('items'); - const firstItem = items[0]; - const lastItem = items[items.length - 1]; - const dim = isTransposed ? 'y' : 'x'; - const attr = isTransposed ? 'height' : 'width'; - let startDim = firstItem[dim]; - if (items.length > 1 && firstItem[dim] > lastItem[dim]) { - startDim = lastItem[dim]; - } - - if (this.get('crosshairs').width) { // 用户定义了 width - crosshairsRectShape.attr(dim, startDim - this.get('crosshairs').width / 2); - crosshairsRectShape.attr(attr, this.get('crosshairs').width); - } else { - if (Util.isArray(firstItem.point[dim]) && !firstItem.size) { // 直方图 - const width = firstItem.point[dim][1] - firstItem.point[dim][0]; - crosshairsRectShape.attr(dim, firstItem.point[dim][0]); - crosshairsRectShape.attr(attr, width); - } else { - offset = (3 * firstItem.size) / 4; - crosshairsRectShape.attr(dim, startDim - offset); - - if (items.length === 1) { - crosshairsRectShape.attr(attr, (3 * firstItem.size) / 2); - } else { - crosshairsRectShape.attr(attr, Math.abs(lastItem[dim] - firstItem[dim]) + 2 * offset); - } - } - } - } - - const follow = this.get('follow'); - container.style.left = follow ? (x + 'px') : 0; - container.style.top = follow ? (y + 'px') : 0; - } - } - - show() { - const crossLineShapeX = this.get('crossLineShapeX'); - const crossLineShapeY = this.get('crossLineShapeY'); - const crosshairsRectShape = this.get('crosshairsRectShape'); - const markerGroup = this.get('markerGroup'); - const container = this.get('container'); - const canvas = this.get('canvas'); - crossLineShapeX && crossLineShapeX.show(); - crossLineShapeY && crossLineShapeY.show(); - crosshairsRectShape && crosshairsRectShape.show(); - markerGroup && markerGroup.show(); - super.show(); - container.style.visibility = 'visible'; - // canvas.sort(); - canvas.draw(); - } - - hide() { - const self = this; - const container = self.get('container'); - const crossLineShapeX = self.get('crossLineShapeX'); - const crossLineShapeY = self.get('crossLineShapeY'); - const crosshairsRectShape = this.get('crosshairsRectShape'); - const markerGroup = self.get('markerGroup'); - const canvas = self.get('canvas'); - container.style.visibility = 'hidden'; - crossLineShapeX && crossLineShapeX.hide(); - crossLineShapeY && crossLineShapeY.hide(); - crosshairsRectShape && crosshairsRectShape.hide(); - markerGroup && markerGroup.hide(); - super.hide(); - canvas.draw(); - } - - destroy() { - const self = this; - const crossLineShapeX = self.get('crossLineShapeX'); - const crossLineShapeY = self.get('crossLineShapeY'); - const markerGroup = self.get('markerGroup'); - const crosshairsRectShape = self.get('crosshairsRectShape'); - const container = self.get('container'); - const containerTpl = self.get('containerTpl'); - - if (container && !(/^\#/.test(containerTpl))) { - container.parentNode.removeChild(container); - } - - crossLineShapeX && crossLineShapeX.remove(); - crossLineShapeY && crossLineShapeY.remove(); - markerGroup && markerGroup.remove(); - crosshairsRectShape && crosshairsRectShape.remove(); - // super.remove(); - super.destroy(); - } -} - -module.exports = Tooltip; diff --git a/src/core/base.js b/src/core/base.js index e5b3e92d7a..55ba028668 100644 --- a/src/core/base.js +++ b/src/core/base.js @@ -4,7 +4,7 @@ */ import EventEmitter from 'wolfy87-eventemitter'; -import { assign } from '../util'; +import Util from '../util'; class Base extends EventEmitter { @@ -19,7 +19,7 @@ class Base extends EventEmitter { }; const defaultCfg = this.getDefaultCfg(); this._attrs = attrs; - assign(attrs, defaultCfg, cfg); + Util.assign(attrs, defaultCfg, cfg); } get(name) { diff --git a/src/core/controller/index.js b/src/core/controller/index.js index be256246b0..183b371353 100644 --- a/src/core/controller/index.js +++ b/src/core/controller/index.js @@ -1,4 +1,4 @@ import Scale from './scale'; -export { +export default { Scale }; diff --git a/src/core/controller/scale.js b/src/core/controller/scale.js index 669b9ad7ec..5fd56120bd 100644 --- a/src/core/controller/scale.js +++ b/src/core/controller/scale.js @@ -3,9 +3,9 @@ * @author dxq613@gmail.com */ -const Util = require('../../util'); -const Global = require('../../global'); -const Scale = require('../../scale/'); +import Util from '../../util'; +import Global from '../../global'; +import Scale from '../../scale/'; const dateRegex = /^(?:(?!0000)[0-9]{4}([-/.]+)(?:(?:0?[1-9]|1[0-2])\1(?:0?[1-9]|1[0-9]|2[0-8])|(?:0?[13-9]|1[0-2])\1(?:29|30)|(?:0?[13578]|1[02])\1(?:31))|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)([-/.]?)0?2\2(?:29))(\s+([01]|([01][0-9]|2[0-3])):([0-9]|[0-5][0-9]):([0-9]|[0-5][0-9]))?$/; const TYPES = { LINEAR: 'linear', @@ -111,4 +111,4 @@ class ScaleController { } } -module.exports = ScaleController; +export default ScaleController; diff --git a/src/core/image.js b/src/core/image.js index 845053d977..eb1ab5c415 100644 --- a/src/core/image.js +++ b/src/core/image.js @@ -18,7 +18,7 @@ export default class LoadImage extends EventEmitter { this.imagesIds = []; } addImage(id, opt) { - this.imagesCount ++; + this.imagesCount++; this.imagesIds.push(id); const imageCount = this.imagesCount; const x = imageCount % 8 * this.imageWidth; diff --git a/src/core/layer.js b/src/core/layer.js index dc0afbd99e..9cad42e7f2 100644 --- a/src/core/layer.js +++ b/src/core/layer.js @@ -9,7 +9,7 @@ import source from './source'; import PickingMaterial from '../core/engine/picking/pickingMaterial'; import Attr from '../attr/index'; import Util from '../util'; -const Global = require('../global'); +import Global from '../global'; let id = 1; function parseFields(field) { if (Util.isArray(field)) { @@ -183,7 +183,6 @@ export default class Layer extends Base { if (colorItem.indexOf(item) !== -1 && styleOptions[item] !== 'none') { styleOptions[item] = ColorUtil.color2RGBA(styleOptions[item]); } - styleOptions[item] = styleOptions[item]; } this.set('styleOptions', styleOptions); return this; @@ -525,7 +524,7 @@ export default class Layer extends Base { this._updateMaping(); } - /** + /** * 用于过滤数据 * @param {*} object 需要过滤的mesh */ diff --git a/src/core/scene.js b/src/core/scene.js index 38e3879c48..c86c5cf65c 100644 --- a/src/core/scene.js +++ b/src/core/scene.js @@ -25,7 +25,7 @@ export default class Scene extends Base { this.workerPool = new WorkerPool(); compileBuiltinModules(); } - // 为pickup场景添加 object 对象 + // 为pickup场景添加 object 对象 addPickMesh(object) { this._engine._picking.add(object); } diff --git a/src/core/source.js b/src/core/source.js index 259ab32179..230e9c3b33 100644 --- a/src/core/source.js +++ b/src/core/source.js @@ -1,6 +1,6 @@ import Base from './base'; -const Controller = require('./controller/index'); +import Controller from './controller/index'; import { getTransform, getParser } from '../source'; import { getMap } from '../map/index'; export default class Source extends Base { diff --git a/src/core/three.js b/src/core/three.js index 03359e840d..f9db373473 100644 --- a/src/core/three.js +++ b/src/core/three.js @@ -23,16 +23,16 @@ export { Vector2 } from 'three/src/math/Vector2.js'; export { ShaderMaterial } from 'three/src/materials/ShaderMaterial.js'; export { DataTexture } from 'three/src/textures/DataTexture.js'; export { - Float64BufferAttribute, - Float32BufferAttribute, - Uint32BufferAttribute, - Int32BufferAttribute, - Uint16BufferAttribute, - Int16BufferAttribute, - Uint8ClampedBufferAttribute, - Uint8BufferAttribute, - Int8BufferAttribute, - BufferAttribute + Float64BufferAttribute, + Float32BufferAttribute, + Uint32BufferAttribute, + Int32BufferAttribute, + Uint16BufferAttribute, + Int16BufferAttribute, + Uint8ClampedBufferAttribute, + Uint8BufferAttribute, + Int8BufferAttribute, + BufferAttribute } from 'three/src/core/BufferAttribute.js'; // export * from '../../build/Three.js'; diff --git a/src/geo/lngLat.js b/src/geo/lngLat.js deleted file mode 100644 index b635918f0c..0000000000 --- a/src/geo/lngLat.js +++ /dev/null @@ -1,75 +0,0 @@ -self._wkHandlers={};; - - function _prep_h17(){function a(b,c,d,e,g,k){var l=[0,0,0,0,0],n=d.slice(0,4).concat(l),p=[],s=Math.PI/180*6,A=void 0,I=void 0,A=d.slice(0,2),D=m(e),F=m(g),I=q.normalize(h(D).fg(h(A))),C=q.normalize(h(F).fg(h(A)));q.OK(I,k)?(A=q.oD(I),I=q.oD(C)):(A=q.oD(C),I=q.oD(I),k=[F,D],D=k[0],F=k[1],g=[g,e],e=g[0],g=g[1]);D=Math.ceil(Math.abs(I-A)/s);30<=D&&(D=60-D);for(k=0;kMath.sqrt(3)/2&&(d=Math.sqrt(3)/2);c=c.oJ(d)}return c}function g(a,c,e){if(void 0===e||!0===e)b.push(a[0],a[1]),b.push(-c.y,c.x,0,0),b.push(m,0,0),d.push(a[2]);if(void 0===e||!1===e)b.push(a[0],a[1]),b.push(c.y,-c.x,0,0),b.push(m,0,0),d.push(a[2])}for(var k=a[0],l=a[a.length-1],m=0,n=void 0;k[0]===l[0]&&k[1]===l[1]&&k!==l;)a.pop(),l=a[a.length-1];a.push(k);a.push(a[1]);a.unshift(l);var p=a.length;a.forEach(function(a,d, k){var l=k[d-1];k=k[d+1];var r=void 0;l&&(m+=q.Fd(a,l));if(0===d||d===p-1)0===d?(r=q.normalize(h(k[0]-a[0],k[1]-a[1])),c.push(0,1,2)):(r=q.normalize(h(a[0]-l[0],a[1]-l[1])),d=b.length/9+2,c.push(d-3,d-1,d-2)),g(a,r);else{d=q.normalize(h(a[0]-l[0],a[1]-l[1]));k=q.normalize(h(k[0]-a[0],k[1]-a[1]));l=q.normalize(d.multiply(-1).mi(k));n=q.OK(l,d);g(a,e(d,k),!0);g(a,e(d,k),!1);g(a,e(d,k),!0);g(a,e(d,k),!1);a=b.length/9-4;k=a+2;var r=9*a,s=r+9,x=s+9,B=x+9;d=Math.abs(q.cos(d,l)/q.sin(d,l));n?(b[r+7]=d,b[s+ 7]=-d,b[x+7]=-d,b[B+7]=d):(b[r+7]=-d,b[s+7]=d,b[x+7]=d,b[B+7]=-d);c.push(a,a-1,a+1);c.push(k,k+1,k+2)}})}function e(c,d,e){function g(a,b){if(p)for(;0=a&&(a+=2*Math.PI);return a}},s={mi:function(a){return h(this.x+a.x,this.y+a.y)},fg:function(a){return h(this.x-a.x,this.y-a.y)},multiply:function(a){return"number"===typeof a?h(this.x*a,this.y*a):this.x*a.x+this.y*a.y},oJ:function(a){return h(this.x/a,this.y/a)},NC:function(a){var b=a.y;return this.x===a.x&&this.y===b}};return{parse:function(a,b){var h=a.lineJoin,h=void 0===h?"bevel":h,k= a.lineCap,k=void 0===k?"butt":k,l=a.Zda,l=void 0===l?!1:l,m=a.tn,n=void 0===m?!1:m,p=a.LX,m=a.Iia,q=void 0===m?!0:m,m=a.Sda,s=[],A=[],I=g(a.Nr,void 0===p?!0:p),p=[];l?(d(I,s,A,p),h=s.length,[0,1,2,h/9-1,h/9-2].forEach(function(a){s[9*a+8]=-1})):(c(I,s,A,h,n,p),e(I,s,A,k,p));q&&(s=new Float32Array(s),A=65535=h||b.jn;if(d||b){d=1 { - const { color, size, id, coordinates} = item; + const { color, size, id, coordinates } = item; attributes.vertices.push(...coordinates); attributes.colors.push(...color); attributes.pickingIds.push(id); diff --git a/src/geom/buffer/point/strokeBuffer.js b/src/geom/buffer/point/strokeBuffer.js index eff757e3c6..7d0e59b014 100644 --- a/src/geom/buffer/point/strokeBuffer.js +++ b/src/geom/buffer/point/strokeBuffer.js @@ -1,7 +1,8 @@ import * as polygonPath from '../../shape/path'; import * as polygonShape from '../../shape/polygon'; import * as lineShape from '../../shape/line'; -import { pointShape } from '../../../global'; +import Global from '../../../global'; +const { pointShape } = Global; import Util from '../../../util'; export default function StrokeBuffer(layerData, style) { const attribute = { @@ -26,7 +27,7 @@ export default function StrokeBuffer(layerData, style) { } else if (pointShape['3d'].indexOf(shape) !== -1) { Util.isArray(size) || (size = [ size, size, size ]); const polygonExtrudePath = polygonShape.extrudeline([ path ]); - // TODO 3d line + // TODO 3d line polygon = lineShape.Line([ polygonExtrudePath ], { size: [ strokeWidth, 0 ], color: stroke, id }, positionsIndex); diff --git a/src/geom/buffer/point/textBuffer.js b/src/geom/buffer/point/textBuffer.js index 1d68acb3b1..211dc00ff6 100644 --- a/src/geom/buffer/point/textBuffer.js +++ b/src/geom/buffer/point/textBuffer.js @@ -70,7 +70,7 @@ function loadTextTexture(url, cb) { img.src = url; } - /** +/** * 计算每个标注词语的位置 * @param {*} chars 文本信息 * @param {*} pos 文字三维空间坐标 @@ -109,18 +109,18 @@ function drawGlyph(chars, pos, text, pen, size, colors, textureElements, originP pos[0] + originX, pos[1] + originY, 0, pos[0] + originX, pos[1] + originY, 0, pos[0] + originX, pos[1] + originY, 0, - ); + ); const bx = 0; const by = metrics.size / 2 + buffer; textSizes.push( - ((bx - buffer + width) * scale), (height - by) * scale, - ((bx - buffer) * scale), (height - by) * scale, - ((bx - buffer) * scale), -by * scale, + ((bx - buffer + width) * scale), (height - by) * scale, + ((bx - buffer) * scale), (height - by) * scale, + ((bx - buffer) * scale), -by * scale, - ((bx - buffer + width) * scale), (height - by) * scale, - ((bx - buffer) * scale), -by * scale, - ((bx - buffer + width) * scale), -by * scale, - ); + ((bx - buffer + width) * scale), (height - by) * scale, + ((bx - buffer) * scale), -by * scale, + ((bx - buffer + width) * scale), -by * scale, + ); textOffsets.push( @@ -142,14 +142,14 @@ function drawGlyph(chars, pos, text, pen, size, colors, textureElements, originP ); textureElements.push( - posX + width, posY, - posX, posY, - posX, posY + height, + posX + width, posY, + posX, posY, + posX, posY + height, - posX + width, posY, - posX, posY + height, - posX + width, posY + height - ); + posX + width, posY, + posX, posY + height, + posX + width, posY + height + ); } pen.x = pen.x + size * 1.8; diff --git a/src/geom/buffer/polygon.js b/src/geom/buffer/polygon.js index 60c585d872..ab2d6c2aea 100644 --- a/src/geom/buffer/polygon.js +++ b/src/geom/buffer/polygon.js @@ -26,7 +26,7 @@ export default class PolygonBuffer extends BufferBase { positions.push(extrudeData.positions); if (shape !== 'line') { - // faceUv.push(...extrudeData.faceUv); + // faceUv.push(...extrudeData.faceUv); const count = extrudeData.faceUv.length / 2; for (let i = 0; i < count; i++) { // uv 系数生成等大小的窗户 diff --git a/src/geom/buffer/text.js b/src/geom/buffer/text.js index 5f906352b4..4680ffeafe 100644 --- a/src/geom/buffer/text.js +++ b/src/geom/buffer/text.js @@ -116,7 +116,7 @@ export default class TextBuffer extends BufferBase { // const horiBearingX = metric[2]; // const horiBearingY = metric[3]; - // const horiAdvance = metric[4]; + // const horiAdvance = metric[4]; // const posX = metric[5]; // const posY = metric[6]; const posX = x; @@ -128,7 +128,7 @@ export default class TextBuffer extends BufferBase { width += buffer * 2; height += buffer * 2; - // Add a quad (= two triangles) per glyph. + // Add a quad (= two triangles) per glyph. // const originX = (horiBearingX - buffer + width / 2) * scale; // const originY = -(height - horiBearingY) * scale; const originX = 0; @@ -144,13 +144,13 @@ export default class TextBuffer extends BufferBase { const offsetX = pen.x; const offsetY = pen.y; originPoints.push( - pos[0] + originX, pos[1] + originY, 0, - pos[0] + originX, pos[1] + originY, 0, - pos[0] + originX, pos[1] + originY, 0, - pos[0] + originX, pos[1] + originY, 0, - pos[0] + originX, pos[1] + originY, 0, - pos[0] + originX, pos[1] + originY, 0, - ); + pos[0] + originX, pos[1] + originY, 0, + pos[0] + originX, pos[1] + originY, 0, + pos[0] + originX, pos[1] + originY, 0, + pos[0] + originX, pos[1] + originY, 0, + pos[0] + originX, pos[1] + originY, 0, + pos[0] + originX, pos[1] + originY, 0, + ); // textSizes.push( // offsetWidth, offsetHeight, @@ -169,31 +169,31 @@ export default class TextBuffer extends BufferBase { ((bx - buffer) * scale), (height - by) * scale, ((bx - buffer) * scale), -by * scale, - ((bx - buffer + width) * scale), (height - by) * scale, - ((bx - buffer) * scale), -by * scale, - ((bx - buffer + width) * scale), -by * scale, + ((bx - buffer + width) * scale), (height - by) * scale, + ((bx - buffer) * scale), -by * scale, + ((bx - buffer + width) * scale), -by * scale, ); textOffsets.push( - offsetX, offsetY, - offsetX, offsetY, - offsetX, offsetY, - offsetX, offsetY, - offsetX, offsetY, - offsetX, offsetY, - ); + offsetX, offsetY, + offsetX, offsetY, + offsetX, offsetY, + offsetX, offsetY, + offsetX, offsetY, + offsetX, offsetY, + ); colors.push( - ...color, - ...color, - ...color, - ...color, - ...color, - ...color, - ); + ...color, + ...color, + ...color, + ...color, + ...color, + ...color, + ); textureElements.push( posX + width, posY, diff --git a/src/geom/extrude.js b/src/geom/extrude.js index 543ccddbc6..3b3375b798 100644 --- a/src/geom/extrude.js +++ b/src/geom/extrude.js @@ -34,7 +34,7 @@ export default function extrudePolygon(points, extrude) { } } function full() { - // 顶部纹理 + // 顶部纹理 triangles.forEach(() => { faceUv.push(-1, -1); }); @@ -85,11 +85,11 @@ export function extrudePolygonLine(points, extrude) { extrude === 0 ? flat() : full(); function flat() { - points[0].forEach(p => { positions.push([ p[0], p[1], 0 ]); }); // top + points[0].forEach(p => { positions.push([ p[0], p[1], 0 ]); }); // top } function full() { points[0].forEach(p => { positions.push([ p[0], p[1], 1 ]); }); // top - points[0].forEach(p => { positions.push([ p[0], p[1], 0 ]); }); // bottom + points[0].forEach(p => { positions.push([ p[0], p[1], 0 ]); }); // bottom for (let i = 0; i < n; i++) { if (i === (n - 1)) { cells.push(i + n, n, i); diff --git a/src/geom/shape/path.js b/src/geom/shape/path.js index 6f9c269388..d4c2842a50 100644 --- a/src/geom/shape/path.js +++ b/src/geom/shape/path.js @@ -19,14 +19,14 @@ function hexagon() { return polygonPath(6); } export { - circle, - square, - triangle, - hexagon, - circle as cylinder, - triangle as triangleColumn, - hexagon as hexagonColumn, - square as squareColumn + circle, + square, + triangle, + hexagon, + circle as cylinder, + triangle as triangleColumn, + hexagon as hexagonColumn, + square as squareColumn }; export function polygonPath(pointCount) { diff --git a/src/global.js b/src/global.js index be038b3e66..83d6ab5fc5 100644 --- a/src/global.js +++ b/src/global.js @@ -33,4 +33,4 @@ const Global = { }; -module.exports = Global; +export default Global; diff --git a/src/index.js b/src/index.js index 3117424cd7..ab6962277f 100755 --- a/src/index.js +++ b/src/index.js @@ -7,7 +7,7 @@ const version = Global.version; const track = function(enable) { Global.trackable = enable; }; -require('./track'); +import './track'; export { version, Scene, diff --git a/src/layer/lineLayer.js b/src/layer/lineLayer.js index c83c3f0a88..ff672b9196 100644 --- a/src/layer/lineLayer.js +++ b/src/layer/lineLayer.js @@ -11,7 +11,6 @@ export default class LineLayer extends Layer { render() { this.type = 'polyline'; this.init(); - const source = this.layerSource; const layerData = this.layerData; const style = this.get('styleOptions'); const buffer = this._buffer = new LineBuffer({ diff --git a/src/layer/pointLayer.js b/src/layer/pointLayer.js index 7acbdfbf53..e574ae3335 100644 --- a/src/layer/pointLayer.js +++ b/src/layer/pointLayer.js @@ -1,12 +1,12 @@ import Layer from '../core/layer'; import * as THREE from '../core/three'; import * as drawPoint from '../layer/render/point'; -import { pointShape } from '../global'; +import Global from '../global'; // import PointBuffer from '../geom/buffer/point'; import TextBuffer from '../geom/buffer/text'; import TextMaterial from '../geom/material/textMaterial'; import * as PointBuffer from '../geom/buffer/point/index'; - +const { pointShape } = Global; /** * point shape 2d circle, traingle text,image * shape 3d cube,column, sphere @@ -37,39 +37,38 @@ export default class PointLayer extends Layer { this._textPoint(); return; } - const source = this.layerSource; const style = this.get('styleOptions'); const pointShapeType = this._getShape(); switch (pointShapeType) { case 'fill' :// 填充图形 - { - if (fill !== 'none') { // 是否填充 - const attributes = PointBuffer.FillBuffer(this.layerData, style); - const meshfill = drawPoint.DrawFill(attributes, this.get('styleOptions')); - this.add(meshfill); - } - if (stroke !== 'none') { // 是否绘制边界 - const lineAttribute = PointBuffer.StrokeBuffer(this.layerData, style); - const meshStroke = drawPoint.DrawStroke(lineAttribute, this.get('styleOptions')); - this.add(meshStroke, 'line'); - } - break; + { + if (fill !== 'none') { // 是否填充 + const attributes = PointBuffer.FillBuffer(this.layerData, style); + const meshfill = drawPoint.DrawFill(attributes, this.get('styleOptions')); + this.add(meshfill); } - case 'image':// 绘制图片标注 - { - const imageAttribute = PointBuffer.ImageBuffer(this.layerData, { imagePos: this.scene.image.imagePos }); - const imageMesh = drawPoint.DrawImage(imageAttribute, { ...style, texture: this.scene.image.texture }); - this.add(imageMesh); - break; + if (stroke !== 'none') { // 是否绘制边界 + const lineAttribute = PointBuffer.StrokeBuffer(this.layerData, style); + const meshStroke = drawPoint.DrawStroke(lineAttribute, this.get('styleOptions')); + this.add(meshStroke, 'line'); } + break; + } + case 'image':// 绘制图片标注 + { + const imageAttribute = PointBuffer.ImageBuffer(this.layerData, { imagePos: this.scene.image.imagePos }); + const imageMesh = drawPoint.DrawImage(imageAttribute, { ...style, texture: this.scene.image.texture }); + this.add(imageMesh); + break; + } case 'normal' : // 原生点 - { - const normalAttribute = PointBuffer.NormalBuffer(this.layerData, style); - const normalPointMesh = drawPoint.DrawNormal(normalAttribute, style); - this.add(normalPointMesh); - break; - } + { + const normalAttribute = PointBuffer.NormalBuffer(this.layerData, style); + const normalPointMesh = drawPoint.DrawNormal(normalAttribute, style); + this.add(normalPointMesh); + break; + } default: return null; } @@ -98,7 +97,6 @@ export default class PointLayer extends Layer { } _textPoint() { - const source = this.layerSource; const styleOptions = this.get('styleOptions'); const buffer = new TextBuffer({ type: this.shapeType, diff --git a/src/map/AMap.js b/src/map/AMap.js index e54615b94a..6e9ef3b5df 100644 --- a/src/map/AMap.js +++ b/src/map/AMap.js @@ -1,11 +1,11 @@ import Base from '../core/base'; -import { scene } from '../global'; +import Global from '../global'; import * as Theme from '../theme/index'; import Util from '../util'; const DEG2RAD = Math.PI / 180; export default class GaodeMap extends Base { getDefaultCfg() { - return Util.assign(scene, { + return Util.assign(Global.scene, { resizeEnable: true, viewMode: '3D' }); diff --git a/src/map/mapbox.js b/src/map/mapbox.js index 8eebadc8ef..b3e7ddf875 100644 --- a/src/map/mapbox.js +++ b/src/map/mapbox.js @@ -1,6 +1,6 @@ import Base from '../core/base'; import Util from '../util'; -import { scene } from '../global'; +import Global from '../global'; import * as THREE from '../core/three'; const WORLD_SIZE = 512; const MERCATOR_A = 6378137.0; @@ -8,7 +8,7 @@ const WORLD_SCALE = 1 / 100; const PROJECTION_WORLD_SIZE = WORLD_SIZE / (MERCATOR_A * Math.PI) / 2; export default class MapBox extends Base { getDefaultCfg() { - return Util.assign(scene, { + return Util.assign(Global.scene, { resizeEnable: true, viewMode: '3D' }); @@ -80,10 +80,10 @@ export default class MapBox extends Base { // Unlike the Mapbox GL JS camera, separate camera translation and rotation out into its world matrix // If this is applied directly to the projection matrix, it will work OK but break raycasting cameraWorldMatrix - .premultiply(cameraTranslateZ) - .premultiply(cameraRotateX) - .premultiply(cameraRotateZ) - .premultiply(cameraTranslateXY); + .premultiply(cameraTranslateZ) + .premultiply(cameraRotateX) + .premultiply(cameraRotateZ) + .premultiply(cameraTranslateXY); camera.matrixWorld.copy(cameraWorldMatrix); @@ -94,23 +94,23 @@ export default class MapBox extends Base { const translateMap = new THREE.Matrix4(); const rotateMap = new THREE.Matrix4(); scale - .makeScale(zoomPow, zoomPow, 1.0); + .makeScale(zoomPow, zoomPow, 1.0); translateCenter - .makeTranslation(WORLD_SIZE / 2, -WORLD_SIZE / 2, 0); + .makeTranslation(WORLD_SIZE / 2, -WORLD_SIZE / 2, 0); translateMap - .makeTranslation(-this.map.transform.x, this.map.transform.y, 0); + .makeTranslation(-this.map.transform.x, this.map.transform.y, 0); rotateMap - .makeRotationZ(Math.PI); + .makeRotationZ(Math.PI); scene.matrix = new THREE.Matrix4(); scene.matrix - .premultiply(rotateMap) - .premultiply(translateCenter) - .premultiply(scale); + .premultiply(rotateMap) + .premultiply(translateCenter) + .premultiply(scale); pickScene.matrix = new THREE.Matrix4(); pickScene.matrix - .premultiply(rotateMap) - .premultiply(translateCenter) - .premultiply(scale); + .premultiply(rotateMap) + .premultiply(translateCenter) + .premultiply(scale); } makePerspectiveMatrix(fovy, aspect, near, far) { const out = new THREE.Matrix4(); diff --git a/src/scale/auto/cat.js b/src/scale/auto/cat.js index 68095a29e5..733988eb6b 100644 --- a/src/scale/auto/cat.js +++ b/src/scale/auto/cat.js @@ -2,8 +2,7 @@ * @fileOverview 计算分类的的坐标点 * @author dxq613@gmail.com */ - -const Util = require('../../util'); +import Util from '../../util'; const MAX_COUNT = 8; const SUB_COUNT = 4; // 控制个数不能过小 @@ -32,7 +31,7 @@ function getGreatestFactor(count, number) { return i; } -module.exports = function(info) { +export default function(info) { const rst = {}; const ticks = []; const maxCount = info.maxCount || MAX_COUNT; @@ -70,4 +69,4 @@ module.exports = function(info) { rst.categories = categories; rst.ticks = ticks; return rst; -}; +} diff --git a/src/scale/auto/number.js b/src/scale/auto/number.js index 09eb5f9fb7..3f370be5c4 100644 --- a/src/scale/auto/number.js +++ b/src/scale/auto/number.js @@ -3,13 +3,13 @@ * @author dxq613@gmail.com */ -const Util = require('../../util'); -const AutoUtil = require('./util'); +import Util from '../../util'; +import AutoUtil from './util'; const MIN_COUNT = 5; const MAX_COUNT = 7; -const Global = require('../../global'); +import Global from '../../global'; -module.exports = function(info) { +export default function(info) { let min = info.min; let max = info.max; let interval = info.interval; @@ -116,4 +116,4 @@ module.exports = function(info) { count, ticks }; -}; +} diff --git a/src/scale/auto/time.js b/src/scale/auto/time.js index 8a3d160e3d..0bbfb48e5d 100644 --- a/src/scale/auto/time.js +++ b/src/scale/auto/time.js @@ -3,8 +3,8 @@ * @author dxq613@gmail.com */ -const Util = require('../../util'); -const AutoUtil = require('./util'); +import Util from '../../util'; +import AutoUtil from './util'; const MAX_COUNT = 6; const SNAP_ARRAY = [ 1, 2, 4, 6, 8, 12 ]; @@ -48,7 +48,7 @@ function diffMinus(min, max) { return Math.ceil((max - min) / (60 * 1000)); } -module.exports = function(info) { +export default function(info) { const minInterval = info.minInterval; const ticks = []; let min = info.min; @@ -158,4 +158,4 @@ module.exports = function(info) { ticks, count: ticks.length }; -}; +} diff --git a/src/scale/auto/util.js b/src/scale/auto/util.js index 890d3245ce..f559a6ee2f 100644 --- a/src/scale/auto/util.js +++ b/src/scale/auto/util.js @@ -85,7 +85,8 @@ function arrayCeiling(values, value) { const Util = { // 获取逼近的数值 - snapFactorTo(v, arr, snapType) { // 假设 v = -512,isFloor = true + snapFactorTo(v, arr, snapType) { + // 假设 v = -512,isFloor = true if (isNaN(v)) { return NaN; } @@ -112,7 +113,7 @@ const Util = { if (Math.abs(factor) < 1 && rst.toString().length > DECIMAL_LENGTH) { const decimalVal = parseInt(1 / factor); const symbol = factor > 0 ? 1 : -1; - rst = v / decimalVal * symbol; + rst = (v / decimalVal) * symbol; } return rst; }, @@ -174,4 +175,4 @@ const Util = { } }; -module.exports = Util; +export default Util; diff --git a/src/scale/base.js b/src/scale/base.js index f92bac46ba..91e5c148c7 100644 --- a/src/scale/base.js +++ b/src/scale/base.js @@ -3,13 +3,13 @@ * @author dxq613@gmail.com */ -const Util = require('../util'); +import Util from '../util'; /** * 度量的构造函数 * @class Scale */ -class Scale { +class Base { /** * 获取默认的配置属性 @@ -183,4 +183,4 @@ class Scale { } } -module.exports = Scale; +export default Base; diff --git a/src/scale/category.js b/src/scale/category.js index dc85509522..50d31aa212 100644 --- a/src/scale/category.js +++ b/src/scale/category.js @@ -4,9 +4,9 @@ */ -const Base = require('./base'); -const Util = require('../util'); -const catAuto = require('./auto/cat'); +import Base from './base'; +import Util from '../util'; +import catAuto from './auto/cat'; /** * 度量的构造函数 @@ -132,4 +132,4 @@ class Category extends Base { } } -module.exports = Category; +export default Category; diff --git a/src/scale/identity.js b/src/scale/identity.js index e11fc0af70..4d1fc55553 100644 --- a/src/scale/identity.js +++ b/src/scale/identity.js @@ -3,8 +3,8 @@ * @author dxq613@gmail.com */ -const Base = require('./base'); -const Util = require('../util'); +import Base from './base'; +import Util from '../util'; class Identity extends Base { @@ -54,4 +54,4 @@ class Identity extends Base { } } -module.exports = Identity; +export default Identity; diff --git a/src/scale/index.js b/src/scale/index.js index 7c8ed3cd32..b0c27f4066 100644 --- a/src/scale/index.js +++ b/src/scale/index.js @@ -3,15 +3,23 @@ * @author dxq613@gmail.com */ -const Util = require('../util'); -const Base = require('./base'); -Base.Linear = require('./linear'); -Base.Identity = require('./identity'); -Base.Cat = require('./category'); -Base.Time = require('./time'); -Base.TimeCat = require('./time-cat'); -Base.Log = require('./log'); -Base.Pow = require('./pow'); +import Util from '../util'; +import Base from './base'; +import Linear from './linear'; +import Identity from './identity'; +import Cat from './category'; +import Time from './time'; +import TimeCat from './time-cat'; +import Log from './log'; +import Pow from './pow'; + +Base.Linear = Linear; +Base.Identity = Identity; +Base.Cat = Cat; +Base.Time = Time; +Base.TimeCat = TimeCat; +Base.Log = Log; +Base.Pow = Pow; for (const k in Base) { if (Base.hasOwnProperty(k)) { @@ -28,4 +36,4 @@ Base.isCategory = function(type) { return CAT_ARR.indexOf(type) >= 0; }; -module.exports = Base; +export default Base; diff --git a/src/scale/linear.js b/src/scale/linear.js index 6070a45ccb..a80e5f732f 100644 --- a/src/scale/linear.js +++ b/src/scale/linear.js @@ -4,9 +4,9 @@ */ -const Base = require('./base'); -const Util = require('../util'); -const numberAuto = require('./auto/number'); +import Base from './base'; +import Util from '../util'; +import numberAuto from './auto/number'; /** * 线性度量 @@ -192,4 +192,4 @@ class Linear extends Base { } } -module.exports = Linear; +export default Linear; diff --git a/src/scale/log.js b/src/scale/log.js index a3b69a9375..1a92809b57 100644 --- a/src/scale/log.js +++ b/src/scale/log.js @@ -3,8 +3,8 @@ * @author dxq613@gmail.com */ -const Linear = require('./linear'); -const Util = require('../util'); +import Linear from './linear'; +import Util from '../util'; // 计算log function log(a, b) { @@ -157,4 +157,4 @@ class Log extends Linear { } } -module.exports = Log; +export default Log; diff --git a/src/scale/pow.js b/src/scale/pow.js index 72991bb310..f8ead37bb8 100644 --- a/src/scale/pow.js +++ b/src/scale/pow.js @@ -4,8 +4,8 @@ */ -const Linear = require('./linear'); -const Util = require('../util'); +import Linear from './linear'; +import Util from '../util'; // 求以a为次幂,结果为b的基数,如 x^^a = b;求x function calBase(a, b) { @@ -111,4 +111,4 @@ class Pow extends Linear { } } -module.exports = Pow; +export default Pow; diff --git a/src/scale/time-cat.js b/src/scale/time-cat.js index 28ceacc2fc..c49eae862f 100644 --- a/src/scale/time-cat.js +++ b/src/scale/time-cat.js @@ -3,11 +3,11 @@ * @author dxq613@gmail.com */ -const Category = require('./category'); -const Util = require('../util'); -const fecha = require('fecha'); -const catAuto = require('./auto/cat'); -const TimeUtil = require('./time-util'); +import Category from './category'; +import Util from '../util'; +import fecha from 'fecha'; +import TimeUtil from './time-util'; +import catAuto from './auto/cat'; /** * 度量的构造函数 @@ -166,4 +166,4 @@ class TimeCategory extends Category { } } -module.exports = TimeCategory; +export default TimeCategory; diff --git a/src/scale/time-util.js b/src/scale/time-util.js index 822be91826..2387d62268 100644 --- a/src/scale/time-util.js +++ b/src/scale/time-util.js @@ -3,9 +3,9 @@ * @author dxq613@gmail.com */ -const Util = require('../util'); +import Util from '../util'; -module.exports = { +export default { toTimeStamp(value) { if (Util.isString(value)) { if (value.indexOf('T') > 0) { diff --git a/src/scale/time.js b/src/scale/time.js index 60a91407ad..13a0c9b01b 100644 --- a/src/scale/time.js +++ b/src/scale/time.js @@ -3,11 +3,11 @@ * @author dxq613@gmail.com */ -const Linear = require('./linear'); -const Util = require('../util'); -const timeAuto = require('./auto/time'); -const fecha = require('fecha'); -const TimeUtil = require('./time-util'); +import Linear from './linear'; +import Util from '../util'; +import timeAuto from './auto/time'; +import fecha from 'fecha'; +import TimeUtil from './time-util'; /** * 时间度量的构造函数 @@ -126,4 +126,4 @@ class Time extends Linear { } } -module.exports = Time; +export default Time; diff --git a/src/source/transform/grid.js b/src/source/transform/grid.js index d2ace3476c..d9c94ee54e 100644 --- a/src/source/transform/grid.js +++ b/src/source/transform/grid.js @@ -5,12 +5,6 @@ import * as statistics from './statistics'; const R_EARTH = 6378000; -/** - * 计算方格密度图 - * @param {*} data 经纬度数据 和属性数据 - * @param {*} size 半径大小 单位 km - * @return - */ export function aggregatorToGrid(data, option) { const dataArray = data.dataArray; const { size = 10 } = option; diff --git a/src/theme/index.js b/src/theme/index.js index be722b9dcf..7b4cd3a988 100644 --- a/src/theme/index.js +++ b/src/theme/index.js @@ -1,6 +1,3 @@ import DarkTheme from './dark'; import LightTheme from './light'; -export { - DarkTheme, - LightTheme -}; +export { DarkTheme, LightTheme }; diff --git a/src/theme/light.js b/src/theme/light.js index 0736730011..80b1082e2d 100644 --- a/src/theme/light.js +++ b/src/theme/light.js @@ -1,6 +1,5 @@ +const LightTheme = { + mapStyle: 'amap://styles/a80c558f91b29cf56fa47f895fb1773c?isPublic=true' +}; - const LightTheme = { - mapStyle: 'amap://styles/a80c558f91b29cf56fa47f895fb1773c?isPublic=true' - }; - - export default LightTheme; +export default LightTheme; diff --git a/src/track.js b/src/track.js index 77295e480b..d3ebbec1ed 100644 --- a/src/track.js +++ b/src/track.js @@ -2,7 +2,7 @@ * @fileOverview track g2 * @author dxq613@gmail.com */ -const Global = require('./global'); +import Global from './global'; const SERVER_URL = 'https://kcart.alipay.com/web/bi.do'; // 延迟发送请求 diff --git a/src/util.js b/src/util.js index 5500da1ca4..77d8948ffc 100644 --- a/src/util.js +++ b/src/util.js @@ -3,7 +3,7 @@ * @author dxq613@gmail.com * @see https://github.com/lodash/lodash */ -const Utils = require('@antv/util'); +import Utils from '@antv/util'; const Util = Utils.mix({}, Utils, { assign: Utils.mix, // simple mix @@ -52,4 +52,4 @@ Util.Array = { remove: Utils.pull }; -module.exports = Util; +export default Util; diff --git a/src/util/ajax.js b/src/util/ajax.js index c95bd487c6..1fc5541fbe 100644 --- a/src/util/ajax.js +++ b/src/util/ajax.js @@ -6,7 +6,7 @@ class AJAXError extends Error { this.status = status; this.url = url; - // work around for https://github.com/Rich-Harris/buble/issues/40 + // work around for https://github.com/Rich-Harris/buble/issues/40 this.name = this.constructor.name; this.message = message; } @@ -88,8 +88,8 @@ function sameOrigin(url) { const transparentPngUrl = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAC0lEQVQYV2NgAAIAAAUAAarVyFEAAAAASUVORK5CYII='; export const getImage = function(requestParameters, callback) { - // request the image with XHR to work around caching issues - // see https://github.com/mapbox/mapbox-gl-js/issues/1470 + // request the image with XHR to work around caching issues + // see https://github.com/mapbox/mapbox-gl-js/issues/1470 return getArrayBuffer(requestParameters, (err, imgData) => { if (err) { callback(err); diff --git a/src/util/common.js b/src/util/common.js index 62987e0457..0308b370c0 100644 --- a/src/util/common.js +++ b/src/util/common.js @@ -2,7 +2,7 @@ const PRECISION = 0.00001; // 常量,据的精度,小于这个精度认为 const RADIAN = Math.PI / 180; const DEGREE = 180 / Math.PI; -module.exports = { +export default { isFunction: require('lodash/isFunction'), isObject: require('lodash/isObject'), isBoolean: require('lodash/isBoolean'), diff --git a/src/util/dom.js b/src/util/dom.js index 09650e3aeb..580496a676 100644 --- a/src/util/dom.js +++ b/src/util/dom.js @@ -1,4 +1,4 @@ -const Util = require('./common'); +import Util from './common'; const TABLE = document.createElement('table'); const TABLE_TR = document.createElement('tr'); @@ -13,7 +13,7 @@ const CONTAINERS = { '*': document.createElement('div') }; -module.exports = { +export default { getBoundingClientRect(node, defaultValue) { if (node && node.getBoundingClientRect) { const rect = node.getBoundingClientRect(); diff --git a/src/util/format.js b/src/util/format.js index ce19982452..0c60414b8b 100644 --- a/src/util/format.js +++ b/src/util/format.js @@ -1,4 +1,4 @@ -const Util = require('../util/index'); +import Util from '../util/index'; const regexTags = /[MLHVQTCSAZ]([^MLHVQTCSAZ]*)/ig; const regexDot = /[^\s\,]+/ig; @@ -138,13 +138,14 @@ function parsePattern(color, self) { } else { img.onload = onload; // Fix onload() bug in IE9 + // eslint-disable-next-line img.src = img.src; } return pattern; } -module.exports = { +export default { parsePath(path) { path = path || []; if (Util.isArray(path)) { diff --git a/src/util/index.js b/src/util/index.js index 2dde46b67e..5d3404b1b8 100644 --- a/src/util/index.js +++ b/src/util/index.js @@ -1,5 +1,5 @@ -const CommonUtil = require('./common'); -const DomUtil = require('./dom'); +import CommonUtil from './common'; +import DomUtil from './dom'; const Util = {}; @@ -22,4 +22,4 @@ CommonUtil.merge(Util, CommonUtil, DomUtil, { } }); -module.exports = Util; +export default Util; diff --git a/src/util/matrix.js b/src/util/matrix.js index b3a61af50a..2a40f581b8 100644 --- a/src/util/matrix.js +++ b/src/util/matrix.js @@ -1,7 +1,7 @@ -const CommonUtil = require('./common'); -const mat3 = require('gl-matrix/src/gl-matrix/mat3'); -const vec3 = require('gl-matrix/src/gl-matrix/vec3'); -const vec2 = require('gl-matrix/src/gl-matrix/vec2'); +import CommonUtil from './common'; +import mat3 from 'gl-matrix/src/gl-matrix/mat3'; +import vec3 from 'gl-matrix/src/gl-matrix/vec3'; +import vec2 from 'gl-matrix/src/gl-matrix/vec2'; vec2.angle = function(v1, v2) { const theta = vec2.dot(v1, v2) / (vec2.length(v1) * vec2.length(v2)); @@ -62,7 +62,7 @@ mat3.scale = function(out, a, v) { return mat3.multiply(out, scaleMat, a); }; -module.exports = { +export default { mat3, vec2, vec3, diff --git a/src/util/path.js b/src/util/path.js index df2a7a6581..0a1f3c2b83 100644 --- a/src/util/path.js +++ b/src/util/path.js @@ -1,4 +1,4 @@ -const Util = require('./common'); +import Util from './common'; const SPACES = '\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029'; const PATH_COMMAND = new RegExp('([a-z])[' + SPACES + ',]*((-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?[' + SPACES + ']*,?[' + SPACES + ']*)+)', 'ig'); const PATH_VALUES = new RegExp('(-?\\d*\\.?\\d*(?:e[\\-+]?\\d+)?)[' + SPACES + ']*,?[' + SPACES + ']*', 'ig'); @@ -954,7 +954,7 @@ const pathIntersection = function(path1, path2) { return interPathHelper(path1, path2); }; -module.exports = { +export default { parsePathString, parsePathArray, pathTocurve, diff --git a/src/worker/main.worker.js b/src/worker/main.worker.js index bdefe02116..1818813de2 100644 --- a/src/worker/main.worker.js +++ b/src/worker/main.worker.js @@ -1,5 +1,4 @@ - -self.addEventListener('message', e => { +this.addEventListener('message', e => { const res = e.data; // res = { // command : 'POLYGON-EXTRUDE', @@ -16,6 +15,8 @@ self.addEventListener('message', e => { break; } }); -self.addEventListener('error', function(e) { - console.error('filename:' + e.filename + '\nmessage:' + e.message + '\nline:' + e.lineno); +this.addEventListener('error', function(e) { + console.error( + 'filename:' + e.filename + '\nmessage:' + e.message + '\nline:' + e.lineno + ); }); diff --git a/test/unit/source/transfrom/hexagon.js b/test/unit/source/transfrom/hexagon.js index aad4edb018..8fd3ce4dc6 100644 --- a/test/unit/source/transfrom/hexagon.js +++ b/test/unit/source/transfrom/hexagon.js @@ -18,6 +18,5 @@ describe('hexagon Test', function() { }; const hexgonGrid = pointToHexbin(data, { size: 100, field: 'v', method: 'sum' }); expect(hexgonGrid.dataArray.length).eql(567); - console.log(hexgonGrid); }); }); diff --git a/webpack-dev.config.js b/webpack-dev.config.js index fcefcc98ed..5ed7514ad1 100755 --- a/webpack-dev.config.js +++ b/webpack-dev.config.js @@ -1,10 +1,14 @@ const webpackConfig = require('./webpack.config'); const _ = require('lodash'); -module.exports = _.merge({ - watch: true, - watchOptions: { - aggregateTimeout: 300, - poll: 1000 - } -}, webpackConfig); +module.exports = _.merge( + { + mode: 'development', + watch: true, + watchOptions: { + aggregateTimeout: 300, + poll: 1000 + } + }, + webpackConfig +);