{"action":"created","issue":{"url":"https://api.github.com/repos/openlayers/ol3/issues/4219","labels_url":"https://api.github.com/repos/openlayers/ol3/issues/4219/labels{/name}","comments_url":"https://api.github.com/repos/openlayers/ol3/issues/4219/comments","events_url":"https://api.github.com/repos/openlayers/ol3/issues/4219/events","html_url":"https://github.com/openlayers/ol3/pull/4219","id":109897508,"number":4219,"title":"Support tiled vector data and Mapbox vector tiles","user":{"login":"ahocevar","id":211514,"avatar_url":"https://avatars.githubusercontent.com/u/211514?v=3","gravatar_id":"","url":"https://api.github.com/users/ahocevar","html_url":"https://github.com/ahocevar","followers_url":"https://api.github.com/users/ahocevar/followers","following_url":"https://api.github.com/users/ahocevar/following{/other_user}","gists_url":"https://api.github.com/users/ahocevar/gists{/gist_id}","starred_url":"https://api.github.com/users/ahocevar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ahocevar/subscriptions","organizations_url":"https://api.github.com/users/ahocevar/orgs","repos_url":"https://api.github.com/users/ahocevar/repos","events_url":"https://api.github.com/users/ahocevar/events{/privacy}","received_events_url":"https://api.github.com/users/ahocevar/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-10-05T22:13:29Z","updated_at":"2015-10-14T13:48:50Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/openlayers/ol3/pulls/4219","html_url":"https://github.com/openlayers/ol3/pull/4219","diff_url":"https://github.com/openlayers/ol3/pull/4219.diff","patch_url":"https://github.com/openlayers/ol3/pull/4219.patch"},"body":"This pull request adds support for rendering tiled vector data. The key elements to achieve this are\r\n\r\n1. `ol.layer.VectorTile`. A simple layer to hint renderers that a tiled renderer is to be used, instead of a viewport renderer like for `ol.layer.Vector`.\r\n1. `ol.source.VectorTile` and `ol.VectorTile`. Features are handled by the tile, not the source. Like image tiles, vector tiles can be cached. The existing `ol.source.TileVector` is removed, and its functionality is integrated into `ol.source.VectorTile`. To improve the inheritance chain, `ol.source.UrlTile` was added. Both `ol.source.ImageTile` and `ol.source.VectorTile` inherit common functionality related to url loading from that new class.\r\n1. `ol.renderer.canvas.VectorTileLayer`. This renderer gets tiles from `ol.source.VectorTile`, creates a replay group for each tile, and stores the replay group on the tile for rendering. Tiles are clipped at the tile boundary, so stroked polygons won't have a stroke at the tile boundary when a buffer is used on the server that creates the vector tiles.\r\n\r\nSupport for Mapbox vector tiles is provided by the new `ol.format.MVT` format, which relies on https://www.npmjs.com/package/pbf to read the protobuffers and https://www.npmjs.com/package/vector-tile to parse layers and features. To support pixel relative coordinates,`ol.proj.Units.TILE_PIXELS` was introduced. For efficient feature and geometry creation, a lightweight, read-only `ol.render.Feature` was added, which does not register any event listeners. Another performance improvement was achieved by skipping lineTo/moveTo calls for repeated coordinates when replaying vector batches at a lower resolution than it was created for."},"comment":{"url":"https://api.github.com/repos/openlayers/ol3/issues/comments/148054997","html_url":"https://github.com/openlayers/ol3/pull/4219#issuecomment-148054997","issue_url":"https://api.github.com/repos/openlayers/ol3/issues/4219","id":148054997,"user":{"login":"ahocevar","id":211514,"avatar_url":"https://avatars.githubusercontent.com/u/211514?v=3","gravatar_id":"","url":"https://api.github.com/users/ahocevar","html_url":"https://github.com/ahocevar","followers_url":"https://api.github.com/users/ahocevar/followers","following_url":"https://api.github.com/users/ahocevar/following{/other_user}","gists_url":"https://api.github.com/users/ahocevar/gists{/gist_id}","starred_url":"https://api.github.com/users/ahocevar/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ahocevar/subscriptions","organizations_url":"https://api.github.com/users/ahocevar/orgs","repos_url":"https://api.github.com/users/ahocevar/repos","events_url":"https://api.github.com/users/ahocevar/events{/privacy}","received_events_url":"https://api.github.com/users/ahocevar/received_events","type":"User","site_admin":false},"created_at":"2015-10-14T13:48:49Z","updated_at":"2015-10-14T13:48:49Z","body":"@topwood This pull request needs to be reviewed by another core developer before it can be merged."}}