Socket
Socket
Sign inDemoInstall

@antv/g-camera-api

Package Overview
Dependencies
Maintainers
61
Versions
102
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@antv/g-camera-api - npm Package Compare versions

Comparing version 1.0.5 to 1.0.6

134

dist/index.esm.js
import { getAngle, CameraType, deg2rad, createVec3, GlobalContainer, CameraContribution, ParseEasingFunction, injectable, Camera } from '@antv/g-lite';
import { isString, isNumber } from '@antv/util';

@@ -40,136 +41,3 @@ function _inheritsLoose(subClass, superClass) {

/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
var toString = {}.toString;
var isType = function (value, type) { return toString.call(value) === '[object ' + type + ']'; };
/**
* 是否为函数
* @param {*} fn 对象
* @return {Boolean} 是否函数
*/
var isFunction = (function (value) {
return isType(value, 'Function');
});
var isArray = (function (value) {
return Array.isArray ?
Array.isArray(value) :
isType(value, 'Array');
});
var isObject = (function (value) {
/**
* isObject({}) => true
* isObject([1, 2, 3]) => true
* isObject(Function) => true
* isObject(null) => false
*/
var type = typeof value;
return value !== null && type === 'object' || type === 'function';
});
function each(elements, func) {
if (!elements) {
return;
}
var rst;
if (isArray(elements)) {
for (var i = 0, len = elements.length; i < len; i++) {
rst = func(elements[i], i);
if (rst === false) {
break;
}
}
}
else if (isObject(elements)) {
for (var k in elements) {
if (elements.hasOwnProperty(k)) {
rst = func(elements[k], k);
if (rst === false) {
break;
}
}
}
}
}
var isString = (function (str) {
return isType(str, 'String');
});
/**
* 判断是否数字
* @return {Boolean} 是否数字
*/
var isNumber = function (value) {
return isType(value, 'Number');
};
// @ts-ignore
var values = Object.values ? function (obj) { return Object.values(obj); } : function (obj) {
var result = [];
each(obj, function (value, key) {
if (!(isFunction(obj) && key === 'prototype')) {
result.push(value);
}
});
return result;
};
/**
* _.memoize(calColor);
* _.memoize(calColor, (...args) => args[0]);
* @param f
* @param resolver
*/
var memoize = (function (f, resolver) {
if (!isFunction(f)) {
throw new TypeError('Expected a function');
}
var memoized = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
// 使用方法构造 key,如果不存在 resolver,则直接取第一个参数作为 key
var key = resolver ? resolver.apply(this, args) : args[0];
var cache = memoized.cache;
if (cache.has(key)) {
return cache.get(key);
}
var result = f.apply(this, args);
// 缓存起来
cache.set(key, result);
return result;
};
memoized.cache = new Map();
return memoized;
});
var ctx;
/**
* 计算文本的宽度
*/
memoize(function (text, font) {
if (font === void 0) { font = {}; }
var fontSize = font.fontSize, fontFamily = font.fontFamily, fontWeight = font.fontWeight, fontStyle = font.fontStyle, fontVariant = font.fontVariant;
if (!ctx) {
ctx = document.createElement('canvas').getContext('2d');
}
ctx.font = [fontStyle, fontVariant, fontWeight, fontSize + "px", fontFamily].join(' ');
return ctx.measureText(isString(text) ? text : '').width;
}, function (text, font) {
if (font === void 0) { font = {}; }
return __spreadArrays([text], values(font)).join('');
});
/**
* Common utilities

@@ -176,0 +44,0 @@ * @module glMatrix

@@ -6,2 +6,3 @@ 'use strict';

var gLite = require('@antv/g-lite');
var util = require('@antv/util');

@@ -45,136 +46,3 @@ function _inheritsLoose(subClass, superClass) {

/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
var toString = {}.toString;
var isType = function (value, type) { return toString.call(value) === '[object ' + type + ']'; };
/**
* 是否为函数
* @param {*} fn 对象
* @return {Boolean} 是否函数
*/
var isFunction = (function (value) {
return isType(value, 'Function');
});
var isArray = (function (value) {
return Array.isArray ?
Array.isArray(value) :
isType(value, 'Array');
});
var isObject = (function (value) {
/**
* isObject({}) => true
* isObject([1, 2, 3]) => true
* isObject(Function) => true
* isObject(null) => false
*/
var type = typeof value;
return value !== null && type === 'object' || type === 'function';
});
function each(elements, func) {
if (!elements) {
return;
}
var rst;
if (isArray(elements)) {
for (var i = 0, len = elements.length; i < len; i++) {
rst = func(elements[i], i);
if (rst === false) {
break;
}
}
}
else if (isObject(elements)) {
for (var k in elements) {
if (elements.hasOwnProperty(k)) {
rst = func(elements[k], k);
if (rst === false) {
break;
}
}
}
}
}
var isString = (function (str) {
return isType(str, 'String');
});
/**
* 判断是否数字
* @return {Boolean} 是否数字
*/
var isNumber = function (value) {
return isType(value, 'Number');
};
// @ts-ignore
var values = Object.values ? function (obj) { return Object.values(obj); } : function (obj) {
var result = [];
each(obj, function (value, key) {
if (!(isFunction(obj) && key === 'prototype')) {
result.push(value);
}
});
return result;
};
/**
* _.memoize(calColor);
* _.memoize(calColor, (...args) => args[0]);
* @param f
* @param resolver
*/
var memoize = (function (f, resolver) {
if (!isFunction(f)) {
throw new TypeError('Expected a function');
}
var memoized = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
// 使用方法构造 key,如果不存在 resolver,则直接取第一个参数作为 key
var key = resolver ? resolver.apply(this, args) : args[0];
var cache = memoized.cache;
if (cache.has(key)) {
return cache.get(key);
}
var result = f.apply(this, args);
// 缓存起来
cache.set(key, result);
return result;
};
memoized.cache = new Map();
return memoized;
});
var ctx;
/**
* 计算文本的宽度
*/
memoize(function (text, font) {
if (font === void 0) { font = {}; }
var fontSize = font.fontSize, fontFamily = font.fontFamily, fontWeight = font.fontWeight, fontStyle = font.fontStyle, fontVariant = font.fontVariant;
if (!ctx) {
ctx = document.createElement('canvas').getContext('2d');
}
ctx.font = [fontStyle, fontVariant, fontWeight, fontSize + "px", fontFamily].join(' ');
return ctx.measureText(isString(text) ? text : '').width;
}, function (text, font) {
if (font === void 0) { font = {}; }
return __spreadArrays([text], values(font)).join('');
});
/**
* Common utilities

@@ -1253,3 +1121,3 @@ * @module glMatrix

var landmark = isString(name) ? this.landmarks.find(function (l) {
var landmark = util.isString(name) ? this.landmarks.find(function (l) {
return l.name === name;

@@ -1259,3 +1127,3 @@ }) : name;

if (landmark) {
var _ref = isNumber(options) ? {
var _ref = util.isNumber(options) ? {
duration: options

@@ -1262,0 +1130,0 @@ } : options,

@@ -44,136 +44,3 @@ (function (global, factory) {

/** @deprecated */
function __spreadArrays() {
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
for (var r = Array(s), k = 0, i = 0; i < il; i++)
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
r[k] = a[j];
return r;
}
var toString = {}.toString;
var isType = function (value, type) { return toString.call(value) === '[object ' + type + ']'; };
/**
* 是否为函数
* @param {*} fn 对象
* @return {Boolean} 是否函数
*/
var isFunction = (function (value) {
return isType(value, 'Function');
});
var isArray = (function (value) {
return Array.isArray ?
Array.isArray(value) :
isType(value, 'Array');
});
var isObject = (function (value) {
/**
* isObject({}) => true
* isObject([1, 2, 3]) => true
* isObject(Function) => true
* isObject(null) => false
*/
var type = typeof value;
return value !== null && type === 'object' || type === 'function';
});
function each(elements, func) {
if (!elements) {
return;
}
var rst;
if (isArray(elements)) {
for (var i = 0, len = elements.length; i < len; i++) {
rst = func(elements[i], i);
if (rst === false) {
break;
}
}
}
else if (isObject(elements)) {
for (var k in elements) {
if (elements.hasOwnProperty(k)) {
rst = func(elements[k], k);
if (rst === false) {
break;
}
}
}
}
}
var isString = (function (str) {
return isType(str, 'String');
});
/**
* 判断是否数字
* @return {Boolean} 是否数字
*/
var isNumber = function (value) {
return isType(value, 'Number');
};
// @ts-ignore
var values = Object.values ? function (obj) { return Object.values(obj); } : function (obj) {
var result = [];
each(obj, function (value, key) {
if (!(isFunction(obj) && key === 'prototype')) {
result.push(value);
}
});
return result;
};
/**
* _.memoize(calColor);
* _.memoize(calColor, (...args) => args[0]);
* @param f
* @param resolver
*/
var memoize = (function (f, resolver) {
if (!isFunction(f)) {
throw new TypeError('Expected a function');
}
var memoized = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
// 使用方法构造 key,如果不存在 resolver,则直接取第一个参数作为 key
var key = resolver ? resolver.apply(this, args) : args[0];
var cache = memoized.cache;
if (cache.has(key)) {
return cache.get(key);
}
var result = f.apply(this, args);
// 缓存起来
cache.set(key, result);
return result;
};
memoized.cache = new Map();
return memoized;
});
var ctx;
/**
* 计算文本的宽度
*/
memoize(function (text, font) {
if (font === void 0) { font = {}; }
var fontSize = font.fontSize, fontFamily = font.fontFamily, fontWeight = font.fontWeight, fontStyle = font.fontStyle, fontVariant = font.fontVariant;
if (!ctx) {
ctx = document.createElement('canvas').getContext('2d');
}
ctx.font = [fontStyle, fontVariant, fontWeight, fontSize + "px", fontFamily].join(' ');
return ctx.measureText(isString(text) ? text : '').width;
}, function (text, font) {
if (font === void 0) { font = {}; }
return __spreadArrays([text], values(font)).join('');
});
/**
* Common utilities

@@ -1092,3 +959,18 @@ * @module glMatrix

var toString = {}.toString;
var isType = function (value, type) { return toString.call(value) === '[object ' + type + ']'; };
var isString = (function (str) {
return isType(str, 'String');
});
/**
* 判断是否数字
* @return {Boolean} 是否数字
*/
var isNumber = function (value) {
return isType(value, 'Number');
};
/**
* Provides camera action & animation.

@@ -1095,0 +977,0 @@ */

