void test_many_layers(){ simplet_map_t *map; assert((map = build_map())); assert(simplet_map_is_valid(map)); simplet_layer_t *layer = simplet_map_add_layer(map, "./data/ne_10m_admin_0_countries.shp"); simplet_query_t *query = simplet_layer_add_query(layer, "SELECT * from 'ne_10m_admin_0_countries' where SOV_A3 = 'US1'"); simplet_query_add_style(query, "fill", "#cc0000dd"); simplet_map_render_to_png(map, "./layers.png"); assert(SIMPLET_OK == simplet_map_get_status(map)); simplet_map_free(map); }
void test_bunk(){ simplet_map_t *map; assert((map = simplet_map_new())); simplet_map_set_srs(map, "+proj=longlat +ellps=GRS80 +datum=NAD83 +no_defs"); simplet_map_set_size(map, 256, 256); simplet_map_set_bounds(map, -74.043825, 40.570771, -73.855660, 40.739255); simplet_layer_t *layer = simplet_map_add_layer(map, "./data/tl_2010_36047_roads.shp"); simplet_layer_add_query(layer, "SELECT * from 'tl_2010_36047_roads_bunk'"); simplet_map_render_to_png(map, "./bunk.png"); assert(SIMPLET_OK != simplet_map_get_status(map)); printf("ERROR AS EXPECTED: %s", simplet_map_status_to_string(map)); simplet_map_free(map); }
int main(){ simplet_map_t *map; if(!(map = simplet_map_new())) exit(1); simplet_map_set_slippy(map, 0, 0, 0); simplet_map_set_size(map, 1000, 1000); simplet_map_set_bgcolor(map, "#ddeeff"); simplet_layer_t *layer = simplet_map_add_layer(map, "../data/ne_10m_admin_0_countries.shp"); simplet_query_t *query = simplet_layer_add_query(layer, "SELECT * from 'ne_10m_admin_0_countries'"); simplet_query_add_style(query, "stroke", "#226688"); simplet_query_add_style(query, "line-join", "round"); simplet_query_add_style(query, "weight", "3"); simplet_query_t *query2 = simplet_layer_add_query(layer, "SELECT * from 'ne_10m_admin_0_countries'"); simplet_query_add_style(query, "blend", "over"); simplet_query_add_style(query2, "weight", "0.5"); simplet_query_add_style(query2, "fill", "#d3e46f"); simplet_query_add_style(query2, "stroke", "#ffffff"); simplet_query_add_style(query2, "line-join", "round"); simplet_query_add_style(query2, "text-field", "NAME"); simplet_query_add_style(query2, "font", "Lucida Grande, Regular 8"); simplet_query_add_style(query2, "color", "#444444ff"); simplet_query_add_style(query2, "text-stroke-color", "#ffffffcc"); simplet_query_add_style(query2, "text-stroke-weight", "2"); simplet_query_add_style(query2, "letter-spacing", "1"); if(simplet_map_is_valid(map)) simplet_map_render_to_png(map, "./out.png"); simplet_map_free(map); }
void test_lines(){ simplet_map_t *map; assert((map = simplet_map_new())); simplet_map_set_srs(map, "+proj=longlat +ellps=GRS80 +datum=NAD83 +no_defs"); simplet_map_set_size(map, 256, 256); simplet_map_set_bounds(map, -74.043825, 40.570771, -73.855660, 40.739255); simplet_layer_t *layer = simplet_map_add_layer(map, "./data/tl_2010_36047_roads.shp"); simplet_query_t *query = simplet_layer_add_query(layer, "SELECT * from 'tl_2010_36047_roads'"); simplet_query_add_style(query, "stroke", "#000000ff"); simplet_query_add_style(query, "line-cap", "square"); simplet_query_add_style(query, "line-join", "round"); simplet_query_add_style(query, "weight", "0.3"); simplet_map_render_to_png(map, "./lines.png"); assert(SIMPLET_OK == simplet_map_get_status(map)); simplet_map_free(map); }
void test_points(){ simplet_map_t *map; assert((map = simplet_map_new())); simplet_map_set_srs(map, "+proj=longlat +ellps=GRS80 +datum=NAD83 +no_defs"); simplet_map_set_size(map, 256, 256); simplet_map_set_bounds(map, -92.889433, 42.491912,-86.763988, 47.080772); simplet_layer_t *layer = simplet_map_add_layer(map, "./data/ne_10m_populated_places.shp"); simplet_query_t *query = simplet_layer_add_query(layer, "SELECT * from 'ne_10m_populated_places'"); simplet_query_add_style(query, "fill", "#061F3799"); simplet_query_add_style(query, "stroke", "#ffffff99"); simplet_query_add_style(query, "weight", "0.1"); simplet_query_add_style(query, "radius", "10"); simplet_map_render_to_png(map, "./points.png"); assert(SIMPLET_OK == simplet_map_get_status(map)); simplet_map_free(map); }
simplet_map_t* build_map(){ simplet_map_t *map; assert((map = simplet_map_new())); simplet_map_set_srs(map, "+proj=longlat +ellps=GRS80 +datum=NAD83 +no_defs"); simplet_map_set_size(map, 256, 256); simplet_map_set_bounds(map, -179.231086, 17.831509, -100.859681, 71.441059); simplet_layer_t *layer = simplet_map_add_layer(map, "./data/ne_10m_admin_0_countries.shp"); simplet_query_t *query = simplet_layer_add_query(layer, "SELECT * from 'ne_10m_admin_0_countries'"); simplet_query_add_style(query, "line-cap", "square"); simplet_query_add_style(query, "line-join", "round"); simplet_query_add_style(query, "fill", "#061F3799"); simplet_query_add_style(query, "seamless", "true"); return map; }
void test_many_queries(){ simplet_map_t *map; assert((map = build_map())); assert(simplet_map_is_valid(map)); simplet_query_t *query = simplet_layer_add_query( (simplet_layer_t *) simplet_list_get(map->layers, simplet_list_get_length(map->layers) - 1), "SELECT * from 'ne_10m_admin_0_countries' where SOV_A3 = 'US1'"); simplet_query_add_style(query, "weight", "1"); simplet_query_add_style(query, "stroke", "#00cc00dd"); simplet_query_add_style(query, "fill", "#cc0000"); simplet_query_add_style(query, "blend", "multiply"); simplet_map_render_to_png(map, "./queries.png"); assert(SIMPLET_OK == simplet_map_get_status(map)); simplet_map_free(map); }
void test_holes(){ simplet_map_t *map; assert((map = simplet_map_new())); simplet_map_set_srs(map, "+proj=longlat +ellps=GRS80 +datum=NAD83 +no_defs"); simplet_map_set_size(map, 256, 256); simplet_map_set_bounds(map, -92.889433, 42.491912,-86.763988, 47.080772); simplet_map_add_layer(map, "./data/tl_2010_55_cd108.shp"); simplet_query_t *query = simplet_layer_add_query( (simplet_layer_t *) simplet_list_tail(map->layers), "SELECT * from 'tl_2010_55_cd108'"); simplet_query_add_style(query, "line-cap", "square"); simplet_query_add_style(query, "line-join", "round"); simplet_query_add_style(query, "fill", "#061F3799"); simplet_query_add_style(query, "stroke", "#ffffff99"); simplet_query_add_style(query, "weight", "0.1"); simplet_map_render_to_png(map, "./holes.png"); assert(SIMPLET_OK == simplet_map_get_status(map)); simplet_map_free(map); }