Download node_modules/d3-geo/src/path/index.js from NKessler/Horizon: direct link, hf CLI and curl.
- Browser
- Download file 2.26 kB
-
https://huggingface.co/NKessler/Horizon/resolve/main/node_modules/d3-geo/src/path/index.js
- Command line
-
hf download hf://NKessler/Horizon/node_modules/d3-geo/src/path/index.js
-
curl -L -o index.js https://huggingface.co/NKessler/Horizon/resolve/main/node_modules/d3-geo/src/path/index.js
2.26 kB
| import identity from "../identity.js"; | |
| import stream from "../stream.js"; | |
| import pathArea from "./area.js"; | |
| import pathBounds from "./bounds.js"; | |
| import pathCentroid from "./centroid.js"; | |
| import PathContext from "./context.js"; | |
| import pathMeasure from "./measure.js"; | |
| import PathString from "./string.js"; | |
| export default function(projection, context) { | |
| let digits = 3, | |
| pointRadius = 4.5, | |
| projectionStream, | |
| contextStream; | |
| function path(object) { | |
| if (object) { | |
| if (typeof pointRadius === "function") contextStream.pointRadius(+pointRadius.apply(this, arguments)); | |
| stream(object, projectionStream(contextStream)); | |
| } | |
| return contextStream.result(); | |
| } | |
| path.area = function(object) { | |
| stream(object, projectionStream(pathArea)); | |
| return pathArea.result(); | |
| }; | |
| path.measure = function(object) { | |
| stream(object, projectionStream(pathMeasure)); | |
| return pathMeasure.result(); | |
| }; | |
| path.bounds = function(object) { | |
| stream(object, projectionStream(pathBounds)); | |
| return pathBounds.result(); | |
| }; | |
| path.centroid = function(object) { | |
| stream(object, projectionStream(pathCentroid)); | |
| return pathCentroid.result(); | |
| }; | |
| path.projection = function(_) { | |
| if (!arguments.length) return projection; | |
| projectionStream = _ == null ? (projection = null, identity) : (projection = _).stream; | |
| return path; | |
| }; | |
| path.context = function(_) { | |
| if (!arguments.length) return context; | |
| contextStream = _ == null ? (context = null, new PathString(digits)) : new PathContext(context = _); | |
| if (typeof pointRadius !== "function") contextStream.pointRadius(pointRadius); | |
| return path; | |
| }; | |
| path.pointRadius = function(_) { | |
| if (!arguments.length) return pointRadius; | |
| pointRadius = typeof _ === "function" ? _ : (contextStream.pointRadius(+_), +_); | |
| return path; | |
| }; | |
| path.digits = function(_) { | |
| if (!arguments.length) return digits; | |
| if (_ == null) digits = null; | |
| else { | |
| const d = Math.floor(_); | |
| if (!(d >= 0)) throw new RangeError(`invalid digits: ${_}`); | |
| digits = d; | |
| } | |
| if (context === null) contextStream = new PathString(digits); | |
| return path; | |
| }; | |
| return path.projection(projection).digits(digits).context(context); | |
| } | |