Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean
Examples: 0 come from the library's tests; 8 were composed from each method's signature and run for this page, on a fresh object, for example cJ = '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"name":"A"},"geometry":{"type":"Polygon","coordinates":[[[0,0],[4,0],[4,4],[0,4],[0,0]]]}}]}' o1 = StzGeoFeaturesFromJson(cJ). 24 methods have none yet. Examples run on 2026-10-03 20:51 inside the library at commit 0e72e2e2c.
Method
Explanation, as the source carries it
ReadGeoJson
readingno extension
ReadTopoJson
THE ARCS ARE SHARED AND THE NUMBERS ARE DELTAS. A TopoJSON stores each border once and every shape as the arcs that bound it; -1 means arc 0 walked backwards (the format writes ~i, which is -i-1). The positions inside an arc are cumulative sums on a quantised grid and become degrees through the transform.no extension
Count
what it holdscomposed example
cJ = '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"name":"A"},"geometry":{"type":"Polygon","coordinates":[[[0,0],[4,0],[4,4],[0,4],[0,0]]]}}]}'
o1 = StzGeoFeaturesFromJson(cJ)
? o1.Count()
#--> 1
composed from the signature, run for this pageno extension
SkippedCount
how many geometries the reader could not use, counted rather than guessed at -- a record that drops counts what it droppedcomposed example
cJ = '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"name":"A"},"geometry":{"type":"Polygon","coordinates":[[[0,0],[4,0],[4,4],[0,4],[0,0]]]}}]}'
o1 = StzGeoFeaturesFromJson(cJ)
? o1.SkippedCount()
#--> 0
composed from the signature, run for this pageno extension
KindOf
(no comment in the source: the name reads as a sentence)kind ofno extension
IdOf
(no comment in the source: the name reads as a sentence)id ofno extension
PropertiesOf
(no comment in the source: the name reads as a sentence)properties ofno extension
PropertyOf
(no comment in the source: the name reads as a sentence)property ofno extension
HasProperty
(no comment in the source: the name reads as a sentence)has propertyno extension
NameOf
what the file calls it: the first of the usual name keys it carries, or its id, or "" -- and the caller who knows better says so themselvesno extension
IndexOfName
(no comment in the source: the name reads as a sentence)index of namecomposed example
cJ = '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"name":"A"},"geometry":{"type":"Polygon","coordinates":[[[0,0],[4,0],[4,4],[0,4],[0,0]]]}}]}'
o1 = StzGeoFeaturesFromJson(cJ)
? o1.IndexOfName("a")
#--> 1
composed from the signature, run for this pageno extension
PartsOf
(no comment in the source: the name reads as a sentence)parts ofno extension
PartCount
(no comment in the source: the name reads as a sentence)part countno extension
RingsOf
a part's rings: [1] is the outer edge, every one after it is a HOLEno extension
OuterRingOf
(no comment in the source: the name reads as a sentence)outer ring ofno extension
HoleCountOf
(no comment in the source: the name reads as a sentence)hole count ofno extension
PointsOf
every lon/lat this feature holds, flat -- what FitToPoints takesno extension
AllPoints
(no comment in the source: the name reads as a sentence)all pointscomposed example
composed from the signature, run for this pageno extension
AreaKm2Of
the biggest part by point count -- the mainland, and the only thing DN24b's reader ever kept A FEATURE'S AREA ON THE SPHERE, km2, with its holes taken out and all its parts added in. This lived in stzGeoMap.ValuesFromArea and moved here when the point patterns (GE7a) needed a window's area and the map's own copy would have been a second one -- duplicated logic diverges, and it diverges in cost first. THE AREA OF A FEATURE, km2, ON WGS84 SINCE GE8 -- outer rings added and holes taken out, which is what makes a country with a lake come out as the land and not as the outline.no extension
AreasKm2
every feature's area, in feature orderno extension
AreaKm2
the whole set's area: what a point pattern observed over all of it divides bycomposed example
cJ = '{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"name":"A"},"geometry":{"type":"Polygon","coordinates":[[[0,0],[4,0],[4,4],[0,4],[0,0]]]}}]}'
o1 = StzGeoFeaturesFromJson(cJ)
? o1.AreaKm2()
#--> 196869.60
composed from the signature, run for this pageno extension
LargestPartOf
(no comment in the source: the name reads as a sentence)largest part ofno extension
Contains
THE BOX FIRST. A ring test walks every edge; a box test is four comparisons, and for a point that is not in this region -- which is almost every pair a spatial join asks about -- the box is the whole answer.no extension
PartContains
is this place inside ONE PART of this feature? What a label placer asks: a name belongs in the part it was measured against, not merely somewhere in the country.no extension
IndexAt
which feature is at this place, or 0 -- what a click will askcomposed example
composed from the signature, run for this pageno extension
Subset
taking part of a file ------------------------------------------------ SOME OF THE FEATURES, as a feature set of their own. Everything else -- the map, the atlas, the rules -- takes a feature set, so a subset is a first-class thing and not a list of indices the caller has to carry around beside it.no extension
Adopt
(no comment in the source: the name reads as a sentence)adoptno extension
IndicesWithin
THE FEATURES WHOSE MIDDLE FALLS IN A BOX, by index. What "metropolitan France" means to a file that also carries Réunion and Guyane: not a political statement, a WINDOW -- the caller says which piece of the world they are drawing, and the file is unchanged.no extension
Within
(no comment in the source: the name reads as a sentence)withinno extension
AsRegions
the regions the choropleth builder takes, so a file read here can go straight into DN24's picture: [ name, value, flatOuterRing ] each, from the LARGEST part of every featurecomposed example