Package Exports
- normalize-path-scale
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (normalize-path-scale) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
normalize-path-scale
Normalizes a 2D path to its bounding box, producing positions that are in the -1.0 ... 1.0
range with correct aspect ratio. For example; to render arbitrary SVG paths in 3D, centred in world units.
This does not produce a copy of the path, but instead mutates it in place.
var path = [ [x1, y1], [x2, y2], ... ]
//normalize path to -1.0 .. 1.0
normalize(path)
//render with webgl / canvas / etc
//...
Usage
normalize(path[, bounds])
Normalizes the 2D path
in place, scaling the points to -1.0 .. 1.0
range. Maintains aspect ratio of the path.
You can specify bounds
for a custom bounding box:
[ [minX, minY], [maxX, maxY] ]
Otherwise calculates the bounding box with bound-points.
Returns the specified path
.
If the width or height of the bounding box is zero, this function returns early.
Changes
2.0
changes the array in place, usesbound-points
, returns early on zero size1.0
a simple version that does not mutate the input
License
MIT, see LICENSE.md for details.