Comments (2)
See d3/d3-shape#23, and earlier, d3/d3#1145.
In the past, I tried to preserve the type as it was set, mostly to facilitate debugging. So, if the value was set as a constant, it would be returned as a constant. In 4.0, I think I generally standardized on always promoting constants to functions. The path.pointRadius is treated a little specially because it can be optimized to set contextStream.pointRadius once if the radius is a constant, rather than always boxing it with a function. That avoids initializing the circle string (see path/string.js) for rendering each feature, but a better optimization would be to initialize the circle string lazily.
I’d probably be okay with changing the behavior without a major release, as the documentation does say that it returns the “current radius accessor” and not the “current radius”, and so this should probably be considered a bug. But yes, there’s a chance this could break something, and it doesn’t seem hugely important either way. 😁
from d3-geo.
Thanks, like I said, I thought you might have had a reason. So I leave it up to you to find the best fit for this particular accessor (rather than just blindly following a pattern.) I have just pushed updated d3-geo definitions (1.3.1) to DefinitelyTyped. So once they are merged/published everything is in synch with D3 proper.
The definitions in this latest version return a union-type of either number
or "accessor function signature". If the module changes we can change that as well.
I am considering a follow-up commit/PR anyway, because I might want to break-out the composite projection interface from the more complete projection interface (i.e. the unsupported methods).
from d3-geo.
Related Issues (20)
- How can I clamp a geodesic to between a max/min latitude? HOT 1
- fit-test.js Remove duplicate test HOT 1
- Geojson to SVG offset HOT 1
- Geojson to SVG offset
- Cannot import d3-geo in node with typescript HOT 8
- Geographic or Geodetic HOT 1
- D3 uses GeoJSON to represent geographic features in JavaScript HOT 2
- postclip with polygon path maybe... HOT 10
- Error [ERR_REQUIRE_ESM]: Must use import to load ES Module / require() of ES modules is not supported HOT 2
- geoAzimuthalEqualArea not rendering straight lines HOT 2
- clipCircle's precision is too low
- Configurable precision for d3.geoPath
- Mercator. Getting boundary values by longitude HOT 2
- Mercator with rotate. Incorrect conversion from projection to geographic coordinates HOT 3
- Сonvert geographic points considering antimeridian and pole HOT 1
- geoContains function doesn't seem to handle MultiPolygons HOT 9
- path.bounds should return numbers even when input coordinates are strings
- [Question] API for chekcing if point is in view or not given projection HOT 3
- Mercator Map centered on the Pacific HOT 1
- geoCircle produces an open LinearRing
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from d3-geo.