Created
March 25, 2014 15:14
-
-
Save morganherlocker/9763902 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
0 info it worked if it ends with ok | |
1 verbose cli [ 'node', '/usr/local/bin/npm', 'publish' ] | |
2 info using [email protected] | |
3 info using [email protected] | |
4 verbose publish [ '.' ] | |
5 verbose cache add [ '.', null ] | |
6 verbose cache add name=undefined spec="." args=[".",null] | |
7 verbose parsed url { protocol: null, | |
7 verbose parsed url slashes: null, | |
7 verbose parsed url auth: null, | |
7 verbose parsed url host: null, | |
7 verbose parsed url port: null, | |
7 verbose parsed url hostname: null, | |
7 verbose parsed url hash: null, | |
7 verbose parsed url search: null, | |
7 verbose parsed url query: null, | |
7 verbose parsed url pathname: '.', | |
7 verbose parsed url path: '.', | |
7 verbose parsed url href: '.' } | |
8 silly lockFile 3a52ce78- . | |
9 verbose lock . /Users/morgan/.npm/3a52ce78-.lock | |
10 verbose tar pack [ '/var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz', | |
10 verbose tar pack '.' ] | |
11 verbose tarball /var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
12 verbose folder . | |
13 info prepublish [email protected] | |
14 silly lockFile 1f1177db-tar tar://. | |
15 verbose lock tar://. /Users/morgan/.npm/1f1177db-tar.lock | |
16 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
17 verbose lock tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz /Users/morgan/.npm/becad349-51131-0-4612589937169105-tmp-tgz.lock | |
18 silly lockFile 1f1177db-tar tar://. | |
19 silly lockFile 1f1177db-tar tar://. | |
20 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
21 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
22 verbose tar unpack /var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
23 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
24 verbose lock tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package /Users/morgan/.npm/797f3e8b-51131-0-4612589937169105-package.lock | |
25 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
26 verbose lock tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz /Users/morgan/.npm/becad349-51131-0-4612589937169105-tmp-tgz.lock | |
27 silly gunzTarPerm modes [ '755', '644' ] | |
28 silly gunzTarPerm extractEntry package.json | |
29 silly gunzTarPerm extractEntry .npmignore | |
30 silly gunzTarPerm extractEntry README.md | |
31 silly gunzTarPerm extractEntry LICENSE | |
32 silly gunzTarPerm extractEntry turf.js | |
33 silly gunzTarPerm extractEntry turf.min.js | |
34 silly gunzTarPerm extractEntry index.js | |
35 silly gunzTarPerm extractEntry build | |
36 silly gunzTarPerm extractEntry img/contours.jpg | |
37 silly gunzTarPerm extractEntry img/points.jpg | |
38 silly gunzTarPerm extractEntry img/turf.png | |
39 silly gunzTarPerm extractEntry .travis.yml | |
40 silly gunzTarPerm extractEntry lib/aggregate.js | |
41 silly gunzTarPerm extractEntry lib/isClockwise.js | |
42 silly gunzTarPerm extractEntry lib/isobands.js | |
43 silly gunzTarPerm extractEntry lib/isolines.js | |
44 silly gunzTarPerm extractEntry lib/intersect.js | |
45 silly gunzTarPerm extractEntry lib/linestring.js | |
46 silly gunzTarPerm extractEntry lib/load.js | |
47 silly gunzTarPerm extractEntry lib/max.js | |
48 silly gunzTarPerm extractEntry lib/median.js | |
49 silly gunzTarPerm extractEntry lib/merge.js | |
50 silly gunzTarPerm extractEntry lib/inside.js | |
51 silly gunzTarPerm extractEntry lib/midpoint.js | |
52 silly gunzTarPerm extractEntry lib/grid.js | |
53 silly gunzTarPerm extractEntry lib/min.js | |
54 silly gunzTarPerm extractEntry lib/flip.js | |
55 silly gunzTarPerm extractEntry lib/near.js | |
56 silly gunzTarPerm extractEntry lib/filter.js | |
57 silly gunzTarPerm extractEntry lib/nearest.js | |
58 silly gunzTarPerm extractEntry lib/featurecollection.js | |
59 silly gunzTarPerm extractEntry lib/planepoint.js | |
60 silly gunzTarPerm extractEntry lib/extent.js | |
61 silly gunzTarPerm extractEntry lib/point.js | |
62 silly gunzTarPerm extractEntry lib/explode.js | |
63 silly gunzTarPerm extractEntry lib/polygon.js | |
64 silly gunzTarPerm extractEntry lib/erase.js | |
65 silly gunzTarPerm extractEntry lib/quantile.js | |
66 silly gunzTarPerm extractEntry lib/envelope.js | |
67 silly gunzTarPerm extractEntry lib/reclass.js | |
68 silly gunzTarPerm extractEntry lib/donuts.js | |
69 silly gunzTarPerm extractEntry lib/remove.js | |
70 silly gunzTarPerm extractEntry lib/distance.js | |
71 silly gunzTarPerm extractEntry lib/sample.js | |
72 silly gunzTarPerm extractEntry lib/deviation.js | |
73 silly gunzTarPerm extractEntry lib/save.js | |
74 silly gunzTarPerm extractEntry lib/count.js | |
75 silly gunzTarPerm extractEntry lib/simplify.js | |
76 silly gunzTarPerm extractEntry lib/convex.js | |
77 silly gunzTarPerm extractEntry lib/size.js | |
78 silly gunzTarPerm extractEntry lib/contour.js | |
79 silly gunzTarPerm extractEntry lib/smooth.js | |
80 silly gunzTarPerm extractEntry lib/concave.js | |
81 silly gunzTarPerm extractEntry lib/square.js | |
82 silly gunzTarPerm extractEntry lib/combine.js | |
83 silly gunzTarPerm extractEntry lib/sum.js | |
84 silly gunzTarPerm extractEntry lib/centroid.js | |
85 silly gunzTarPerm extractEntry lib/tag.js | |
86 silly gunzTarPerm extractEntry lib/center.js | |
87 silly gunzTarPerm extractEntry lib/tin.js | |
88 silly gunzTarPerm extractEntry lib/buffer.js | |
89 silly gunzTarPerm extractEntry lib/topo.js | |
90 silly gunzTarPerm extractEntry lib/bezier.js | |
91 silly gunzTarPerm extractEntry lib/union.js | |
92 silly gunzTarPerm extractEntry lib/bboxPolygon.js | |
93 silly gunzTarPerm extractEntry lib/valid.js | |
94 silly gunzTarPerm extractEntry lib/average.js | |
95 silly gunzTarPerm extractEntry lib/variance.js | |
96 silly gunzTarPerm extractEntry lib/area.js | |
97 silly gunzTarPerm extractEntry lib/within.js | |
98 silly gunzTarPerm extractEntry lib/jenks.js | |
99 silly gunzTarPerm extractEntry bower.json | |
100 silly gunzTarPerm extractEntry release | |
101 silly gunzTarPerm extractEntry test/aggregate.js | |
102 silly gunzTarPerm extractEntry test/isClockwide.js | |
103 silly gunzTarPerm extractEntry test/isobands.js | |
104 silly gunzTarPerm extractEntry test/isolines.js | |
105 silly gunzTarPerm extractEntry test/jenks.js | |
106 silly gunzTarPerm extractEntry test/intersect.js | |
107 silly gunzTarPerm extractEntry test/area.js | |
108 silly gunzTarPerm extractEntry test/max.js | |
109 silly gunzTarPerm extractEntry test/median.js | |
110 silly gunzTarPerm extractEntry test/merge.js | |
111 silly gunzTarPerm extractEntry test/midpoint.js | |
112 silly gunzTarPerm extractEntry test/inside.js | |
113 silly gunzTarPerm extractEntry test/min.js | |
114 silly gunzTarPerm extractEntry test/grid.js | |
115 silly gunzTarPerm extractEntry test/near.js | |
116 silly gunzTarPerm extractEntry test/flip.js | |
117 silly gunzTarPerm extractEntry test/nearest.js | |
118 silly gunzTarPerm extractEntry test/filter.js | |
119 silly gunzTarPerm extractEntry test/planepoint.js | |
120 silly gunzTarPerm extractEntry test/featurecollection.js | |
121 silly gunzTarPerm extractEntry test/point.js | |
122 silly gunzTarPerm extractEntry test/extent.js | |
123 silly gunzTarPerm extractEntry test/polygon.js | |
124 silly gunzTarPerm extractEntry test/explode.js | |
125 silly gunzTarPerm extractEntry test/quantile.js | |
126 silly gunzTarPerm extractEntry test/erase.js | |
127 silly gunzTarPerm extractEntry test/reclass.js | |
128 silly gunzTarPerm extractEntry test/envelope.js | |
129 silly gunzTarPerm extractEntry test/remove.js | |
130 silly gunzTarPerm extractEntry test/donuts.js | |
131 silly gunzTarPerm extractEntry test/sample.js | |
132 silly gunzTarPerm extractEntry test/distance.js | |
133 silly gunzTarPerm extractEntry test/save.js | |
134 silly gunzTarPerm extractEntry test/deviation.js | |
135 silly gunzTarPerm extractEntry test/simplify.js | |
136 silly gunzTarPerm extractEntry test/count.js | |
137 silly gunzTarPerm extractEntry test/size.js | |
138 silly gunzTarPerm extractEntry test/convex.js | |
139 silly gunzTarPerm extractEntry test/smooth.js | |
140 silly gunzTarPerm extractEntry test/contour.js | |
141 silly gunzTarPerm extractEntry test/square.js | |
142 silly gunzTarPerm extractEntry test/concave.js | |
143 silly gunzTarPerm extractEntry test/sum.js | |
144 silly gunzTarPerm extractEntry test/combine.js | |
145 silly gunzTarPerm extractEntry test/tag.js | |
146 silly gunzTarPerm extractEntry test/centroid.js | |
147 silly gunzTarPerm extractEntry test/variance.js | |
148 silly gunzTarPerm extractEntry test/center.js | |
149 silly gunzTarPerm extractEntry test/valid.js | |
150 silly gunzTarPerm extractEntry test/buffer.js | |
151 silly gunzTarPerm extractEntry test/test_template.js | |
152 silly gunzTarPerm extractEntry test/bezier.js | |
153 silly gunzTarPerm extractEntry test/tin.js | |
154 silly gunzTarPerm extractEntry test/bboxPolygon.js | |
155 silly gunzTarPerm extractEntry test/topo.js | |
156 silly gunzTarPerm extractEntry test/average.js | |
157 silly gunzTarPerm extractEntry test/union.js | |
158 silly gunzTarPerm extractEntry test/linestring.js | |
159 silly gunzTarPerm extractEntry test/within.js | |
160 silly gunzTarPerm extractEntry test/load.js | |
161 silly gunzTarPerm extractEntry test/testOut/grid.geojson | |
162 silly gunzTarPerm extractEntry test/testOut/bezier.geojson | |
163 silly gunzTarPerm extractEntry test/testOut/bufferConvex.geojson | |
164 silly gunzTarPerm extractEntry test/testOut/buffered.geojson | |
165 silly gunzTarPerm extractEntry test/testOut/bufferedLine.geojson | |
166 silly gunzTarPerm extractEntry test/testOut/bufferedPoints.geojson | |
167 silly gunzTarPerm extractEntry test/testOut/bufferedPolygon.geojson | |
168 silly gunzTarPerm extractEntry test/testOut/concave.geojson | |
169 silly gunzTarPerm extractEntry test/testOut/concave1.geojson | |
170 silly gunzTarPerm extractEntry test/testOut/concave2.geojson | |
171 silly gunzTarPerm extractEntry test/testOut/contourGrid.geojson | |
172 silly gunzTarPerm extractEntry test/testOut/contourList.json | |
173 silly gunzTarPerm extractEntry test/testOut/contours.geojson | |
174 silly gunzTarPerm extractEntry test/testOut/contours1.geojson | |
175 silly gunzTarPerm extractEntry test/testOut/contours2.geojson | |
176 silly gunzTarPerm extractEntry test/testOut/contours3.geojson | |
177 silly gunzTarPerm extractEntry test/testOut/contours4.geojson | |
178 silly gunzTarPerm extractEntry test/testOut/contoursEdges.geojson | |
179 silly gunzTarPerm extractEntry test/testOut/contoursHoles.geojson | |
180 silly gunzTarPerm extractEntry test/testOut/convex.geojson | |
181 silly gunzTarPerm extractEntry test/testOut/convex2.geojson | |
182 silly gunzTarPerm extractEntry test/testOut/donuts.geojson | |
183 silly gunzTarPerm extractEntry test/testOut/donuts2.geojson | |
184 silly gunzTarPerm extractEntry test/testOut/donuts3.geojson | |
185 silly gunzTarPerm extractEntry test/testOut/donutsBadRing.geojson | |
186 silly gunzTarPerm extractEntry test/testOut/erase2.geojson | |
187 silly gunzTarPerm extractEntry test/testOut/erase3.geojson | |
188 silly gunzTarPerm extractEntry test/testOut/erased.geojson | |
189 silly gunzTarPerm extractEntry test/testOut/erased1.geojson | |
190 silly gunzTarPerm extractEntry test/testOut/filteredConvcave.geojson | |
191 silly gunzTarPerm extractEntry test/testOut/bufferConvcave.geojson | |
192 silly gunzTarPerm extractEntry test/testOut/gridTest.geojson | |
193 silly gunzTarPerm extractEntry test/testOut/intersected.geojson | |
194 silly gunzTarPerm extractEntry test/testOut/intersected1.geojson | |
195 silly gunzTarPerm extractEntry test/testOut/intersected2.geojson | |
196 silly gunzTarPerm extractEntry test/testOut/isolines.geojson | |
197 silly gunzTarPerm extractEntry test/testOut/merge.geojson | |
198 silly gunzTarPerm extractEntry test/testOut/merge2.geojson | |
199 silly gunzTarPerm extractEntry test/testOut/openIsoOut.geojson | |
200 silly gunzTarPerm extractEntry test/testOut/poly.geojson | |
201 silly gunzTarPerm extractEntry test/testOut/preBufferConvex.geojson | |
202 silly gunzTarPerm extractEntry test/testOut/reclassed.geojson | |
203 silly gunzTarPerm extractEntry test/testOut/sample.geojson | |
204 silly gunzTarPerm extractEntry test/testOut/simplified.geojson | |
205 silly gunzTarPerm extractEntry test/testOut/simplified.topojson | |
206 silly gunzTarPerm extractEntry test/testOut/simplifiedLine.geojson | |
207 silly gunzTarPerm extractEntry test/testOut/simplifiedLines.geojson | |
208 silly gunzTarPerm extractEntry test/testOut/simplifiedPolygon.geojson | |
209 silly gunzTarPerm extractEntry test/testOut/simplifiedPolygons.geojson | |
210 silly gunzTarPerm extractEntry test/testOut/taggedPoints.geojson | |
211 silly gunzTarPerm extractEntry test/testOut/test.geojson | |
212 silly gunzTarPerm extractEntry test/testOut/tin.geojson | |
213 silly gunzTarPerm extractEntry test/testOut/tin2.geojson | |
214 silly gunzTarPerm extractEntry test/testOut/tinContour.geojson | |
215 silly gunzTarPerm extractEntry test/testOut/tinConvcave.geojson | |
216 silly gunzTarPerm extractEntry test/testOut/tinConvex.geojson | |
217 silly gunzTarPerm extractEntry test/testOut/tinTest.geojson | |
218 silly gunzTarPerm extractEntry test/testOut/topo.topojson | |
219 silly gunzTarPerm extractEntry test/testOut/unioned.geojson | |
220 silly gunzTarPerm extractEntry test/testOut/world.geojson | |
221 silly gunzTarPerm extractEntry test/testIn/concaveIn1.geojson | |
222 silly gunzTarPerm extractEntry test/testIn/Concave.geojson | |
223 silly gunzTarPerm extractEntry test/testIn/Intersect1.geojson | |
224 silly gunzTarPerm extractEntry test/testIn/Intersect2.geojson | |
225 silly gunzTarPerm extractEntry test/testIn/Intersect3.geojson | |
226 silly gunzTarPerm extractEntry test/testIn/LineString.geojson | |
227 silly gunzTarPerm extractEntry test/testIn/MultiLineString.geojson | |
228 silly gunzTarPerm extractEntry test/testIn/MultiPoint.geojson | |
229 silly gunzTarPerm extractEntry test/testIn/MultiPolygon.geojson | |
230 silly gunzTarPerm extractEntry test/testIn/PlanePoint.geojson | |
231 silly gunzTarPerm extractEntry test/testIn/PlanePoints.geojson | |
232 silly gunzTarPerm extractEntry test/testIn/Point.geojson | |
233 silly gunzTarPerm extractEntry test/testIn/Point1.geojson | |
234 silly gunzTarPerm extractEntry test/testIn/Point2.geojson | |
235 silly gunzTarPerm extractEntry test/testIn/Points.geojson | |
236 silly gunzTarPerm extractEntry test/testIn/Points2.geojson | |
237 silly gunzTarPerm extractEntry test/testIn/Points3.geojson | |
238 silly gunzTarPerm extractEntry test/testIn/Polygon.geojson | |
239 silly gunzTarPerm extractEntry test/testIn/Triangle.geojson | |
240 silly gunzTarPerm extractEntry test/testIn/bezierIn.geojson | |
241 silly gunzTarPerm extractEntry test/testIn/bufferPolygonIn.geojson | |
242 silly gunzTarPerm extractEntry test/testIn/complexLine.geojson | |
243 silly gunzTarPerm extractEntry test/testIn/complexLines.geojson | |
244 silly gunzTarPerm extractEntry test/testIn/complexPolygon.geojson | |
245 silly gunzTarPerm extractEntry test/testIn/complexPolygons.geojson | |
246 silly gunzTarPerm extractEntry test/testIn/concaveIn.geojson | |
247 silly gunzTarPerm extractEntry test/testIn/FeatureCollection.geojson | |
248 silly gunzTarPerm extractEntry test/testIn/concaveIn2.geojson | |
249 silly gunzTarPerm extractEntry test/testIn/concaveInHole.geojson | |
250 silly gunzTarPerm extractEntry test/testIn/convexIn2.geojson | |
251 silly gunzTarPerm extractEntry test/testIn/countries.geojson | |
252 silly gunzTarPerm extractEntry test/testIn/countries_simp.geojson | |
253 silly gunzTarPerm extractEntry test/testIn/donutBadRing.geojson | |
254 silly gunzTarPerm extractEntry test/testIn/donutHoles.geojson | |
255 silly gunzTarPerm extractEntry test/testIn/donutsIn.geojson | |
256 silly gunzTarPerm extractEntry test/testIn/donutsIn2.geojson | |
257 silly gunzTarPerm extractEntry test/testIn/donutsIn3.geojson | |
258 silly gunzTarPerm extractEntry test/testIn/elevation1.geojson | |
259 silly gunzTarPerm extractEntry test/testIn/elevation2.geojson | |
260 silly gunzTarPerm extractEntry test/testIn/elevation3.geojson | |
261 silly gunzTarPerm extractEntry test/testIn/eraseInside.geojson | |
262 silly gunzTarPerm extractEntry test/testIn/eraseOutside.geojson | |
263 silly gunzTarPerm extractEntry test/testIn/erasedFC.geojson | |
264 silly gunzTarPerm extractEntry test/testIn/erasedHole.geojson | |
265 silly gunzTarPerm extractEntry test/testIn/holeContourPoints.geojson | |
266 silly gunzTarPerm extractEntry test/testIn/mergeIn.geojson | |
267 silly gunzTarPerm extractEntry test/testIn/mergeIn2.geojson | |
268 silly gunzTarPerm extractEntry test/testIn/nearIn.geojson | |
269 silly gunzTarPerm extractEntry test/testIn/nearOut.geojson | |
270 silly gunzTarPerm extractEntry test/testIn/openContourPoints.geojson | |
271 silly gunzTarPerm extractEntry test/testIn/openIsoIn.geojson | |
272 silly gunzTarPerm extractEntry test/testIn/tagPoints.geojson | |
273 silly gunzTarPerm extractEntry test/testIn/tagPolygons.geojson | |
274 silly gunzTarPerm extractEntry test.html | |
275 silly gunzTarPerm extractEntry CONTRIBUTING.md | |
276 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
277 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
278 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
279 silly lockFile becad349-51131-0-4612589937169105-tmp-tgz tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/tmp.tgz | |
280 verbose tar pack [ '/Users/morgan/.npm/turf/0.1.0/package.tgz', | |
280 verbose tar pack '/var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package' ] | |
281 verbose tarball /Users/morgan/.npm/turf/0.1.0/package.tgz | |
282 verbose folder /var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
283 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
284 verbose lock tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package /Users/morgan/.npm/797f3e8b-51131-0-4612589937169105-package.lock | |
285 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
286 verbose lock tar:///Users/morgan/.npm/turf/0.1.0/package.tgz /Users/morgan/.npm/e6111c99-organ-npm-turf-0-1-0-package-tgz.lock | |
287 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
288 silly lockFile 797f3e8b-51131-0-4612589937169105-package tar:///var/folders/5b/1n6ylh2d1g38bvpqqk22pc080000gn/T/npm-10493-Rp7N7WbZ/1395759851131-0.4612589937169105/package | |
289 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
290 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
291 silly lockFile 35489142-rs-morgan-npm-turf-0-1-0-package /Users/morgan/.npm/turf/0.1.0/package | |
292 verbose lock /Users/morgan/.npm/turf/0.1.0/package /Users/morgan/.npm/35489142-rs-morgan-npm-turf-0-1-0-package.lock | |
293 silly lockFile 35489142-rs-morgan-npm-turf-0-1-0-package /Users/morgan/.npm/turf/0.1.0/package | |
294 silly lockFile 35489142-rs-morgan-npm-turf-0-1-0-package /Users/morgan/.npm/turf/0.1.0/package | |
295 verbose tar unpack /Users/morgan/.npm/turf/0.1.0/package.tgz | |
296 silly lockFile e3151f67-rs-morgan-npm-turf-0-1-0-package tar:///Users/morgan/.npm/turf/0.1.0/package | |
297 verbose lock tar:///Users/morgan/.npm/turf/0.1.0/package /Users/morgan/.npm/e3151f67-rs-morgan-npm-turf-0-1-0-package.lock | |
298 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
299 verbose lock tar:///Users/morgan/.npm/turf/0.1.0/package.tgz /Users/morgan/.npm/e6111c99-organ-npm-turf-0-1-0-package-tgz.lock | |
300 silly gunzTarPerm modes [ '755', '644' ] | |
301 silly gunzTarPerm extractEntry package.json | |
302 silly gunzTarPerm extractEntry .npmignore | |
303 silly gunzTarPerm extractEntry README.md | |
304 silly gunzTarPerm extractEntry LICENSE | |
305 silly gunzTarPerm extractEntry turf.js | |
306 silly gunzTarPerm extractEntry turf.min.js | |
307 silly gunzTarPerm extractEntry index.js | |
308 silly gunzTarPerm extractEntry build | |
309 silly gunzTarPerm extractEntry img/contours.jpg | |
310 silly gunzTarPerm extractEntry img/points.jpg | |
311 silly gunzTarPerm extractEntry img/turf.png | |
312 silly gunzTarPerm extractEntry .travis.yml | |
313 silly gunzTarPerm extractEntry lib/aggregate.js | |
314 silly gunzTarPerm extractEntry lib/isClockwise.js | |
315 silly gunzTarPerm extractEntry lib/isobands.js | |
316 silly gunzTarPerm extractEntry lib/isolines.js | |
317 silly gunzTarPerm extractEntry lib/intersect.js | |
318 silly gunzTarPerm extractEntry lib/linestring.js | |
319 silly gunzTarPerm extractEntry lib/load.js | |
320 silly gunzTarPerm extractEntry lib/max.js | |
321 silly gunzTarPerm extractEntry lib/median.js | |
322 silly gunzTarPerm extractEntry lib/merge.js | |
323 silly gunzTarPerm extractEntry lib/inside.js | |
324 silly gunzTarPerm extractEntry lib/midpoint.js | |
325 silly gunzTarPerm extractEntry lib/grid.js | |
326 silly gunzTarPerm extractEntry lib/min.js | |
327 silly gunzTarPerm extractEntry lib/flip.js | |
328 silly gunzTarPerm extractEntry lib/near.js | |
329 silly gunzTarPerm extractEntry lib/filter.js | |
330 silly gunzTarPerm extractEntry lib/nearest.js | |
331 silly gunzTarPerm extractEntry lib/featurecollection.js | |
332 silly gunzTarPerm extractEntry lib/planepoint.js | |
333 silly gunzTarPerm extractEntry lib/extent.js | |
334 silly gunzTarPerm extractEntry lib/point.js | |
335 silly gunzTarPerm extractEntry lib/explode.js | |
336 silly gunzTarPerm extractEntry lib/polygon.js | |
337 silly gunzTarPerm extractEntry lib/erase.js | |
338 silly gunzTarPerm extractEntry lib/quantile.js | |
339 silly gunzTarPerm extractEntry lib/envelope.js | |
340 silly gunzTarPerm extractEntry lib/reclass.js | |
341 silly gunzTarPerm extractEntry lib/donuts.js | |
342 silly gunzTarPerm extractEntry lib/remove.js | |
343 silly gunzTarPerm extractEntry lib/distance.js | |
344 silly gunzTarPerm extractEntry lib/sample.js | |
345 silly gunzTarPerm extractEntry lib/deviation.js | |
346 silly gunzTarPerm extractEntry lib/save.js | |
347 silly gunzTarPerm extractEntry lib/count.js | |
348 silly gunzTarPerm extractEntry lib/simplify.js | |
349 silly gunzTarPerm extractEntry lib/convex.js | |
350 silly gunzTarPerm extractEntry lib/size.js | |
351 silly gunzTarPerm extractEntry lib/contour.js | |
352 silly gunzTarPerm extractEntry lib/smooth.js | |
353 silly gunzTarPerm extractEntry lib/concave.js | |
354 silly gunzTarPerm extractEntry lib/square.js | |
355 silly gunzTarPerm extractEntry lib/combine.js | |
356 silly gunzTarPerm extractEntry lib/sum.js | |
357 silly gunzTarPerm extractEntry lib/centroid.js | |
358 silly gunzTarPerm extractEntry lib/tag.js | |
359 silly gunzTarPerm extractEntry lib/center.js | |
360 silly gunzTarPerm extractEntry lib/tin.js | |
361 silly gunzTarPerm extractEntry lib/buffer.js | |
362 silly gunzTarPerm extractEntry lib/topo.js | |
363 silly gunzTarPerm extractEntry lib/bezier.js | |
364 silly gunzTarPerm extractEntry lib/union.js | |
365 silly gunzTarPerm extractEntry lib/bboxPolygon.js | |
366 silly gunzTarPerm extractEntry lib/valid.js | |
367 silly gunzTarPerm extractEntry lib/average.js | |
368 silly gunzTarPerm extractEntry lib/variance.js | |
369 silly gunzTarPerm extractEntry lib/area.js | |
370 silly gunzTarPerm extractEntry lib/within.js | |
371 silly gunzTarPerm extractEntry lib/jenks.js | |
372 silly gunzTarPerm extractEntry bower.json | |
373 silly gunzTarPerm extractEntry release | |
374 silly gunzTarPerm extractEntry test/aggregate.js | |
375 silly gunzTarPerm extractEntry test/isClockwide.js | |
376 silly gunzTarPerm extractEntry test/isobands.js | |
377 silly gunzTarPerm extractEntry test/isolines.js | |
378 silly gunzTarPerm extractEntry test/jenks.js | |
379 silly gunzTarPerm extractEntry test/intersect.js | |
380 silly gunzTarPerm extractEntry test/area.js | |
381 silly gunzTarPerm extractEntry test/max.js | |
382 silly gunzTarPerm extractEntry test/median.js | |
383 silly gunzTarPerm extractEntry test/merge.js | |
384 silly gunzTarPerm extractEntry test/midpoint.js | |
385 silly gunzTarPerm extractEntry test/inside.js | |
386 silly gunzTarPerm extractEntry test/min.js | |
387 silly gunzTarPerm extractEntry test/grid.js | |
388 silly gunzTarPerm extractEntry test/near.js | |
389 silly gunzTarPerm extractEntry test/flip.js | |
390 silly gunzTarPerm extractEntry test/nearest.js | |
391 silly gunzTarPerm extractEntry test/filter.js | |
392 silly gunzTarPerm extractEntry test/planepoint.js | |
393 silly gunzTarPerm extractEntry test/featurecollection.js | |
394 silly gunzTarPerm extractEntry test/point.js | |
395 silly gunzTarPerm extractEntry test/extent.js | |
396 silly gunzTarPerm extractEntry test/polygon.js | |
397 silly gunzTarPerm extractEntry test/explode.js | |
398 silly gunzTarPerm extractEntry test/quantile.js | |
399 silly gunzTarPerm extractEntry test/erase.js | |
400 silly gunzTarPerm extractEntry test/reclass.js | |
401 silly gunzTarPerm extractEntry test/envelope.js | |
402 silly gunzTarPerm extractEntry test/remove.js | |
403 silly gunzTarPerm extractEntry test/donuts.js | |
404 silly gunzTarPerm extractEntry test/sample.js | |
405 silly gunzTarPerm extractEntry test/distance.js | |
406 silly gunzTarPerm extractEntry test/save.js | |
407 silly gunzTarPerm extractEntry test/deviation.js | |
408 silly gunzTarPerm extractEntry test/simplify.js | |
409 silly gunzTarPerm extractEntry test/count.js | |
410 silly gunzTarPerm extractEntry test/size.js | |
411 silly gunzTarPerm extractEntry test/convex.js | |
412 silly gunzTarPerm extractEntry test/smooth.js | |
413 silly gunzTarPerm extractEntry test/contour.js | |
414 silly gunzTarPerm extractEntry test/square.js | |
415 silly gunzTarPerm extractEntry test/concave.js | |
416 silly gunzTarPerm extractEntry test/sum.js | |
417 silly gunzTarPerm extractEntry test/combine.js | |
418 silly gunzTarPerm extractEntry test/tag.js | |
419 silly gunzTarPerm extractEntry test/centroid.js | |
420 silly gunzTarPerm extractEntry test/variance.js | |
421 silly gunzTarPerm extractEntry test/center.js | |
422 silly gunzTarPerm extractEntry test/valid.js | |
423 silly gunzTarPerm extractEntry test/buffer.js | |
424 silly gunzTarPerm extractEntry test/test_template.js | |
425 silly gunzTarPerm extractEntry test/bezier.js | |
426 silly gunzTarPerm extractEntry test/tin.js | |
427 silly gunzTarPerm extractEntry test/bboxPolygon.js | |
428 silly gunzTarPerm extractEntry test/topo.js | |
429 silly gunzTarPerm extractEntry test/average.js | |
430 silly gunzTarPerm extractEntry test/union.js | |
431 silly gunzTarPerm extractEntry test/linestring.js | |
432 silly gunzTarPerm extractEntry test/within.js | |
433 silly gunzTarPerm extractEntry test/load.js | |
434 silly gunzTarPerm extractEntry test/testOut/grid.geojson | |
435 silly gunzTarPerm extractEntry test/testOut/bezier.geojson | |
436 silly gunzTarPerm extractEntry test/testOut/bufferConvex.geojson | |
437 silly gunzTarPerm extractEntry test/testOut/buffered.geojson | |
438 silly gunzTarPerm extractEntry test/testOut/bufferedLine.geojson | |
439 silly gunzTarPerm extractEntry test/testOut/bufferedPoints.geojson | |
440 silly gunzTarPerm extractEntry test/testOut/bufferedPolygon.geojson | |
441 silly gunzTarPerm extractEntry test/testOut/concave.geojson | |
442 silly gunzTarPerm extractEntry test/testOut/concave1.geojson | |
443 silly gunzTarPerm extractEntry test/testOut/concave2.geojson | |
444 silly gunzTarPerm extractEntry test/testOut/contourGrid.geojson | |
445 silly gunzTarPerm extractEntry test/testOut/contourList.json | |
446 silly gunzTarPerm extractEntry test/testOut/contours.geojson | |
447 silly gunzTarPerm extractEntry test/testOut/contours1.geojson | |
448 silly gunzTarPerm extractEntry test/testOut/contours2.geojson | |
449 silly gunzTarPerm extractEntry test/testOut/contours3.geojson | |
450 silly gunzTarPerm extractEntry test/testOut/contours4.geojson | |
451 silly gunzTarPerm extractEntry test/testOut/contoursEdges.geojson | |
452 silly gunzTarPerm extractEntry test/testOut/contoursHoles.geojson | |
453 silly gunzTarPerm extractEntry test/testOut/convex.geojson | |
454 silly gunzTarPerm extractEntry test/testOut/convex2.geojson | |
455 silly gunzTarPerm extractEntry test/testOut/donuts.geojson | |
456 silly gunzTarPerm extractEntry test/testOut/donuts2.geojson | |
457 silly gunzTarPerm extractEntry test/testOut/donuts3.geojson | |
458 silly gunzTarPerm extractEntry test/testOut/donutsBadRing.geojson | |
459 silly gunzTarPerm extractEntry test/testOut/erase2.geojson | |
460 silly gunzTarPerm extractEntry test/testOut/erase3.geojson | |
461 silly gunzTarPerm extractEntry test/testOut/erased.geojson | |
462 silly gunzTarPerm extractEntry test/testOut/erased1.geojson | |
463 silly gunzTarPerm extractEntry test/testOut/filteredConvcave.geojson | |
464 silly gunzTarPerm extractEntry test/testOut/bufferConvcave.geojson | |
465 silly gunzTarPerm extractEntry test/testOut/gridTest.geojson | |
466 silly gunzTarPerm extractEntry test/testOut/intersected.geojson | |
467 silly gunzTarPerm extractEntry test/testOut/intersected1.geojson | |
468 silly gunzTarPerm extractEntry test/testOut/intersected2.geojson | |
469 silly gunzTarPerm extractEntry test/testOut/isolines.geojson | |
470 silly gunzTarPerm extractEntry test/testOut/merge.geojson | |
471 silly gunzTarPerm extractEntry test/testOut/merge2.geojson | |
472 silly gunzTarPerm extractEntry test/testOut/openIsoOut.geojson | |
473 silly gunzTarPerm extractEntry test/testOut/poly.geojson | |
474 silly gunzTarPerm extractEntry test/testOut/preBufferConvex.geojson | |
475 silly gunzTarPerm extractEntry test/testOut/reclassed.geojson | |
476 silly gunzTarPerm extractEntry test/testOut/sample.geojson | |
477 silly gunzTarPerm extractEntry test/testOut/simplified.geojson | |
478 silly gunzTarPerm extractEntry test/testOut/simplified.topojson | |
479 silly gunzTarPerm extractEntry test/testOut/simplifiedLine.geojson | |
480 silly gunzTarPerm extractEntry test/testOut/simplifiedLines.geojson | |
481 silly gunzTarPerm extractEntry test/testOut/simplifiedPolygon.geojson | |
482 silly gunzTarPerm extractEntry test/testOut/simplifiedPolygons.geojson | |
483 silly gunzTarPerm extractEntry test/testOut/taggedPoints.geojson | |
484 silly gunzTarPerm extractEntry test/testOut/test.geojson | |
485 silly gunzTarPerm extractEntry test/testOut/tin.geojson | |
486 silly gunzTarPerm extractEntry test/testOut/tin2.geojson | |
487 silly gunzTarPerm extractEntry test/testOut/tinContour.geojson | |
488 silly gunzTarPerm extractEntry test/testOut/tinConvcave.geojson | |
489 silly gunzTarPerm extractEntry test/testOut/tinConvex.geojson | |
490 silly gunzTarPerm extractEntry test/testOut/tinTest.geojson | |
491 silly gunzTarPerm extractEntry test/testOut/topo.topojson | |
492 silly gunzTarPerm extractEntry test/testOut/unioned.geojson | |
493 silly gunzTarPerm extractEntry test/testOut/world.geojson | |
494 silly gunzTarPerm extractEntry test/testIn/concaveIn1.geojson | |
495 silly gunzTarPerm extractEntry test/testIn/Concave.geojson | |
496 silly gunzTarPerm extractEntry test/testIn/Intersect1.geojson | |
497 silly gunzTarPerm extractEntry test/testIn/Intersect2.geojson | |
498 silly gunzTarPerm extractEntry test/testIn/Intersect3.geojson | |
499 silly gunzTarPerm extractEntry test/testIn/LineString.geojson | |
500 silly gunzTarPerm extractEntry test/testIn/MultiLineString.geojson | |
501 silly gunzTarPerm extractEntry test/testIn/MultiPoint.geojson | |
502 silly gunzTarPerm extractEntry test/testIn/MultiPolygon.geojson | |
503 silly gunzTarPerm extractEntry test/testIn/PlanePoint.geojson | |
504 silly gunzTarPerm extractEntry test/testIn/PlanePoints.geojson | |
505 silly gunzTarPerm extractEntry test/testIn/Point.geojson | |
506 silly gunzTarPerm extractEntry test/testIn/Point1.geojson | |
507 silly gunzTarPerm extractEntry test/testIn/Point2.geojson | |
508 silly gunzTarPerm extractEntry test/testIn/Points.geojson | |
509 silly gunzTarPerm extractEntry test/testIn/Points2.geojson | |
510 silly gunzTarPerm extractEntry test/testIn/Points3.geojson | |
511 silly gunzTarPerm extractEntry test/testIn/Polygon.geojson | |
512 silly gunzTarPerm extractEntry test/testIn/Triangle.geojson | |
513 silly gunzTarPerm extractEntry test/testIn/bezierIn.geojson | |
514 silly gunzTarPerm extractEntry test/testIn/bufferPolygonIn.geojson | |
515 silly gunzTarPerm extractEntry test/testIn/complexLine.geojson | |
516 silly gunzTarPerm extractEntry test/testIn/complexLines.geojson | |
517 silly gunzTarPerm extractEntry test/testIn/complexPolygon.geojson | |
518 silly gunzTarPerm extractEntry test/testIn/complexPolygons.geojson | |
519 silly gunzTarPerm extractEntry test/testIn/concaveIn.geojson | |
520 silly gunzTarPerm extractEntry test/testIn/FeatureCollection.geojson | |
521 silly gunzTarPerm extractEntry test/testIn/concaveIn2.geojson | |
522 silly gunzTarPerm extractEntry test/testIn/concaveInHole.geojson | |
523 silly gunzTarPerm extractEntry test/testIn/convexIn2.geojson | |
524 silly gunzTarPerm extractEntry test/testIn/countries.geojson | |
525 silly gunzTarPerm extractEntry test/testIn/countries_simp.geojson | |
526 silly gunzTarPerm extractEntry test/testIn/donutBadRing.geojson | |
527 silly gunzTarPerm extractEntry test/testIn/donutHoles.geojson | |
528 silly gunzTarPerm extractEntry test/testIn/donutsIn.geojson | |
529 silly gunzTarPerm extractEntry test/testIn/donutsIn2.geojson | |
530 silly gunzTarPerm extractEntry test/testIn/donutsIn3.geojson | |
531 silly gunzTarPerm extractEntry test/testIn/elevation1.geojson | |
532 silly gunzTarPerm extractEntry test/testIn/elevation2.geojson | |
533 silly gunzTarPerm extractEntry test/testIn/elevation3.geojson | |
534 silly gunzTarPerm extractEntry test/testIn/eraseInside.geojson | |
535 silly gunzTarPerm extractEntry test/testIn/eraseOutside.geojson | |
536 silly gunzTarPerm extractEntry test/testIn/erasedFC.geojson | |
537 silly gunzTarPerm extractEntry test/testIn/erasedHole.geojson | |
538 silly gunzTarPerm extractEntry test/testIn/holeContourPoints.geojson | |
539 silly gunzTarPerm extractEntry test/testIn/mergeIn.geojson | |
540 silly gunzTarPerm extractEntry test/testIn/mergeIn2.geojson | |
541 silly gunzTarPerm extractEntry test/testIn/nearIn.geojson | |
542 silly gunzTarPerm extractEntry test/testIn/nearOut.geojson | |
543 silly gunzTarPerm extractEntry test/testIn/openContourPoints.geojson | |
544 silly gunzTarPerm extractEntry test/testIn/openIsoIn.geojson | |
545 silly gunzTarPerm extractEntry test/testIn/tagPoints.geojson | |
546 silly gunzTarPerm extractEntry test/testIn/tagPolygons.geojson | |
547 silly gunzTarPerm extractEntry test.html | |
548 silly gunzTarPerm extractEntry CONTRIBUTING.md | |
549 silly lockFile e3151f67-rs-morgan-npm-turf-0-1-0-package tar:///Users/morgan/.npm/turf/0.1.0/package | |
550 silly lockFile e3151f67-rs-morgan-npm-turf-0-1-0-package tar:///Users/morgan/.npm/turf/0.1.0/package | |
551 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
552 silly lockFile e6111c99-organ-npm-turf-0-1-0-package-tgz tar:///Users/morgan/.npm/turf/0.1.0/package.tgz | |
553 verbose chmod /Users/morgan/.npm/turf/0.1.0/package.tgz 644 | |
554 verbose chown /Users/morgan/.npm/turf/0.1.0/package.tgz [ 501, 20 ] | |
555 silly lockFile 3a52ce78- . | |
556 silly lockFile 3a52ce78- . | |
557 silly publish { name: 'turf', | |
557 silly publish version: '0.1.0', | |
557 silly publish description: 'a node.js library for performing geospatial operations with geojson', | |
557 silly publish main: 'index.js', | |
557 silly publish scripts: { test: 'mocha ./test/' }, | |
557 silly publish repository: | |
557 silly publish { type: 'git', | |
557 silly publish url: 'https://github.com/morganherlocker/turf.git' }, | |
557 silly publish keywords: | |
557 silly publish [ 'gis', | |
557 silly publish 'geo', | |
557 silly publish 'geojs', | |
557 silly publish 'geospatial', | |
557 silly publish 'geography', | |
557 silly publish 'geometry', | |
557 silly publish 'map', | |
557 silly publish 'contour', | |
557 silly publish 'centroid', | |
557 silly publish 'tin', | |
557 silly publish 'extent', | |
557 silly publish 'geojson', | |
557 silly publish 'grid', | |
557 silly publish 'polygon', | |
557 silly publish 'line', | |
557 silly publish 'point', | |
557 silly publish 'area', | |
557 silly publish 'analysis', | |
557 silly publish 'statistics', | |
557 silly publish 'stats', | |
557 silly publish 'midpoint', | |
557 silly publish 'plane', | |
557 silly publish 'quantile', | |
557 silly publish 'jenks', | |
557 silly publish 'sample' ], | |
557 silly publish author: { name: 'morganherlocker' }, | |
557 silly publish license: 'MIT', | |
557 silly publish bugs: { url: 'https://github.com/morganherlocker/turf/issues' }, | |
557 silly publish dependencies: | |
557 silly publish { 'simple-statistics': '~0.7.0', | |
557 silly publish lodash: '~2.4.1', | |
557 silly publish topojson: '~1.4.6', | |
557 silly publish async: '~0.2.10', | |
557 silly publish jsts: '~0.13.4', | |
557 silly publish 'poly-extractor': '0.0.3' }, | |
557 silly publish devDependencies: | |
557 silly publish { should: '~3.1.2', | |
557 silly publish mocha: '~1.17.1', | |
557 silly publish browserify: '~3.28.1', | |
557 silly publish 'uglify-js': '~2.4.12' }, | |
557 silly publish readme: 'turf\n======\n\n[![Build Status](https://travis-ci.org/morganherlocker/turf.png)](https://travis-ci.org/morganherlocker/turf)\n\n![turf](https://raw.github.com/morganherlocker/turf/master/img/turf.png)\n\n***a fast and fully featured open gis engine written in javascript***\n\n- - -\n\n##Installation\n\n```bash\nnpm install turf\n```\n\nTurf can also be run in a browser. To use it, download the [minified file](https://raw.github.com/morganherlocker/turf/master/turf.min.js), and include it in a script tag.\n\n**NOTE: Browser functionality is currently unstable. Please consider using turf from node.js. Work is in progress on resolving the issues.**\n\n```html\n<script src="turf.min.js"></script>\n```\n\nIt can also be installed using bower:\n\n```bash\nbower install turf\n```\n\n- - -\n\n##Features\n\n####geometry\n- [load](#load)\n- [save](#save)\n- [point](#point)\n- [linestring](#linestring)\n- [polygon](#polygon)\n- [featurecollection](#featurecollection)\n\n####joins\n- [inside](#inside)\n- [within](#within)\n- [tag](#tag)\n\n####data\n- [remove](#remove)\n- [filter](#filter)\n- [sample](#sample)\n\n####measurement\n- [distance](#distance)\n- [nearest](#nearest)\n- [bboxPolygon](#bboxPolygon)\n- [envelope](#envelope)\n- [extent](#extent)\n- [square](#square)\n- [size](#size)\n- [center](#center)\n- [centroid](#centroid)\n- [midpoint](#midpoint)\n\n####interpolation\n- [tin](#tin)\n- [grid](#grid)\n- [planepoint](#planepoint)\n- [contour](#contour)\n- [isolines](#isolines)\n- [isobands](#isolines)\n\n####classification\n- [quantile](#quantile)\n- [jenks](#jenks)\n- [reclass](#reclass)\n\n####aggregation\n- [average](#average)\n- [median](#median)\n- [sum](#sum)\n- [min](#min)\n- [max](#max)\n- [count](#count)\n- [deviation](#deviation)\n- [variance](#variance)\n- [aggregate](#aggregate)\n\n####transformation\n- [buffer](#buffer)\n- [bezier](#bezier)\n- [simplify](#simplify)\n- [union](#union)\n- [merge](#merge)\n- [intersect](#intersect)\n- [erase](#erase)\n- [donuts](#donuts)\n- [convex](#convex)\n- [concave](#concave)\n\n####misc\n- [flip](#flip)\n- [explode](#explode)\n- [combine](#combine)\n- [isClockwise](#isClockwise)\n\n**Planned Features**\n\nAdditional feature requests welcomed and encouraged. To request a feature, please add a [github issue](https://github.com/morganherlocker/turf/issues) with a description.\n\n- clockwise\n- krige\n- cluster\n- interval\n- cluster\n- area\n- smooth\n\n- - -\n\n##Examples:\n\n###load\n\nLoads a Feature or FeaturCollection from a file.\n\n```javascript\nvar t = require(\'turf\')\ngeojsonFile = \'/path/to/file/tress.geojson\'\n\nt.load(geoJsonFile, function(err, trees){\n if(err) throw err\n console.log(trees)\n})\n```\n\n\n###save\n\nSaves out a feature or feature collection. \'geojson\' and \'topojson\' are currently supported.\n\n```javascript\nvar path = \'./testOut/poly.geojson\'\nvar poly = t.polygon([[[0,0], [1,0], [1,1],[0,1]]])\nvar type = \'geojson\'\nt.save(path, poly, type, function(err, res){\n if(err) throw err\n console.log(res) // 1\n done()\n})\n```\n\n\n###point\n\nCreates a geojson point Feature based on an x and a y coordinate. Properties can be added optionally.\n\n```javascript\nvar t = require(\'turf\')\n\nvar point1 = t.point(-75.343, 39.984)\nvar point2 = t.point(-75.343, 39.984, {name: \'point 1\', population: 5000})\nconsole.log(point1)\nconsole.log(point2)\n```\n\n\n###linestring\n\nCreates a geojson linestring Feature based on a coordinate array. Properties can be added optionally.\n\n```javascript\nvar t = require(\'turf\')\n\nvar linestring1 = t.linestring([[102.0, -10.0], [103.0, 1.0], [104.0, 0.0], [130.0, 4.0]])\nvar linestring2 = t.linestring([[102.0, -10.0], [103.0, 1.0], [104.0, 0.0], [130.0, 4.0]],\n {name: \'line 1\', distance: 145})\nconsole.log(linestring1)\nconsole.log(linestring2)\n```\n\n\n###polygon\n\nCreates a geojson polygon Feature based on a coordinate array. Properties can be added optionally.\n\n```javascript\nvar t = require(\'turf\')\n\nvar polygon1 = t.point([[[20.0,0.0],[101.0,0.0],[101.0,1.0],[100.0,1.0],[100.0,0.0]]])\nvar polygon2 = t.point([[[20.0,0.0],[101.0,0.0],[101.0,1.0],[100.0,1.0],[100.0,0.0]]],\n {name: \'line 1\', distance: 145})\nconsole.log(polygon1)\nconsole.log(polygon2)\n```\n\n\n###featurecollection\n\nCreates a geojson FeatureCollection based on an array of features.\n\n```javascript\nvar t = require(\'turf\')\nvar pt1 = t.point(-75.343, 39.984, {name: \'Location A\'})\nvar pt2 = t.point(-75.833, 39.284, {name: \'Location B\'})\nvar pt3 = t.point(-75.534, 39.123, {name: \'Location C\'})\n\nvar fc = t.featurecollection([pt1, pt2, pt3])\nconsole.log(fc)\n```\n\n\n###extent\n\nCalculates the extent of all features and returns a bounding box.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(\'path/to/file/example.geojson\', function(err, features){\n if(err) throw err\n t.extent(features, function(extent){\n console.log(extent) // [minX, minY, maxX, maxY]\n })\n})\n```\n\n\n###square\n\nCalculates the minimum square bounding box for another bounding box.\n\n```javascript\nvar t = require(\'turf\')\nvar bbox = [0,0,5,10]]\n\nt.square(bbox, function(err, square){\n if(err) throw err\n console.log(square) // [-2.5, 0, 7.5, 10]\n})\n```\n\n\n###size\n\nTakes a bbox and returns a new bbox with a size expanded or contracted by a factor of X.\n\n```javascript\nvar bbox = [0, 0, 10, 10]\n\nt.size(bbox, 2, function(err, doubled){\n if(err) throw err\n console.log(doubled) // [-10, -10, 20, 20]\n})\n```\n\n\n###center\n\nCalculates the absolute center point of all features.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(\'path/to/file/example.geojson\', function(layer, err){\n if(err) throw err\n t.center(layer, function(center){\n console.log(center)\n })\n})\n```\n\n\n###bboxPolygon\n\nTakes a bbox and returns the equivalent polygon feature.\n\n```javascript\nvar t = require(\'turf\')\nvar bbox = [0,0,10,10]\n\nt.bboxPolygon(bbox, function(err, poly){\n if(err) throw err\n console.log(poly)\n})\n```\n\n\n###envelope\n\nTakes a Feature or FeatureCollection and returns a rectangular polygon feature that encompasses all vertices.\n\n```javascript\nvar t = require(\'turf\')\nvar pt1 = t.point(-75.343, 39.984, {name: \'Location A\'})\nvar pt2 = t.point(-75.833, 39.284, {name: \'Location B\'})\nvar pt3 = t.point(-75.534, 39.123, {name: \'Location C\'})\nvar fc = t.featurecollection([pt1, pt2, pt3])\n\nt.envelope(fc, function(err, envelopePoly){\n if(err) throw err\n console.log(envelopePoly)\n})\n```\n\n\n###centroid\n\nCalculates the centroid of a polygon Feature or FeatureCollection using the geometric mean of all vertices. This lessons the effect of small islands and artifacts when calculating the centroid of a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\nvar poly = t.polygon([[[0,0], [0,10], [10,10] , [10,0]]])\n\nt.centroid(poly, function(err, centroid){\n if(err) throw err\n console.log(centroid) // a point at 5, 5\n})\n```\n\n\n###flip\n\nTakes a point, linestring, polygon, or featurecollection, and flips all of its coordinates from [x, y] to [y, x].\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly = t.polygon([[[1,0], [1,0], [1,2]], [[.2,.2], [.3,.3],[.1,.2]]])\nt.flip(poly, function(err, flipped){\n if(err) throw err\n console.log(flipped)\n})\n```\n\n\n###explode\n\nTakes a Feature or FeatureCollection and return all vertices as a collection of points.\n\n```javascript\nvar t = require(\'turf\')\nvar poly = t.polygon([[[0,0], [0,10], [10,10] , [10,0]]])\n\nt.explode(poly, function(err, vertices){\n if(err) throw err\n console.log(vertices)\n})\n```\n\n\n###combine\n\nCombines feature collection of point, linestring, or polygon features into multipoint, multilinestring, or multipolygon features.\n\n```javascript\nvar t = require(\'turf\')\nvar pt1 = t.point(50, 1)\nvar pt2 = t.point(100, 101)\nvar fc = t.featurecollection([pt1, pt2])\n\nt.combine(fc, function(err, combined){\n if(err) throw err\n console.log(combined)\n})\n```\n\n\n###isClockwise\n\nTakes a ring and return true or false whether or not the ring is clockwise or counter-clockwise.\n\n```javascript\nvar t = require(\'turf\')\nvar clockwiseRing = [[0,0],[1,1],[1,0],[0,0]]\nvar counterClockwiseRing = [[0,0],[1,0],[1,1],[0,0]]\n\nvar clockwise = t.isClockwise(clockwiseRing)\nvar counterClockwise = t.isClockwise(counterClockwiseRing)\n\nconsole.log(clockwise) // true\nconsole.log(counterClockwise) // false\n```\n\n\n###remove\n\nRemoves any features from a feature collection that match a property value.\n\n```javascript\nvar t = require(\'turf\')\nvar trees = t.featurecollection([t.point(1,2, {species: \'oak\'}),\n t.point(2,1, {species: \'dogwood\'}),\n t.point(3,1, {species: \'maple\'})])\n\nt.remove(points, \'species\', \'dogwood\', function(err, result) {\n if(err) throw err\n console.log(result)\n})\n```\n\n\n###filter\n\nKeeps any features from a feature collection that match a property value.\n\n```javascript\nvar t = require(\'turf\')\nvar trees = t.featurecollection([\n t.point(1,2, {species: \'oak\'}),\n t.point(2,1, {species: \'birch\'}),\n t.point(3,1, {species: \'oak\'}),\n t.point(2,2, {species: \'redwood\'}),\n t.point(2,3, {species: \'maple\'}),\n t.point(4,2, {species: \'oak\'})\n ])\n\nt.filter(trees, \'species\', \'oak\', function(err, oaks){\n if(err) throw err\n console.log(oaks)\n})\n```\n\n\n###inside\n\nChecks to see if a point is inside of a polygon. The polygon can be convex or concave.\n\n```javascript\nvar t = require(\'turf\')\nvar poly = t.polygon([[[0,0], [50, 50], [0,100], [100,100], [100,0]]])\nvar pt = t.point(75, 75)\n\nt.inside(pt, poly, function(err, isInside){\n if(err) throw err\n console.log(isInside) // true\n})\n```\n\n\n###within\n\nReturns a feature collection of points representing all points that fall withing a collection of polygons.\n\n```javascript\nvar t = require(\'turf\')\nvar poly = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.within(ptFC, polyFC, function(err, ptsWithin){\n console.log(ptsWithin) // feature collection with 3 pts\n})\n```\n\n\n###buffer\n\nBuffers a point, linestring, or polygon feature to a given radius. Units supported are miles, kilometers, and degrees.\n\n\n```javascript\nvar t = require(\'turf\')\nvar pt = t.point(0, 0.5)\nvar unit = \'miles\'\n\nt.buffer(pt, 10, unit, function(err, buffered){\n if(err) throw err\n console.log(buffered)\n})\n```\n\n\n###distance\n\nCalculates the distance between two point features in degrees, radians, miles, or kilometers. This uses the haversine formula to account for global curvature.\n\n```javascript\nvar t = require(\'turf\')\nvar point1 = t.point(-75.343, 39.984)\nvar point2 = t.point(-75.534, 39.123)\nvar unit = \'miles\' // or \'kilometers\', \'degrees\', \'radians\'\n\nt.distance(point1, point2, unit, function(err, distance){\n if(err) throw err\n console.log(distance)\n})\n```\n\n\n###nearest\n\nReturns the nearest point feature.\n\n```javascript\nvar t = require(\'turf\')\nvar inPoint = t.point(-75.4, 39.4, {name: \'Location A\'})\n\nvar pt1 = t.point(-75.343, 39.984, {name: \'Location B\'})\nvar pt2 = t.point(-75.833, 39.284, {name: \'Location C\'})\nvar pt3 = t.point(-75.534, 39.123, {name: \'Location D\'})\nvar inFeatures = t.featurecollection([pt1, pt2, pt3])\n\nt.nearest(inPoint, inFeatures, function(err, closestPoint){\n if(err) throw err\n console.log(closestPoint)\n})\n```\n\n\n###tin\n\nTakes a set of points and the name of a z-value property and creates a tin (Triangulated Irregular Network). These are often used for developing elevation contour maps or stepped heat visualizations.\n\n```javascript\nvar t = require(\'turf\')\nvar z = \'elevation\'\n\nt.load(\'/path/to/pointsfeatures/elevationPoints.geojson\', function(err, points){\n t.tin(points, z, function(err, tin){\n if(err) throw err\n console.log(tin)\n })\n})\n```\n\n\n###grid\n\nTakes a bounding box and a cell depth and outputs a feature collection of points in a grid.\n\n```javascript\nvar t = require(\'turf\')\nvar depth = 15\n\nt.grid([0,0,10,10], depth, function(err, grid){\n console.log(grid) // 15x15 grid of points in a FeatureCollection\n})\n```\n\n\n###planepoint\n\nTakes a trianglular plane and calculates the z value for a point on the plane.\n\n```javascript\nvar t = require(\'turf\')\nvar point = t.point(-75.3221, 39.529)\n// triangle is a polygon with "a", "b", and "c" values representing\n// the values of the coordinates in order.\nvar triangle = t.polygon(\n [[[-75.1221,39.57],[-75.58,39.18],[-75.97,39.86]]],\n {"a": 11, "b": 122, "c": 44}\n )\n\nt.planepoint(point, triangle, function(err, zValue){\n if(err) throw err\n console.log(zValue)\n})\n```\n\n\n###midpoint\n\nTakes two point features and returns the mid point.\n\n```javascript\nvar t = require(\'turf\')\nvar pt1 = t.point(0,0)\nvar pt2 = t.point(10, 0)\n\nt.midpoint(pt1, pt2, function(err, midpoint){\n if(err) throw err\n console.log(midpoint)\n})\n\n```\n\n\n###quantile\n\nTakes a set of features, a property name, and a set of percentiles and outputs a quantile array. This can be passed as a break array to the isolines function or the isobands function.\n\n```javascript\nvar t = require(\'turf\')\nvar propertyName = \'elevation\'\nvar percentiles = [10,30,40,60,80,90,99]\n\nt.load(\'./testIn/Points3.geojson\', function(err, pts){\n if(err) throw err\n t.quantile(pts, propertyName, percentiles, function(err, quantiles){\n if(err) throw err\n console.log(quantiles) // [ 12, 25, 29, 52, 76, 99, 143 ]\n })\n})\n```\n\n\n###jenks\n\nTakes a set of features, a property name, and the desired number of breaks and outputs an array of natural breaks. This classification can be used in the isolines function or the isobands function, or for theming.\n\n```javascript\nvar t = require(\'turf\')\nvar propertyName = \'elevation\'\nvar num = 10\n\nt.load(\'./testIn/Points3.geojson\', function(err, pts){\n if(err) throw err\n t.jenks(pts, \'elevation\', num, function(err, breaks){\n if(err) throw err\n done() // [ 11, 12, 18, 25, 29, 41, 50, 55, 76, 90, 143 ]\n })\n})\n```\n\n\n###reclass\n\nTakes a feature collection, a in field, an out field, and an array of translations and outputs an identical feature collection with the out field property populated.\n\n```javascript\nvar t = require(\'turf\')\nvar inField = \'elevation\',\n outField = \'heightIndex\',\n // 0 to 20 will map to 1, 20 to 40 will map to 2, etc.\n translations = [[0, 20, 1], [20, 40, 2], [40, 60 , 3], [60, Infinity, 4]]\n\nt.load(\'./testIn/Points3.geojson\', function(err, pts){\n if(err) throw err\n t.reclass(pts, inField, outField, translations, function(err, outPts){\n if(err) throw err\n console.log(outPts)\n })\n})\n```\n\n\n###contour [deprecated: split into isolines for line contours and isobands for polygon filled contours]\n\nTakes a FeatureCollection of points with z values and an array of value breaks and generates contour polygons. This is a great way to visualize interpolated density on a map. It is often used for elevation maps, weather maps, and isocrones. The main advantage over a heat map is that contours allow you to see definitive value boundaries, and the polygons can be used to aggregate data. For example, you could get the 5000 ft elevation contour of a mountain and the 10000 ft elevation contour, then aggregate the number of trees in each to see how elevation affects tree survival.\n\n```javascript\nvar t = require(\'turf\')\nvar z = \'elevation\'\nvar resolution = 15\nvar breaks = [.1, 22, 45, 55, 65, 85, 95, 105, 120, 180]\nvar donuts = false\n\nt.load(\'../path/to/points.geojson\', function(err, points){\n t.contour(points, z, resolution, breaks, donuts, function(err, contours){\n if(err) throw err\n console.log(contours)\n })\n})\n```\n\n\n###isolines\n\nTakes a FeatureCollection of points with z values and an array of value breaks and generates contour isolines. These are commonly used to create elevation maps, but can be used for general data interpolation as well.\n\n```javascript\nvar t = require(\'turf\')\nvar z = \'elevation\'\nvar resolution = 15\nvar breaks = [.1, 22, 45, 55, 65, 85, 95, 105, 120, 180]\n\nt.load(\'../path/to/points.geojson\', function(err, points){\n t.isolines(points, z, resolution, breaks, function(err, contours){\n if(err) throw err\n console.log(isolines)\n })\n})\n```\n\n\n###isobands\n\nTakes a FeatureCollection of points with z values and an array of value breaks and generates filled contour isobands. These are commonly used to create elevation maps, but can be used for general data interpolation as well.\n\n```javascript\nvar t = require(\'turf\')\nvar z = \'elevation\'\nvar resolution = 15\nvar breaks = [.1, 22, 45, 55, 65, 85, 95, 105, 120, 180]\n\nt.load(\'../path/to/points.geojson\', function(err, points){\n t.isobands(points, z, resolution, breaks, function(err, contours){\n if(err) throw err\n console.log(isolines)\n })\n})\n```\n\n\n###sample\n\nTakes a feature collection and returns N random features as a feature collection.\n\n```javascript\nvar t = require(\'turf\')\nvar num = 10\n\nt.load(\'./testIn/Points3.geojson\', function(err, pts){\n if(err) throw err\n t.sample(pts, num, function(err, outPts){\n if(err) throw err\n console.log(outPts)\n })\n})\n```\n\n\n###tag\n\nPerforms a spatial join on a set of points from a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(\'./testIn/tagPoints.geojson\', function(err, points){\n t.load(\'./testIn/tagPolygons.geojson\', function(err, polygons){\n t.tag(points, polygons, \'polyID\', \'containingPolyID\', function(err, taggedPoints){\n console.log(taggedPoints)\n })\n })\n})\n```\n\n\n###bezier\n\nTakes a linestring and outputs a curved version of the line.\n\n```javascript\nvar t = require(\'turf\')\nvar resolution = 5000\nvar intensity = .85\nvar lineIn = t.linestring([\n [\n -80.08724212646484,\n 32.77428536643231\n ],\n [\n -80.03746032714844,\n 32.84007757059952\n ],\n [\n -80.01548767089844,\n 32.74512501406368\n ],\n [\n -79.95368957519531,\n 32.850461360442424\n ]\n ])\n\nt.bezier(lineIn, 5000, .85, function(err, lineOut){\n if(err) throw err\n console.log(lineOut)\n})\n```\n\n\n###simplify\n\nTakes a feature collection of polygons or linestrings and returns a simplified version, preserving topology of shared boundaries.\n\n```javascript\nvar t = require(\'turf\')\nvar quantization = 50\nvar minimumArea = 0\n\nt.load(\'./path/to/complex.geojson\', function(err, polys){\n t.simplify(polys, quantization, minimumArea, function(err, simplified){\n if(err) throw err\n console.log(simplified)\n })\n})\n```\n\n\n###average\n\nCalculates the average value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(5,5, {population: 200})\nvar pt2 = t.point(1,3, {population: 600})\nvar pt3 = t.point(14,2, {population: 100})\nvar pt4 = t.point(13,1, {population: 200})\nvar pt5 = t.point(19,7, {population: 300})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.average(polyFC, ptFC, \'population\', \'pop_avg\', function(err, averaged){\n if(err) throw err\n\n console.log(averaged.features[0].properties.pop_avg) // 400\n console.log(averaged.features[1].properties.pop_avg) // 200\n})\n```\n\n\n###median\n\nCalculates the median value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(5,5, {population: 200})\nvar pt2 = t.point(1,3, {population: 600})\nvar pt3 = t.point(14,2, {population: 100})\nvar pt4 = t.point(13,1, {population: 200})\nvar pt5 = t.point(19,7, {population: 300})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.median(polyFC, ptFC, \'population\', \'pop_median\', function(err, medianed){\n if(err) throw err\n\n console.log(medianed.features[0].properties.pop_median) // 400\n console.log(medianed.features[1].properties.pop_median) // 200\n})\n```\n\n\n###sum\n\nCalculates the sum value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.sum(polyFC, ptFC, \'population\', \'pop_sum\', function(err, summed){\n if(err) throw err\n\n console.log(summed.features[0].properties.pop_sum) // 900\n console.log(summed.features[1].properties.pop_sum) // 1300\n})\n```\n\n\n###min\n\nCalculates the min value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.min(polyFC, ptFC, \'population\', \'pop_min\', function(err, minPolys){\n if(err) throw err\n\n console.log(minPolys.features[0].properties.pop_min) // 400\n console.log(minPolys.features[1].properties.pop_min) // 200\n})\n```\n\n\n###max\n\nCalculates the min value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.max(polyFC, ptFC, \'population\', \'pop_max\', function(err, maxPolys){\n if(err) throw err\n\n console.log(maxPolys.features[0].properties.pop_max) // 500\n console.log(maxPolys.features[1].properties.pop_max) // 600\n})\n```\n\n\n###count\n\nCalculates the count of points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.count(polyFC, ptFC, \'population\', \'point_count\', function(err, counted){\n if(err) throw err\n\n console.log(counted.features[0].properties.point_count) // 2\n console.log(counted.features[1].properties.point_count) // 3\n})\n```\n\n\n###deviation\n\nCalculates the standard deviation value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.deviation(polyFC, ptFC, \'population\', \'pop_deviation\', function(err, deviated){\n if(err) throw err\n\n console.log(deviated.features[0].properties.pop_deviation)\n console.log(deviated.features[1].properties.pop_deviation)\n})\n```\n\n\n###variance\n\nCalculates the standard deviation value of a field for points within a set of polygons.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10], [0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(1,1, {population: 500})\nvar pt2 = t.point(1,3, {population: 400})\nvar pt3 = t.point(14,2, {population: 600})\nvar pt4 = t.point(13,1, {population: 500})\nvar pt5 = t.point(19,7, {population: 200})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\n\nt.variance(polyFC, ptFC, \'population\', \'pop_variance\', function(err, varianced){\n if(err) throw err\n\n console.log(varianced.features[0].properties.pop_variance)\n console.log(varianced.features[1].properties.pop_variance)\n})\n```\n\n\n###aggregate\n\nTakes a set of polygons, a set of points, and an array of aggregations, then perform them. Sum, average, count, min, max, and deviation are supported.\n\n```javascript\nvar t = require(\'turf\')\n\nvar poly1 = t.polygon([[[0,0],[10,0],[10,10],[0,10]]])\nvar poly2 = t.polygon([[[10,0],[20,10],[20,20], [20,0]]])\nvar polyFC = t.featurecollection([poly1, poly2])\nvar pt1 = t.point(5,5, {population: 200})\nvar pt2 = t.point(1,3, {population: 600})\nvar pt3 = t.point(14,2, {population: 100})\nvar pt4 = t.point(13,1, {population: 200})\nvar pt5 = t.point(19,7, {population: 300})\nvar ptFC = t.featurecollection([pt1, pt2, pt3, pt4, pt5])\nvar aggregations = [\n {\n aggregation: \'sum\',\n inField: \'population\',\n outField: \'pop_sum\'\n },\n {\n aggregation: \'average\',\n inField: \'population\',\n outField: \'pop_avg\'\n },\n {\n aggregation: \'median\',\n inField: \'population\',\n outField: \'pop_median\'\n },\n {\n aggregation: \'min\',\n inField: \'population\',\n outField: \'pop_min\'\n },\n {\n aggregation: \'max\',\n inField: \'population\',\n outField: \'pop_max\'\n },\n {\n aggregation: \'deviation\',\n inField: \'population\',\n outField: \'pop_deviation\'\n },\n {\n aggregation: \'variance\',\n inField: \'population\',\n outField: \'pop_variance\'\n },\n {\n aggregation: \'count\',\n inField: \'\',\n outField: \'point_count\'\n }\n]\n\nt.aggregate(polyFC, ptFC, aggregations, function(err, polys){\n if(err) throw err\n console.log(polys)\n})\n```\n\n\n###union\n\nCalculates the union of two polygon features or feature collections.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(__dirname + \'/testIn/Intersect1.geojson\', function(err, polys1){\n t.load(__dirname + \'/testIn/Intersect2.geojson\', function(err, polys2){\n t.union(polys1, polys2, function(err, unioned){\n if(err) throw err\n console.log(unioned)\n })\n })\n})\n```\n\n\n###merge\n\nTakes a feature collection of polygons and outputs a single merged polygon feature.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(__dirname + \'/testIn/mergeIn.geojson\', function(err, polys){\n t.merge(polys, function(err, merged){\n if(err) throw err\n console.log(unioned)\n })\n})\n```\n\n\n###intersect\n\nCalculates the intersection of two polygon features or feature collections.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(__dirname + \'/testIn/Intersect1.geojson\', function(err, polys1){\n t.load(__dirname + \'/testIn/Intersect2.geojson\', function(err, polys2){\n t.intersect(polys1, polys2, function(err, intersected){\n if(err) throw err\n console.log(intersected)\n })\n })\n})\n```\n\n\n###erase\n\nReturns polygon 1 minus polygon 2.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(__dirname + \'/testIn/Intersect1.geojson\', function(err, polys1){\n t.load(__dirname + \'/testIn/Intersect2.geojson\', function(err, polys2){\n t.erase(polys1, polys2, function(err, erased){\n if(err) throw err\n console.log(erased)\n })\n })\n})\n```\n\n\n###donuts\n\nTakes a set of overlapping polygons and returns non overlapping donuts.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(\'../path/to/donutsIn.geojson\', function(err, donutsIn){\n if(err) throw err\n t.donuts(donutsIn, function(err, donuts){\n if(err) throw err\n console.log(donuts)\n })\n})\n```\n\n\n###convex\n\nTakes a set of points and returns a convex hull polygon.\n\n```javascript\nvar t = require(\'turf\')\n\nt.load(\'../test/testIn/convexIn.geojson\', function(err, points){\n t.convex(points, function(err, hull){\n if(err) throw err\n fs.writeFileSync(\'./testOut/convex.geojson\', JSON.stringify(hull))\n console.log(hull)\n })\n})\n```\n\n\n###concave\n\nTakes a set of points and returns a concave hull polygon.\n\n```javascript\nvar t = require(\'turf\')\nvar maxEdge = 2.5\n\nt.load(\'../test/testIn/concaveIn.geojson\', function(err, points){\n t.concave(points, maxEdge, function(err, hull){\n if(err) throw err\n console.log(hull)\n })\n})\n```\n\n\n- - -\n\n\nThis library is built and maintained by [@morganherlocker](https://twitter.com/morganherlocker) :)\n', | |
557 silly publish readmeFilename: 'README.md', | |
557 silly publish homepage: 'https://github.com/morganherlocker/turf', | |
557 silly publish _id: '[email protected]', | |
557 silly publish dist: { shasum: '9c5b26182b591374ef2e4053b28d737278384c7f' }, | |
557 silly publish _from: '.' } | |
558 verbose url raw turf | |
559 verbose url resolving [ 'https://registry.npmjs.org/', './turf' ] | |
560 verbose url resolved https://registry.npmjs.org/turf | |
561 info trying registry request attempt 1 at 11:04:13 | |
562 http PUT https://registry.npmjs.org/turf | |
563 http 409 https://registry.npmjs.org/turf | |
564 verbose url raw turf?write=true | |
565 verbose url resolving [ 'https://registry.npmjs.org/', './turf?write=true' ] | |
566 verbose url resolved https://registry.npmjs.org/turf?write=true | |
567 info trying registry request attempt 1 at 11:04:33 | |
568 http GET https://registry.npmjs.org/turf?write=true | |
569 http 200 https://registry.npmjs.org/turf?write=true | |
570 error publish fail Cannot publish over existing version. | |
570 error publish fail Update the 'version' field in package.json and try again. | |
570 error publish fail | |
570 error publish fail If the previous version was published in error, see: | |
570 error publish fail npm help unpublish | |
570 error publish fail | |
570 error publish fail To automatically increment version numbers, see: | |
570 error publish fail npm help version | |
571 error System Darwin 12.5.0 | |
572 error command "node" "/usr/local/bin/npm" "publish" | |
573 error cwd /Users/morgan/Documents/turf | |
574 error node -v v0.10.26 | |
575 error npm -v 1.4.6 | |
576 error code EPUBLISHCONFLICT | |
577 verbose exit [ 1, true ] |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment