Sha256: 4552b3d028836f404995ec66e6518c5092885e3bf0d299b438a10a72217319ef
Contents?: true
Size: 876 Bytes
Versions: 3
Compression:
Stored size: 876 Bytes
Contents
/* * L.Transformation is an utility class to perform simple point transformations through a 2d-matrix. */ L.Transformation = L.Class.extend({ initialize: function (/*Number*/ a, /*Number*/ b, /*Number*/ c, /*Number*/ d) { this._a = a; this._b = b; this._c = c; this._d = d; }, transform: function (point, scale) { return this._transform(point.clone(), scale); }, // destructive transform (faster) _transform: function (/*Point*/ point, /*Number*/ scale) /*-> Point*/ { scale = scale || 1; point.x = scale * (this._a * point.x + this._b); point.y = scale * (this._c * point.y + this._d); return point; }, untransform: function (/*Point*/ point, /*Number*/ scale) /*-> Point*/ { scale = scale || 1; return new L.Point( (point.x / scale - this._b) / this._a, (point.y / scale - this._d) / this._c); } });
Version data entries
3 entries across 3 versions & 1 rubygems