/
opt
/
canhelp
/
node_modules
/
leaflet
/
src
/
geometry
/
/opt/canhelp/node_modules/leaflet/src/geometry
mkdir
upload
Name
Size
Mode
Actions
Bounds.js
6197
0644
edit
dl
rm
index.js
306
0644
edit
dl
rm
LineUtil.js
8784
0644
edit
dl
rm
Point.js
6142
0644
edit
dl
rm
PolyUtil.js
4079
0644
edit
dl
rm
Transformation.js
2487
0644
edit
dl
rm
Edit:
/opt/canhelp/node_modules/leaflet/src/geometry/Transformation.js
(2487B)
import {Point} from './Point'; import * as Util from '../core/Util'; /* * @class Transformation * @aka L.Transformation * * Represents an affine transformation: a set of coefficients `a`, `b`, `c`, `d` * for transforming a point of a form `(x, y)` into `(a*x + b, c*y + d)` and doing * the reverse. Used by Leaflet in its projections code. * * @example * * ```js * var transformation = L.transformation(2, 5, -1, 10), * p = L.point(1, 2), * p2 = transformation.transform(p), // L.point(7, 8) * p3 = transformation.untransform(p2); // L.point(1, 2) * ``` */ // factory new L.Transformation(a: Number, b: Number, c: Number, d: Number) // Creates a `Transformation` object with the given coefficients. export function Transformation(a, b, c, d) { if (Util.isArray(a)) { // use array properties this._a = a[0]; this._b = a[1]; this._c = a[2]; this._d = a[3]; return; } this._a = a; this._b = b; this._c = c; this._d = d; } Transformation.prototype = { // @method transform(point: Point, scale?: Number): Point // Returns a transformed point, optionally multiplied by the given scale. // Only accepts actual `L.Point` instances, not arrays. transform: function (point, scale) { // (Point, Number) -> Point return this._transform(point.clone(), scale); }, // destructive transform (faster) _transform: function (point, scale) { scale = scale || 1; point.x = scale * (this._a * point.x + this._b); point.y = scale * (this._c * point.y + this._d); return point; }, // @method untransform(point: Point, scale?: Number): Point // Returns the reverse transformation of the given point, optionally divided // by the given scale. Only accepts actual `L.Point` instances, not arrays. untransform: function (point, scale) { scale = scale || 1; return new Point( (point.x / scale - this._b) / this._a, (point.y / scale - this._d) / this._c); } }; // factory L.transformation(a: Number, b: Number, c: Number, d: Number) // @factory L.transformation(a: Number, b: Number, c: Number, d: Number) // Instantiates a Transformation object with the given coefficients. // @alternative // @factory L.transformation(coefficients: Array): Transformation // Expects an coefficients array of the form // `[a: Number, b: Number, c: Number, d: Number]`. export function toTransformation(a, b, c, d) { return new Transformation(a, b, c, d); }
Save
cmd:
run