2

dist/index.umd.min.js

@@ -1,1 +0,1 @@

!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports,require("@antv/g-lite")):"function"==typeof define&&define.amd?define(["exports","@antv/g-lite"],i):i(((t="undefined"!=typeof globalThis?globalThis:t||self).G=t.G||{},t.G.CameraAPI={}),t.window.G)}(this,(function(t,i){"use strict";function e(t,i){return e=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,i){return t.__proto__=i,t},e(t,i)}var n={}.toString,r=function(t,i){return n.call(t)==="[object "+i+"]"},o=function(t){return r(t,"Function")};function a(t,i){var e;if(t)if(e=t,Array.isArray?Array.isArray(e):r(e,"Array"))for(var n=0,o=t.length;o>n&&!1!==i(t[n],n);n++);else if(function(t){var i=typeof t;return null!==t&&"object"===i||"function"===i}(t))for(var a in t)if(t.hasOwnProperty(a)&&!1===i(t[a],a))break}var s,l=function(t){return r(t,"String")},h=Object.values?function(t){return Object.values(t)}:function(t){var i=[];return a(t,(function(e,n){o(t)&&"prototype"===n||i.push(e)})),i};!function(t,i){if(!o(t))throw new TypeError("Expected a function");var e=function(){for(var n=[],r=0;arguments.length>r;r++)n[r]=arguments[r];var o=i?i.apply(this,n):n[0],a=e.cache;if(a.has(o))return a.get(o);var s=t.apply(this,n);return a.set(o,s),s};e.cache=new Map}((function(t,i){void 0===i&&(i={});var e=i.fontSize,n=i.fontFamily,r=i.fontWeight,o=i.fontStyle,a=i.fontVariant;return s||(s=document.createElement("canvas").getContext("2d")),s.font=[o,a,r,e+"px",n].join(" "),s.measureText(l(t)?t:"").width}),(function(t,i){return void 0===i&&(i={}),function(){for(var t=0,i=0,e=arguments.length;e>i;i++)t+=arguments[i].length;var n=Array(t),r=0;for(i=0;e>i;i++)for(var o=arguments[i],a=0,s=o.length;s>a;a++,r++)n[r]=o[a];return n}([t],h(i)).join("")}));var c="undefined"!=typeof Float32Array?Float32Array:Array;function u(t){var i=new c(16);return i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3],i[4]=t[4],i[5]=t[5],i[6]=t[6],i[7]=t[7],i[8]=t[8],i[9]=t[9],i[10]=t[10],i[11]=t[11],i[12]=t[12],i[13]=t[13],i[14]=t[14],i[15]=t[15],i}function f(t,i,e){var n,r,o,a,s,l,h,c,u,f,d,v,p=e[0],m=e[1],g=e[2];return i===t?(t[12]=i[0]*p+i[4]*m+i[8]*g+i[12],t[13]=i[1]*p+i[5]*m+i[9]*g+i[13],t[14]=i[2]*p+i[6]*m+i[10]*g+i[14],t[15]=i[3]*p+i[7]*m+i[11]*g+i[15]):(r=i[1],o=i[2],a=i[3],s=i[4],l=i[5],h=i[6],c=i[7],u=i[8],f=i[9],d=i[10],v=i[11],t[0]=n=i[0],t[1]=r,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t[6]=h,t[7]=c,t[8]=u,t[9]=f,t[10]=d,t[11]=v,t[12]=n*p+s*m+u*g+i[12],t[13]=r*p+l*m+f*g+i[13],t[14]=o*p+h*m+d*g+i[14],t[15]=a*p+c*m+v*g+i[15]),t}function d(){var t=new c(3);return c!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function v(t){var i=new c(3);return i[0]=t[0],i[1]=t[1],i[2]=t[2],i}function p(t,i,e){var n=new c(3);return n[0]=t,n[1]=i,n[2]=e,n}function m(t,i){return t[0]=i[0],t[1]=i[1],t[2]=i[2],t}function g(t,i,e){return t[0]=i[0]+e[0],t[1]=i[1]+e[1],t[2]=i[2]+e[2],t}function y(t,i,e){return t[0]=i[0]*e,t[1]=i[1]*e,t[2]=i[2]*e,t}function A(t,i,e){var n=i[0],r=i[1],o=i[2],a=e[0],s=e[1],l=e[2];return t[0]=r*l-o*s,t[1]=o*a-n*l,t[2]=n*s-r*a,t}function P(t,i,e,n){var r=i[0],o=i[1],a=i[2];return t[0]=r+n*(e[0]-r),t[1]=o+n*(e[1]-o),t[2]=a+n*(e[2]-a),t}Math.hypot||(Math.hypot=function(){for(var t=0,i=arguments.length;i--;)t+=arguments[i]*arguments[i];return Math.sqrt(t)});var b,w=function(t,i){return Math.hypot(i[0]-t[0],i[1]-t[1],i[2]-t[2])},x=function(t){return Math.hypot(t[0],t[1],t[2])};b=d();!function(){var t,i=(t=new c(4),c!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t)}();function C(){var t=new c(4);return c!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function F(t,i,e){e*=.5;var n=Math.sin(e);return t[0]=n*i[0],t[1]=n*i[1],t[2]=n*i[2],t[3]=Math.cos(e),t}function R(t,i,e){var n=i[0],r=i[1],o=i[2],a=i[3],s=e[0],l=e[1],h=e[2],c=e[3];return t[0]=n*c+a*s+r*h-o*l,t[1]=r*c+a*l+o*s-n*h,t[2]=o*c+a*h+n*l-r*s,t[3]=a*c-n*s-r*l-o*h,t}function z(t,i,e,n){var r,o,a,s,l,h=i[0],c=i[1],u=i[2],f=i[3],d=e[0],v=e[1],p=e[2],m=e[3];return 0>(o=h*d+c*v+u*p+f*m)&&(o=-o,d=-d,v=-v,p=-p,m=-m),1-o>1e-6?(r=Math.acos(o),a=Math.sin(r),s=Math.sin((1-n)*r)/a,l=Math.sin(n*r)/a):(s=1-n,l=n),t[0]=s*h+l*d,t[1]=s*c+l*v,t[2]=s*u+l*p,t[3]=s*f+l*m,t}var M,O,T,j,E,G,I,k=function(t,i){var e=i[0],n=i[1],r=i[2],o=i[3],a=e*e+n*n+r*r+o*o;return a>0&&(a=1/Math.sqrt(a)),t[0]=e*a,t[1]=n*a,t[2]=r*a,t[3]=o*a,t};M=d(),O=p(1,0,0),T=p(0,1,0),j=C(),E=C(),G=new c(9),c!=Float32Array&&(G[1]=0,G[2]=0,G[3]=0,G[5]=0,G[6]=0,G[7]=0),G[0]=1,G[4]=1,G[8]=1,I=G;t.AdvancedCamera=function(t){var n,o;function a(){for(var i,e=arguments.length,n=new Array(e),r=0;e>r;r++)n[r]=arguments[r];return(i=t.call.apply(t,[this].concat(n))||this).landmarks=[],i.landmarkAnimationID=void 0,i}o=t,(n=a).prototype=Object.create(o.prototype),n.prototype.constructor=n,e(n,o);var s=a.prototype;return s.rotate=function(t,e,n){if(this.relElevation=i.getAngle(e),this.relAzimuth=i.getAngle(t),this.relRoll=i.getAngle(n),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===i.CameraType.EXPLORING){var r=F(C(),[1,0,0],i.deg2rad((this.rotateWorld?1:-1)*this.relElevation)),o=F(C(),[0,1,0],i.deg2rad((this.rotateWorld?1:-1)*this.relAzimuth)),a=F(C(),[0,0,1],i.deg2rad(this.relRoll)),s=R(C(),o,r);s=R(C(),s,a);var l=function(t,i){var e=i[0],n=i[1],r=i[2],o=i[3],a=e+e,s=n+n,l=r+r,h=e*a,c=n*a,u=n*s,f=r*a,d=r*s,v=r*l,p=o*a,m=o*s,g=o*l;return t[0]=1-u-v,t[1]=c+g,t[2]=f-m,t[3]=0,t[4]=c-g,t[5]=1-h-v,t[6]=d+p,t[7]=0,t[8]=f+m,t[9]=d-p,t[10]=1-h-u,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}(function(){var t=new c(16);return c!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}(),s);f(this.matrix,this.matrix,[0,0,-this.distance]),function(t,i,e){var n=i[0],r=i[1],o=i[2],a=i[3],s=i[4],l=i[5],h=i[6],c=i[7],u=i[8],f=i[9],d=i[10],v=i[11],p=i[12],m=i[13],g=i[14],y=i[15],A=e[0],P=e[1],b=e[2],w=e[3];t[0]=A*n+P*s+b*u+w*p,t[1]=A*r+P*l+b*f+w*m,t[2]=A*o+P*h+b*d+w*g,t[3]=A*a+P*c+b*v+w*y,t[4]=(A=e[4])*n+(P=e[5])*s+(b=e[6])*u+(w=e[7])*p,t[5]=A*r+P*l+b*f+w*m,t[6]=A*o+P*h+b*d+w*g,t[7]=A*a+P*c+b*v+w*y,t[8]=(A=e[8])*n+(P=e[9])*s+(b=e[10])*u+(w=e[11])*p,t[9]=A*r+P*l+b*f+w*m,t[10]=A*o+P*h+b*d+w*g,t[11]=A*a+P*c+b*v+w*y,t[12]=(A=e[12])*n+(P=e[13])*s+(b=e[14])*u+(w=e[15])*p,t[13]=A*r+P*l+b*f+w*m,t[14]=A*o+P*h+b*d+w*g,t[15]=A*a+P*c+b*v+w*y}(this.matrix,this.matrix,l),f(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===i.CameraType.ORBITING||this.type===i.CameraType.EXPLORING?this._getPosition():this.type===i.CameraType.TRACKING&&this._getFocalPoint(),this._update(),this},s.pan=function(t,e){var n=i.createVec3(t,e,0),r=v(this.position);return g(r,r,y(d(),this.right,n[0])),g(r,r,y(d(),this.up,n[1])),this._setPosition(r),this.triggerUpdate(),this},s.dolly=function(t){var e,n=this.forward,r=v(this.position);return e=Math.max(Math.min(this.distance+t*this.dollyingStep,this.maxDistance),this.minDistance)-this.distance,r[0]+=e*n[0],r[1]+=e*n[1],r[2]+=e*n[2],this._setPosition(r),this.type===i.CameraType.ORBITING||this.type===i.CameraType.EXPLORING?this._getDistance():this.type===i.CameraType.TRACKING&&g(this.focalPoint,r,this.distanceVector),this.triggerUpdate(),this},s.createLandmark=function(t,e){void 0===e&&(e={});var n=e.position,r=void 0===n?this.position:n,o=e.focalPoint,a=void 0===o?this.focalPoint:o,s=e.roll,l=e.zoom,h=i.GlobalContainer.get(i.CameraContribution);h.setType(this.type,void 0),h.setPosition(r[0],r[1]||this.position[1],r[2]||this.position[2]),h.setFocalPoint(a[0],a[1]||this.focalPoint[1],a[2]||this.focalPoint[2]),h.setRoll(s||this.roll),h.setZoom(l||this.zoom);var c={name:t,matrix:u(h.getWorldTransform()),right:v(h.right),up:v(h.up),forward:v(h.forward),position:v(h.getPosition()),focalPoint:v(h.getFocalPoint()),distanceVector:v(h.getDistanceVector()),distance:h.getDistance(),dollyingStep:h.getDollyingStep(),azimuth:h.getAzimuth(),elevation:h.getElevation(),roll:h.getRoll(),relAzimuth:h.relAzimuth,relElevation:h.relElevation,relRoll:h.relRoll,zoom:h.getZoom()};return this.landmarks.push(c),c},s.gotoLandmark=function(t,e){var n=this;void 0===e&&(e={});var o=l(t)?this.landmarks.find((function(i){return i.name===t})):t;if(o){var a=r(e,"Number")?{duration:e}:e,s=a.easing,h=void 0===s?"linear":s,c=a.duration,u=void 0===c?100:c,f=a.easingFunction,v=void 0===f?void 0:f,p=a.onfinish,m=void 0===p?void 0:p;if(0===u)return this.syncFromLandmark(o),void(m&&m());void 0!==this.landmarkAnimationID&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID);var g,y=o.position,A=o.focalPoint,b=o.zoom,x=o.roll,C=v||i.GlobalContainer.get(i.ParseEasingFunction)(h),F=function(){n.setFocalPoint(A),n.setPosition(y),n.setRoll(x),n.setZoom(b),n.computeMatrix(),n.triggerUpdate(),m&&m()};this.canvas.requestAnimationFrame((function t(i){void 0===g&&(g=i);var e=i-g;if(u<e)F();else{var r,o,a=C(e/u),s=d(),l=d();P(s,n.focalPoint,A,a),P(l,n.position,y,a),o=n.roll*(1-a)+x*a,r=n.zoom*(1-a)+b*a,n.setFocalPoint(s),n.setPosition(l),n.setRoll(o),n.setZoom(r),w(s,A)+w(l,y)>.01?(n.computeMatrix(),n.triggerUpdate(),u>e&&(n.landmarkAnimationID=n.canvas.requestAnimationFrame(t))):F()}}))}},s.syncFromLandmark=function(t){this.matrix=function(t,i){return t[0]=i[0],t[1]=i[1],t[2]=i[2],t[3]=i[3],t[4]=i[4],t[5]=i[5],t[6]=i[6],t[7]=i[7],t[8]=i[8],t[9]=i[9],t[10]=i[10],t[11]=i[11],t[12]=i[12],t[13]=i[13],t[14]=i[14],t[15]=i[15],t}(this.matrix,t.matrix),this.right=m(this.right,t.right),this.up=m(this.up,t.up),this.forward=m(this.forward,t.forward),this.position=m(this.position,t.position),this.focalPoint=m(this.focalPoint,t.focalPoint),this.distanceVector=m(this.distanceVector,t.distanceVector),this.azimuth=t.azimuth,this.elevation=t.elevation,this.roll=t.roll,this.relAzimuth=t.relAzimuth,this.relElevation=t.relElevation,this.relRoll=t.relRoll,this.dollyingStep=t.dollyingStep,this.distance=t.distance,this.zoom=t.zoom},a}(i.Camera),t.AdvancedCamera=function(t,i,e,n){var r,o=arguments.length,a=3>o?i:null===n?n=Object.getOwnPropertyDescriptor(i,e):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,i,e,n);else for(var s=t.length-1;s>=0;s--)(r=t[s])&&(a=(3>o?r(a):o>3?r(i,e,a):r(i,e))||a);return o>3&&a&&Object.defineProperty(i,e,a),a}([i.injectable({token:i.CameraContribution})],t.AdvancedCamera),i.GlobalContainer.register(t.AdvancedCamera),Object.defineProperty(t,"__esModule",{value:!0})}));
!function(t,i){"object"==typeof exports&&"undefined"!=typeof module?i(exports,require("@antv/g-lite")):"function"==typeof define&&define.amd?define(["exports","@antv/g-lite"],i):i(((t="undefined"!=typeof globalThis?globalThis:t||self).G=t.G||{},t.G.CameraAPI={}),t.window.G)}(this,(function(t,i){"use strict";function e(t,i){return e=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,i){return t.__proto__=i,t},e(t,i)}var n="undefined"!=typeof Float32Array?Float32Array:Array;function o(t){var i=new n(16);return i[0]=t[0],i[1]=t[1],i[2]=t[2],i[3]=t[3],i[4]=t[4],i[5]=t[5],i[6]=t[6],i[7]=t[7],i[8]=t[8],i[9]=t[9],i[10]=t[10],i[11]=t[11],i[12]=t[12],i[13]=t[13],i[14]=t[14],i[15]=t[15],i}function r(t,i,e){var n,o,r,a,s,l,h,c,u,d,f,m,p=e[0],v=e[1],g=e[2];return i===t?(t[12]=i[0]*p+i[4]*v+i[8]*g+i[12],t[13]=i[1]*p+i[5]*v+i[9]*g+i[13],t[14]=i[2]*p+i[6]*v+i[10]*g+i[14],t[15]=i[3]*p+i[7]*v+i[11]*g+i[15]):(o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],h=i[6],c=i[7],u=i[8],d=i[9],f=i[10],m=i[11],t[0]=n=i[0],t[1]=o,t[2]=r,t[3]=a,t[4]=s,t[5]=l,t[6]=h,t[7]=c,t[8]=u,t[9]=d,t[10]=f,t[11]=m,t[12]=n*p+s*v+u*g+i[12],t[13]=o*p+l*v+d*g+i[13],t[14]=r*p+h*v+f*g+i[14],t[15]=a*p+c*v+m*g+i[15]),t}function a(){var t=new n(3);return n!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function s(t){var i=new n(3);return i[0]=t[0],i[1]=t[1],i[2]=t[2],i}function l(t,i,e){var o=new n(3);return o[0]=t,o[1]=i,o[2]=e,o}function h(t,i){return t[0]=i[0],t[1]=i[1],t[2]=i[2],t}function c(t,i,e){return t[0]=i[0]+e[0],t[1]=i[1]+e[1],t[2]=i[2]+e[2],t}function u(t,i,e){return t[0]=i[0]*e,t[1]=i[1]*e,t[2]=i[2]*e,t}function d(t,i,e){var n=i[0],o=i[1],r=i[2],a=e[0],s=e[1],l=e[2];return t[0]=o*l-r*s,t[1]=r*a-n*l,t[2]=n*s-o*a,t}function f(t,i,e,n){var o=i[0],r=i[1],a=i[2];return t[0]=o+n*(e[0]-o),t[1]=r+n*(e[1]-r),t[2]=a+n*(e[2]-a),t}Math.hypot||(Math.hypot=function(){for(var t=0,i=arguments.length;i--;)t+=arguments[i]*arguments[i];return Math.sqrt(t)});var m,p=function(t,i){return Math.hypot(i[0]-t[0],i[1]-t[1],i[2]-t[2])},v=function(t){return Math.hypot(t[0],t[1],t[2])};m=a();!function(){var t,i=(t=new n(4),n!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t)}();function g(){var t=new n(4);return n!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function y(t,i,e){e*=.5;var n=Math.sin(e);return t[0]=n*i[0],t[1]=n*i[1],t[2]=n*i[2],t[3]=Math.cos(e),t}function A(t,i,e){var n=i[0],o=i[1],r=i[2],a=i[3],s=e[0],l=e[1],h=e[2],c=e[3];return t[0]=n*c+a*s+o*h-r*l,t[1]=o*c+a*l+r*s-n*h,t[2]=r*c+a*h+n*l-o*s,t[3]=a*c-n*s-o*l-r*h,t}function P(t,i,e,n){var o,r,a,s,l,h=i[0],c=i[1],u=i[2],d=i[3],f=e[0],m=e[1],p=e[2],v=e[3];return 0>(r=h*f+c*m+u*p+d*v)&&(r=-r,f=-f,m=-m,p=-p,v=-v),1-r>1e-6?(o=Math.acos(r),a=Math.sin(o),s=Math.sin((1-n)*o)/a,l=Math.sin(n*o)/a):(s=1-n,l=n),t[0]=s*h+l*f,t[1]=s*c+l*m,t[2]=s*u+l*p,t[3]=s*d+l*v,t}var C,R,b,x,z,F,M,w=function(t,i){var e=i[0],n=i[1],o=i[2],r=i[3],a=e*e+n*n+o*o+r*r;return a>0&&(a=1/Math.sqrt(a)),t[0]=e*a,t[1]=n*a,t[2]=o*a,t[3]=r*a,t},T=(C=a(),R=l(1,0,0),b=l(0,1,0),x=g(),z=g(),F=new n(9),n!=Float32Array&&(F[1]=0,F[2]=0,F[3]=0,F[5]=0,F[6]=0,F[7]=0),F[0]=1,F[4]=1,F[8]=1,M=F,{}.toString),G=function(t,i){return T.call(t)==="[object "+i+"]"};t.AdvancedCamera=function(t){var l,d;function m(){for(var i,e=arguments.length,n=new Array(e),o=0;e>o;o++)n[o]=arguments[o];return(i=t.call.apply(t,[this].concat(n))||this).landmarks=[],i.landmarkAnimationID=void 0,i}d=t,(l=m).prototype=Object.create(d.prototype),l.prototype.constructor=l,e(l,d);var v=m.prototype;return v.rotate=function(t,e,o){if(this.relElevation=i.getAngle(e),this.relAzimuth=i.getAngle(t),this.relRoll=i.getAngle(o),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===i.CameraType.EXPLORING){var a=y(g(),[1,0,0],i.deg2rad((this.rotateWorld?1:-1)*this.relElevation)),s=y(g(),[0,1,0],i.deg2rad((this.rotateWorld?1:-1)*this.relAzimuth)),l=y(g(),[0,0,1],i.deg2rad(this.relRoll)),h=A(g(),s,a);h=A(g(),h,l);var c=function(t,i){var e=i[0],n=i[1],o=i[2],r=i[3],a=e+e,s=n+n,l=o+o,h=e*a,c=n*a,u=n*s,d=o*a,f=o*s,m=o*l,p=r*a,v=r*s,g=r*l;return t[0]=1-u-m,t[1]=c+g,t[2]=d-v,t[3]=0,t[4]=c-g,t[5]=1-h-m,t[6]=f+p,t[7]=0,t[8]=d+v,t[9]=f-p,t[10]=1-h-u,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}(function(){var t=new n(16);return n!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t}(),h);r(this.matrix,this.matrix,[0,0,-this.distance]),function(t,i,e){var n=i[0],o=i[1],r=i[2],a=i[3],s=i[4],l=i[5],h=i[6],c=i[7],u=i[8],d=i[9],f=i[10],m=i[11],p=i[12],v=i[13],g=i[14],y=i[15],A=e[0],P=e[1],C=e[2],R=e[3];t[0]=A*n+P*s+C*u+R*p,t[1]=A*o+P*l+C*d+R*v,t[2]=A*r+P*h+C*f+R*g,t[3]=A*a+P*c+C*m+R*y,t[4]=(A=e[4])*n+(P=e[5])*s+(C=e[6])*u+(R=e[7])*p,t[5]=A*o+P*l+C*d+R*v,t[6]=A*r+P*h+C*f+R*g,t[7]=A*a+P*c+C*m+R*y,t[8]=(A=e[8])*n+(P=e[9])*s+(C=e[10])*u+(R=e[11])*p,t[9]=A*o+P*l+C*d+R*v,t[10]=A*r+P*h+C*f+R*g,t[11]=A*a+P*c+C*m+R*y,t[12]=(A=e[12])*n+(P=e[13])*s+(C=e[14])*u+(R=e[15])*p,t[13]=A*o+P*l+C*d+R*v,t[14]=A*r+P*h+C*f+R*g,t[15]=A*a+P*c+C*m+R*y}(this.matrix,this.matrix,c),r(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===i.CameraType.ORBITING||this.type===i.CameraType.EXPLORING?this._getPosition():this.type===i.CameraType.TRACKING&&this._getFocalPoint(),this._update(),this},v.pan=function(t,e){var n=i.createVec3(t,e,0),o=s(this.position);return c(o,o,u(a(),this.right,n[0])),c(o,o,u(a(),this.up,n[1])),this._setPosition(o),this.triggerUpdate(),this},v.dolly=function(t){var e,n=this.forward,o=s(this.position);return e=Math.max(Math.min(this.distance+t*this.dollyingStep,this.maxDistance),this.minDistance)-this.distance,o[0]+=e*n[0],o[1]+=e*n[1],o[2]+=e*n[2],this._setPosition(o),this.type===i.CameraType.ORBITING||this.type===i.CameraType.EXPLORING?this._getDistance():this.type===i.CameraType.TRACKING&&c(this.focalPoint,o,this.distanceVector),this.triggerUpdate(),this},v.createLandmark=function(t,e){void 0===e&&(e={});var n=e.position,r=void 0===n?this.position:n,a=e.focalPoint,l=void 0===a?this.focalPoint:a,h=e.roll,c=e.zoom,u=i.GlobalContainer.get(i.CameraContribution);u.setType(this.type,void 0),u.setPosition(r[0],r[1]||this.position[1],r[2]||this.position[2]),u.setFocalPoint(l[0],l[1]||this.focalPoint[1],l[2]||this.focalPoint[2]),u.setRoll(h||this.roll),u.setZoom(c||this.zoom);var d={name:t,matrix:o(u.getWorldTransform()),right:s(u.right),up:s(u.up),forward:s(u.forward),position:s(u.getPosition()),focalPoint:s(u.getFocalPoint()),distanceVector:s(u.getDistanceVector()),distance:u.getDistance(),dollyingStep:u.getDollyingStep(),azimuth:u.getAzimuth(),elevation:u.getElevation(),roll:u.getRoll(),relAzimuth:u.relAzimuth,relElevation:u.relElevation,relRoll:u.relRoll,zoom:u.getZoom()};return this.landmarks.push(d),d},v.gotoLandmark=function(t,e){var n=this;void 0===e&&(e={});var o=G(t,"String")?this.landmarks.find((function(i){return i.name===t})):t;if(o){var r=G(e,"Number")?{duration:e}:e,s=r.easing,l=void 0===s?"linear":s,h=r.duration,c=void 0===h?100:h,u=r.easingFunction,d=void 0===u?void 0:u,m=r.onfinish,v=void 0===m?void 0:m;if(0===c)return this.syncFromLandmark(o),void(v&&v());void 0!==this.landmarkAnimationID&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID);var g,y=o.position,A=o.focalPoint,P=o.zoom,C=o.roll,R=d||i.GlobalContainer.get(i.ParseEasingFunction)(l),b=function(){n.setFocalPoint(A),n.setPosition(y),n.setRoll(C),n.setZoom(P),n.computeMatrix(),n.triggerUpdate(),v&&v()};this.canvas.requestAnimationFrame((function t(i){void 0===g&&(g=i);var e=i-g;if(c<e)b();else{var o,r,s=R(e/c),l=a(),h=a();f(l,n.focalPoint,A,s),f(h,n.position,y,s),r=n.roll*(1-s)+C*s,o=n.zoom*(1-s)+P*s,n.setFocalPoint(l),n.setPosition(h),n.setRoll(r),n.setZoom(o),p(l,A)+p(h,y)>.01?(n.computeMatrix(),n.triggerUpdate(),c>e&&(n.landmarkAnimationID=n.canvas.requestAnimationFrame(t))):b()}}))}},v.syncFromLandmark=function(t){this.matrix=function(t,i){return t[0]=i[0],t[1]=i[1],t[2]=i[2],t[3]=i[3],t[4]=i[4],t[5]=i[5],t[6]=i[6],t[7]=i[7],t[8]=i[8],t[9]=i[9],t[10]=i[10],t[11]=i[11],t[12]=i[12],t[13]=i[13],t[14]=i[14],t[15]=i[15],t}(this.matrix,t.matrix),this.right=h(this.right,t.right),this.up=h(this.up,t.up),this.forward=h(this.forward,t.forward),this.position=h(this.position,t.position),this.focalPoint=h(this.focalPoint,t.focalPoint),this.distanceVector=h(this.distanceVector,t.distanceVector),this.azimuth=t.azimuth,this.elevation=t.elevation,this.roll=t.roll,this.relAzimuth=t.relAzimuth,this.relElevation=t.relElevation,this.relRoll=t.relRoll,this.dollyingStep=t.dollyingStep,this.distance=t.distance,this.zoom=t.zoom},m}(i.Camera),t.AdvancedCamera=function(t,i,e,n){var o,r=arguments.length,a=3>r?i:null===n?n=Object.getOwnPropertyDescriptor(i,e):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,i,e,n);else for(var s=t.length-1;s>=0;s--)(o=t[s])&&(a=(3>r?o(a):r>3?o(i,e,a):o(i,e))||a);return r>3&&a&&Object.defineProperty(i,e,a),a}([i.injectable({token:i.CameraContribution})],t.AdvancedCamera),i.GlobalContainer.register(t.AdvancedCamera),Object.defineProperty(t,"__esModule",{value:!0})}));
{
"name": "@antv/g-camera-api",
"version": "1.0.5",
"version": "1.0.6",
"description": "A simple implementation of Camera API.",

@@ -31,2 +31,5 @@ "keywords": [

],
"dependencies": {
"@antv/util": "^3.2.4"
},
"peerDependencies": {

@@ -38,3 +41,3 @@ "@antv/g-lite": "^1.0.0"

},
"gitHead": "a639abae3bcb29ab1eae75d6001447fe4eaa6f77"
"gitHead": "b9d42d3b3b4bef20ce3bee3c953d2be7999d7f1e"
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc