mirror of
https://github.com/felt/tippecanoe.git
synced 2026-10-02 16:35:40 +02:00
* Plumb a clip bounding box around through overzoom * Actually do some clipping * Add a test * Fix post-binning clipping * Factoring out geometry parsing from feature parsing * Accept a clip polygon argument to tippecanoe-overzoom * Progress in the direction of polygon clipping * Fix the wagyu flags. We need intersection, not union * Remove debug spew * Clip points to polygon bounds too * Copy the geometric binning code to serve as intersection-finding code * Add clipper2 for linestring clipping * Compiles, but does not actually seem to clip. Hmm. * Oh, it helps if I actually call the function * Add clipping tests * Add missing fixture, and don't crash if it is missing * Remember to do polygon clipping after binning too * Fix scaling before post-binning clipping. Add test. * Remove unused parts of clipper * Rename for consistency * Revert accidentally added line * Clip the clip regions to the tile bounds to reduce their complexity * Add a test of clipping the clip region down to the tile boundary * Update version and changelog
20 lines
1.1 KiB
C++
20 lines
1.1 KiB
C++
#define GEOM_POINT 0 /* array of positions */
|
|
#define GEOM_MULTIPOINT 1 /* array of arrays of positions */
|
|
#define GEOM_LINESTRING 2 /* array of arrays of positions */
|
|
#define GEOM_MULTILINESTRING 3 /* array of arrays of arrays of positions */
|
|
#define GEOM_POLYGON 4 /* array of arrays of arrays of positions */
|
|
#define GEOM_MULTIPOLYGON 5 /* array of arrays of arrays of arrays of positions */
|
|
#define GEOM_TYPES 6
|
|
|
|
extern const char *geometry_names[GEOM_TYPES];
|
|
extern int geometry_within[GEOM_TYPES];
|
|
extern int mb_geometry[GEOM_TYPES];
|
|
|
|
void json_context(json_object *j);
|
|
void parse_coordinates(int t, json_object *j, drawvec &out, int op, const char *fname, int line, json_object *feature);
|
|
std::pair<int, drawvec> parse_geometry(json_object *geometry, json_pull *jp, json_object *j,
|
|
int z, int x, int y, long long extent, bool fix_longitudes, bool mvt_style);
|
|
std::vector<mvt_layer> parse_layers(FILE *fp, int z, unsigned x, unsigned y, int extent, bool fix_longitudes);
|
|
|
|
serial_val stringify_value(json_object *value, const char *reading, int line, json_object *feature);
|