navit  0.5.3-trunk
coastline.c File Reference
#include "maptool.h"
#include "debug.h"

Data Structures

struct  coastline_tile
 
struct  coastline_tile_data
 

Functions

static int distance_from_ll (struct coord *c, struct rect *bbox)
 
static struct geom_poly_segmentfind_next (struct rect *bbox, GList *segments, struct coord *c, int exclude, struct coord *ci)
 
static void close_polygon (struct item_bin *ib, struct coord *from, struct coord *to, int dir, struct rect *bbox, int *edges)
 
static GListtile_data_to_segments (int *tile_data)
 
static void tile_collector_process_tile (char *tile, int *tile_data, struct coastline_tile_data *data)
 
static void ocean_tile (GHashTable *hash, char *tile, char c, osmid wayid, struct item_bin_sink *out)
 
static void tile_collector_add_siblings (char *tile, struct coastline_tile *ct, struct coastline_tile_data *data)
 
static int tile_sibling_edges (GHashTable *hash, char *tile, char c)
 
static void tile_collector_add_siblings2 (char *tile, struct coastline_tile *ct, struct coastline_tile_data *data)
 
static void foreach_tile_func (gpointer key, gpointer value, gpointer user_data)
 
static void foreach_tile (struct coastline_tile_data *data, void(*func)(char *, struct coastline_tile *, struct coastline_tile_data *))
 
static int tile_collector_finish (struct item_bin_sink_func *tile_collector)
 
static int coastline_processor_process (struct item_bin_sink_func *func, struct item_bin *ib, struct tile_data *tile_data)
 
static struct item_bin_sink_funccoastline_processor_new (struct item_bin_sink *out)
 
static void coastline_processor_finish (struct item_bin_sink_func *coastline_processor)
 
void process_coastlines (FILE *in, FILE *out)
 

Function Documentation

◆ close_polygon()

static void close_polygon ( struct item_bin ib,
struct coord from,
struct coord to,
int  dir,
struct rect bbox,
int *  edges 
)
static

◆ coastline_processor_finish()

static void coastline_processor_finish ( struct item_bin_sink_func coastline_processor)
static

◆ coastline_processor_new()

◆ coastline_processor_process()

static int coastline_processor_process ( struct item_bin_sink_func func,
struct item_bin ib,
struct tile_data tile_data 
)
static

◆ distance_from_ll()

static int distance_from_ll ( struct coord c,
struct rect bbox 
)
static

◆ find_next()

static struct geom_poly_segment* find_next ( struct rect bbox,
GList segments,
struct coord c,
int  exclude,
struct coord ci 
)
static

◆ foreach_tile()

static void foreach_tile ( struct coastline_tile_data data,
void(*)(char *, struct coastline_tile *, struct coastline_tile_data *)  func 
)
static

◆ foreach_tile_func()

static void foreach_tile_func ( gpointer  key,
gpointer  value,
gpointer  user_data 
)
static

References data, key, and value.

Referenced by foreach_tile().

◆ ocean_tile()

static void ocean_tile ( GHashTable *  hash,
char *  tile,
char  c,
osmid  wayid,
struct item_bin_sink out 
)
static

◆ process_coastlines()

◆ tile_collector_add_siblings()

static void tile_collector_add_siblings ( char *  tile,
struct coastline_tile ct,
struct coastline_tile_data data 
)
static

◆ tile_collector_add_siblings2()

static void tile_collector_add_siblings2 ( char *  tile,
struct coastline_tile ct,
struct coastline_tile_data data 
)
static

◆ tile_collector_finish()

◆ tile_collector_process_tile()

◆ tile_data_to_segments()

static GList* tile_data_to_segments ( int *  tile_data)
static

◆ tile_sibling_edges()

static int tile_sibling_edges ( GHashTable *  hash,
char *  tile,
char  c 
)
static

References c, and coastline_tile::edges.

Referenced by tile_collector_add_siblings2().