martin/tests/config.yaml
Yuri Astrakhan 9b112ae7b9
Implement dynamic font support /font/<name>/<start>-<end> (#755)
This implements dynamic font protobuf generation, allowing users to
request font ranges on the fly, and combining them in any order, e.g.
`Font1,Font2,Font3`, same as with sprites and tiles

This is a first iteration, without any multithreading support. In
theory, this could be done far faster by generating SDFs with multiple
threads.

### Current process
* during init, figure out all glyphs available in each font, and store
them as a bitset
* during request:
* combine requested bitsets to figure out which glyph should come from
which font file
* load those glyphs from files (using a single instance of the freetype
lib)
  * convert them to SDFs and package them into a protobuf

---------

Co-authored-by: Lucas <zhangyijunmetro@hotmail.com>
2023-10-28 05:10:48 +00:00

175 lines
4.2 KiB
YAML

---
# Connection keep alive timeout [default: 75]
keep_alive: 75
# The socket address to bind [default: 0.0.0.0:3000]
listen_addresses: '0.0.0.0:3000'
# Number of web server workers
worker_processes: 8
# Database configuration. This can also be a list of PG configs.
postgres:
# Database connection string
connection_string: '${DATABASE_URL:postgresql://postgres@localhost:5432/db}'
# If a spatial table has SRID 0, then this SRID will be used as a fallback
default_srid: 4326
# Maximum connections pool size [default: 20]
pool_size: 20
auto_publish:
tables:
from_schemas: autodetect
id_columns: [feat_id, big_feat_id]
clip_geom: false
buffer: 3
extent: 9000
# Associative arrays of table sources
tables:
table_source:
# Table schema (required)
schema: public
# Table name (required)
table: table_source
# Geometry SRID (required)
srid: 4326
# Geometry column name (required)
geometry_column: geom
# Feature id column name
id_column: ~
# An integer specifying the minimum zoom level
minzoom: 0
# An integer specifying the maximum zoom level. MUST be >= minzoom
maxzoom: 30
# The maximum extent of available map tiles. Bounds MUST define an area
# covered by all zoom levels. The bounds are represented in WGS:84
# latitude and longitude values, in the order left, bottom, right, top.
# Values may be integers or floating point numbers.
bounds: [-180.0, -90.0, 180.0, 90.0]
# Tile extent in tile coordinate space
extent: 4096
# Buffer distance in tile coordinate space to optionally clip geometries
buffer: 64
# Boolean to control if geometries should be clipped or encoded as is
clip_geom: true
# Geometry type
geometry_type: GEOMETRY
# List of columns, that should be encoded as tile properties (required)
properties:
gid: int4
MixPoints:
schema: MIXEDCASE
table: MixPoints
id_column: giD
geometry_column: geoM
srid: 4326
geometry_type: POINT
properties:
taBLe: text
points1:
layer_id: abc
schema: public
table: points1
minzoom: 0
maxzoom: 30
bounds: [-180.0, -90.0, 180.0, 90.0]
id_column: ~
geometry_column: geom
srid: 4326
extent: 4096
buffer: 64
clip_geom: true
geometry_type: POINT
properties:
gid: int4
points2:
schema: public
table: points2
minzoom: 0
maxzoom: 30
bounds: [-180.0, -90.0, 180.0, 90.0]
id_column: ~
geometry_column: geom
srid: 4326
extent: 4096
buffer: 64
clip_geom: true
geometry_type: POINT
properties:
gid: int4
points3857:
schema: public
table: points3857
minzoom: 0
maxzoom: 30
bounds: [-180.0, -90.0, 180.0, 90.0]
id_column: ~
geometry_column: geom
srid: 3857
extent: 4096
buffer: 64
clip_geom: true
geometry_type: POINT
properties:
gid: int4
# Associative arrays of function sources
functions:
function_zxy_query:
# Schema name (required)
schema: public
# Function name (required)
function: function_zxy_query
# An integer specifying the minimum zoom level
minzoom: 0
# An integer specifying the maximum zoom level. MUST be >= minzoom
maxzoom: 30
# The maximum extent of available map tiles. Bounds MUST define an area
# covered by all zoom levels. The bounds are represented in WGS:84
# latitude and longitude values, in the order left, bottom, right, top.
# Values may be integers or floating point numbers.
bounds: [-180.0, -90.0, 180.0, 90.0]
function_zxy_query_test:
schema: public
function: function_zxy_query_test
minzoom: 0
maxzoom: 30
bounds: [-180.0, -90.0, 180.0, 90.0]
pmtiles:
sources:
pmt: tests/fixtures/pmtiles/stamen_toner__raster_CC-BY+ODbL_z3.pmtiles
sprites:
paths: tests/fixtures/sprites/src1
sources:
mysrc: tests/fixtures/sprites/src2
fonts:
- tests/fixtures/fonts/overpass-mono-regular.ttf
- tests/fixtures/fonts