Commit Graph

1215 Commits

Author SHA1 Message Date
Eric Fischer
c177b8bed2 No need to remove no-ops here unless we clipped 2014-12-11 16:08:53 -08:00
Eric Fischer
d69431e16b Partition each tile into children instead of repeatedly clipping the parent. 2014-12-11 15:46:54 -08:00
Eric Fischer
105dfa73d7 Use bounding box for quick accept/reject before detailed clipping. 2014-12-11 13:34:50 -08:00
Eric Fischer
a867646dfd Don't introduce bogus geometries in clipped-away features. 2014-12-10 12:07:54 -08:00
Eric Fischer
b068635acf Elevation in geometry is a warning, not an error.
Only complain about the first null geometry, not ever one.
2014-12-09 15:23:22 -08:00
Eric Fischer
40ecfc0668 Add missing newline to error message. 2014-12-09 15:17:20 -08:00
Tom MacWright
38a41f4df8 Installation instructions 2014-12-09 11:03:44 -05:00
Eric Fischer
380550ce85 Remember to remove the closepath after clipping away a polygon 2014-12-04 14:54:11 -08:00
Eric Fischer
028fef470e Fix the major bug: forgetting to offset back to world coordinates 2014-12-04 14:08:36 -08:00
Eric Fischer
b7b476b36c Don't introduce bogus geometries in clipped-away features. 2014-12-03 16:30:35 -08:00
Eric Fischer
08ff40e42f Trying to follow Vlad's suggestion and work from the top down.
Doesn't quite work yet, but seems like the right thing to do.
From the bottom up, indexing is a mess because of the buffering,
and includes unneeded areas in the bounding boxes of big features.
2014-12-03 16:18:43 -08:00
Eric Fischer
eaeb55bf71 Distinguish between signed and unsigned in the temporary file 2014-12-02 18:03:07 -08:00
Eric Fischer
a1e7426956 Sprinkle consts and casts to make it valid C++ as well as C 2014-12-02 14:17:49 -08:00
Eric Fischer
77c4ce4171 Make the bin directory on install if it doesn't already exist 2014-12-02 11:38:48 -08:00
Eric Fischer
cc58588724 More sensible error message when there are no valid geometries 2014-11-24 22:50:12 -08:00
Eric Fischer
2bd0cb9f43 Don't override PREFIX if it is set in the environment 2014-11-24 10:35:06 -08:00
Eric Fischer
bb13dc03e5 Gzip -9 tiles. Don't bother writing tiles whose features all got clipped away. 2014-11-20 14:33:45 -08:00
Eric Fischer
82c0f67813 Explicitly use /usr/local, as Yosemite apparently needs 2014-11-15 23:46:39 -08:00
Eric Fischer
a1769416d1 Fix operator precedence warning 2014-11-14 15:26:59 -08:00
Eric Fischer
896f05aea6 Use gzip tile compression to match current tile server 2014-11-14 14:21:12 -08:00
Eric Fischer
ffe4c95376 Calculate point dropping during encoding instead of tiling
so it is consistent across tile boundaries, and so every point
that exists at zoom x always also exists at zoom x+1.
2014-11-14 12:42:50 -08:00
Eric Fischer
428be06442 Accept gzip compression as well as zlib 2014-11-13 22:47:54 -08:00
Eric Fischer
8210f83912 Make the progress indicator less chatty 2014-11-13 10:48:59 -08:00
Eric Fischer
e7aa05e7e4 Don't immediately fail when a very low tile resolution is specified manually 2014-11-12 17:06:58 -08:00
Eric Fischer
5595a087c7 Quick reject by bounding box of linear features too small to draw 2014-11-12 15:57:45 -08:00
Eric Fischer
2b6ad9968f Add a flag to exclude all properties except ones explicitly named 2014-11-12 12:41:56 -08:00
Eric Fischer
b05c5a9583 Skip over properties with null values instead of considering it an error 2014-11-12 12:19:39 -08:00
Eric Fischer
1aea522ef5 Fix another overflow that broke line clipping at zoom level 1. 2014-11-07 12:51:26 -08:00
Eric Fischer
575a24b095 Use a set instead of a map to reduce needless memory overhead 2014-11-06 11:29:11 -08:00
Eric Fischer
ea292def47 Make duplicate trimming less bad: only trim features indexed >1 time 2014-11-06 11:27:10 -08:00
Eric Fischer
7f6a5dc005 The maxzoom=0 case couldn't have worked 2014-11-06 11:05:09 -08:00
Eric Fischer
241d96e57c Save a few more bytes per geometry in the temporary file
by using bytes instead of ints for the drawing operations
2014-11-05 14:37:54 -08:00
Eric Fischer
c24cfada61 Move feature type to index so point skipping can avoid looking up geometry
Which should avoid having to page the geometry in if there is
more data than will fit in memory
2014-11-05 12:18:03 -08:00
Eric Fischer
bc4527b25d Add an option to set the directory for the temporary files 2014-11-05 10:34:44 -08:00
Eric Fischer
097d6ccf7d Use a bitfield to make the index 2/3 the size, to save some disk churn 2014-11-05 10:07:05 -08:00
Eric Fischer
a039aca860 Read-only memory map for merging, since there's no reason to write 2014-11-04 10:08:30 -08:00
Eric Fischer
3e3fdcbab4 Bring over the multistage sort from datamaps to avoid Mac crashes 2014-11-03 22:47:41 -08:00
Eric Fischer
3f9f50258c Just use a standard C++ type for deduplicating instead of reinventing the wheel 2014-10-31 16:50:28 -07:00
Eric Fischer
8e84a8ffda I forgot how bad sorted data is in binary trees.
Swizzle the bits so deduplicating features isn't so terrible.
2014-10-31 16:41:11 -07:00
Eric Fischer
ea7216641b If the requested tile doesn't exist, try climbing up to a lower zoom 2014-10-27 16:00:16 -07:00
Eric Fischer
984ac17d6c Use the same default ground precision whatever the base zoom is. 2014-10-27 14:36:13 -07:00
Eric Fischer
a09bf3469d Fix line clipping overflow bug 2014-10-27 14:24:11 -07:00
Eric Fischer
3cd6fcfbe0 Add option to set buffer size. Pass it through to clipping functions. 2014-10-27 13:20:17 -07:00
Eric Fischer
4cb56a6b11 The indexing side of buffering features at the edges of tiles 2014-10-27 12:56:51 -07:00
Eric Fischer
e0826a12c6 Much faster at low zooms to check for duplicates before simplifying 2014-10-27 10:00:46 -07:00
Eric Fischer
be94bd0dd5 Remove an unused field from the index structure 2014-10-27 09:52:25 -07:00
Eric Fischer
4b171c74b7 Constrain calculated center point to be within the bounding box
It could come out bigger because it is calculated from the center
of the densest tile, not actually the centroid.
2014-10-26 13:12:29 -07:00
Eric Fischer
9bb4a549ca Silence warnings about unused variables 2014-10-24 17:24:04 -07:00
Eric Fischer
46100c34df Move projection and tile arithmetic to its own file 2014-10-24 17:22:14 -07:00
Eric Fischer
754dbf152a Remove dead code 2014-10-24 15:23:35 -07:00