# TinyTile **Repository Path**: mapnote/TinyTile ## Basic Information - **Project Name**: TinyTile - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-04-19 - **Last Updated**: 2021-07-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TinyTile Library for implementing or integrating tile services(TMS WMTS XYZ) in .NET application. # How to use ## Intergrate xyz tile services to Asp.Net Core Suppose Linq2db is the ORM. ```csharp [Table("points_of_interest", Schema = "public")] public class Poi { [Column("id"), PrimaryKey, NotNull] public int Id { get; set; } [Column("name")] public string Name { get; set; } [Column("kind")] public string Kind { get; set; } [Column("geom")] public Point Geometry { get; set; } } ``` ```csharp var source = new MbTile(path); var layerMb = new Laye("points_mbtile_3857", source, gridSet:GridSet.Create(SRS.Epsg3857, schema:YAxisSchema.Xyz)); var pgSource = SqlSource.FromTable(connstring,SRS.Epsg4326,t => t.Name,c => c.Name,new string[]{"0,4,0.2","4,8,0.4","8,16,0.5","16,21,1.0"}); var layerPg = new Layer("points_pg_4326",pgSource,gridSet:GridSet.Create(SRS.Epsg3857,schema:YAxisSchema.Xyz)); services // AddMvc() // AddControllersWithViews() .AddControllers() .AddXyz(services,xyzBuilder => { xyzBuilder.Prefix = "geo/tiles/xyz"; xyzBuilder.AddLayer(layerMb); xyzBuilder.AddLayer(layerPg); }); ``` See [DemoApp](DemoApp) for details. ## Demo App You should firstly create and init [postgis database](table_sql_ddl.sql). ```bash cd DemoApp dotnet run ``` Visit mbtile xyz service,http://localhost:8088/mbtiles@3857@xyz.html ![avatar](./mbtiles3857.png) Visit PostGIS xyz service, http://localhost:8088/postgis@4490@xyz.html ![avatar](./postgis.png) # TO DO * Support other vector format tile,eg geojson,topojson... * Support various mbtiles(1.3 and epsg3857 only now) * Support render vector data source to raster tile(png,jpeg...) with styles(mapbox style,sld..) * Support WMTS * Support TMS * Support raster data source * Support various vector data source,eg PostGIS,Shapefile,GeoJson,Tile files,etc