12

I am trying to figure out a way to sub-divide a vector based map into smaller blocks. I can tile the map based on different strategies such as q-tree. However, it is unavoidable to cut some polylines and polygons that cross the boundaries of the blocks. By doing this, we will lose their geometric and topological attributes.

The tiled data can only be used for display but not for spatial analyses because they have partly lost their geometric and topological attributes. Do you have any suggestion or experience with sub-dividing the vector data and still maintaining their us usability for spatial analyses?

Steve Bennett
  • 5,682
  • 2
  • 44
  • 69
weliam
  • 357
  • 1
  • 9

2 Answers2

4

Tilestache is an open source tool for serving tiles, and serves tiled vector data as well as tiled images that may be worth looking at (either as a tool, or through the source code).

The PostGis GeoJSON driver creates GeoJSON vector tiles and has the option to clip them or not.

clipping: Boolean flag for optionally clipping the output geometries to the bounds of the enclosing tile. Defaults to fales. This results in incomplete geometries, dramatically smaller file sizes, and improves performance and compatibility with Polymaps (http://polymaps.org).

There is a recent blog post on using TileStache & OpenLayers to create hand-rolled vector tiles here.

geographika
  • 14,320
  • 4
  • 53
  • 77
3

You may be running up against the theory of No Free Lunch...

Depending on your use case, it may be that you want tiled vector data for display, but a second non-tiled instance of the data for analysis. I could see this being useful if the analysis to display ratio is low.

DavidF
  • 4,862
  • 1
  • 26
  • 32
  • 2
    We have Operational and Warehouse db's. The operational have many relational tables, and little to no duplication across tables. The warehouse db's are flattened, no relationships, many duplicated fields, but fast -- no calculations on the fly. The trick is automating the process from Analytical to Tiled, with no user intervention. Essentially what ArcMap does in it's new on the fly basemap layer feature, and Google Maps & Tilestache and friends: Grab feature classes X,Y,Z in the area of interest, throw out all their intelligence, mash them into a dumb bitmap (saved in cache), and draw. – matt wilkie Feb 28 '11 at 20:57
  • From a Web perspective, kind of like sending all of your data layers to the client in one, WMS layer? – DavidF Feb 28 '11 at 21:43