Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import retrieve from '../../util/retrieve';
import glmatrix from 'claygl/src/dep/glmatrix';
import trianglesSortMixin from '../../util/geometry/trianglesSortMixin';
var vec3 = glmatrix.vec3;
function isPointsNaN(pt) {
return isNaN(pt[0]) || isNaN(pt[1]) || isNaN(pt[2]);
}
echarts.extendChartView({
type: 'surface',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
},
render: function (seriesModel, ecModel, api) {
// Swap surfaceMesh
var tmp = this._prevSurfaceMesh;
this._prevSurfaceMesh = this._surfaceMesh;
this._surfaceMesh = tmp;
import ForceAtlas2 from './ForceAtlas2';
import requestAnimationFrame from 'zrender/lib/animation/requestAnimationFrame';
import glmatrix from 'claygl/src/dep/glmatrix';
var vec2 = glmatrix.vec2;
import Roam2DControl from '../../util/Roam2DControl';
import PointsBuilder from '../common/PointsBuilder';
import lines2DGLSL from '../../util/shader/lines2D.glsl.js';
graphicGL.Shader.import(lines2DGLSL);
var globalLayoutId = 1;
echarts.extendChartView({
type: 'graphGL',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this.viewGL = new ViewGL('orthographic');
this.viewGL.camera.left = this.viewGL.camera.right = 0;
this.viewGL.add(this.groupGL);
this._pointsBuilder = new PointsBuilder(true, api);
// Mesh used during force directed layout.
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import retrieve from '../../util/retrieve';
import ViewGL from '../../core/ViewGL';
import VectorFieldParticleSurface from './VectorFieldParticleSurface';
// TODO 百度地图不是 linear 的
echarts.extendChartView({
type: 'flowGL',
__ecgl__: true,
init: function (ecModel, api) {
this.viewGL = new ViewGL('orthographic');
this.groupGL = new graphicGL.Node();
this.viewGL.add(this.groupGL);
this._particleSurface = new VectorFieldParticleSurface();
var planeMesh = new graphicGL.Mesh({
geometry: new graphicGL.PlaneGeometry(),
material: new graphicGL.Material({
shader: new graphicGL.Shader({
import echarts from 'echarts/lib/echarts';
import Geo3DBuilder from '../../component/common/Geo3DBuilder';
import graphicGL from '../../util/graphicGL';
echarts.extendChartView({
type: 'polygons3D',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this._geo3DBuilderList = [];
this._currentStep = 0;
},
render: function (seriesModel, ecModel, api) {
this.groupGL.removeAll();
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import retrieve from '../../util/retrieve';
import Lines3DGeometry from '../../util/geometry/Lines3D';
import Matrix4 from 'qtek/src/math/Matrix4';
import Vector3 from 'qtek/src/math/Vector3';
import lineContain from 'zrender/lib/contain/line';
import glmatrix from 'qtek/src/dep/glmatrix';
import lines3DGLSL from '../../util/shader/lines3D.glsl.js';
var vec3 = glmatrix.vec3;
graphicGL.Shader.import(lines3DGLSL);
export default echarts.extendChartView({
type: 'line3D',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this._api = api;
},
render: function (seriesModel, ecModel, api) {
var tmp = this._prevLine3DMesh;
this._prevLine3DMesh = this._line3DMesh;
this._line3DMesh = tmp;
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import OrbitControl from '../../util/OrbitControl';
import SceneHelper from '../../component/common/SceneHelper';
import Geo3DBuilder from '../../component/common/Geo3DBuilder';
export default echarts.extendChartView({
type: 'map3D',
__ecgl__: true,
init: function (ecModel, api) {
this._geo3DBuilder = new Geo3DBuilder(api);
this.groupGL = new graphicGL.Node();
},
render: function (map3DModel, ecModel, api) {
var coordSys = map3DModel.coordinateSystem;
if (!coordSys || !coordSys.viewGL) {
return;
import lines3DGLSL from '../../util/shader/lines3D.glsl.js';
graphicGL.Shader.import(lines3DGLSL);
function getCoordSysSize(coordSys) {
if (coordSys.radius != null) {
return coordSys.radius;
}
if (coordSys.size != null) {
return Math.max(coordSys.size[0], coordSys.size[1], coordSys.size[2]);
}
else {
return 100;
}
}
export default echarts.extendChartView({
type: 'lines3D',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this._meshLinesMaterial = new graphicGL.Material({
shader: graphicGL.createShader('ecgl.meshLines3D'),
transparent: true,
depthMask: false
});
this._linesMesh = new graphicGL.Mesh({
geometry: new LinesGeometry(),
material: this._meshLinesMaterial,
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import ViewGL from '../../core/ViewGL';
import Lines2DGeometry from '../../util/geometry/Lines2D';
import GLViewHelper from '../common/GLViewHelper';
import retrieve from '../../util/retrieve';
echarts.extendChartView({
type: 'linesGL',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this.viewGL = new ViewGL('orthographic');
this.viewGL.add(this.groupGL);
this._glViewHelper = new GLViewHelper(this.viewGL);
this._nativeLinesShader = graphicGL.createShader('ecgl.lines3D');
this._meshLinesShader = graphicGL.createShader('ecgl.meshLines3D');
this._linesMeshes = [];
import echarts from 'echarts/lib/echarts';
import graphicGL from '../../util/graphicGL';
import ViewGL from '../../core/ViewGL';
import PointsBuilder from '../common/PointsBuilder';
echarts.extendChartView({
type: 'scatterGL',
__ecgl__: true,
init: function (ecModel, api) {
this.groupGL = new graphicGL.Node();
this.viewGL = new ViewGL('orthographic');
this.viewGL.add(this.groupGL);
this._pointsBuilder = new PointsBuilder(true, api);
},
render: function (seriesModel, ecModel, api) {
var echarts = require('echarts/lib/echarts');
var numberUtil = echarts.number;
var symbolUtil = require('echarts/lib/util/symbol');
var parsePercent = numberUtil.parsePercent;
var LiquidLayout = require('./liquidFillLayout');
function getShallow(model, path) {
return model && model.getShallow(path);
}
echarts.extendChartView({
type: 'liquidFill',
render: function (seriesModel, ecModel, api) {
var group = this.group;
group.removeAll();
var data = seriesModel.getData();
var itemModel = data.getItemModel(0);
var center = itemModel.get('center');
var radius = itemModel.get('radius');
var width = api.getWidth();
var height = api.getHeight();