{"action":"created","comment":{"url":"https://api.github.com/repos/openlayers/ol3/pulls/comments/42232496","id":42232496,"diff_hunk":"@@ -160,6 +174,40 @@ ol.OVERVIEWMAP_MIN_RATIO = 0.1;\n \n \n /**\n+ * @define {number} Maximum number of source tiles for raster reprojection of\n+ *     a single tile.\n+ *     If too many source tiles are determined to be loaded to create a single\n+ *     reprojected tile the browser can become unresponsive or even crash.\n+ *     This can happen if the developer defines projections improperly and/or\n+ *     with unlimited extents.\n+ *     If too many tiles are required, no tiles are loaded and\n+ *     `ol.TileState.ERROR` state is set. Default is `100`.\n+ */\n+ol.RASTER_REPROJECTION_MAX_SOURCE_TILES = 100;\n+\n+\n+/**\n+ * @define {number} Maximum number of subdivision steps during raster\n+ *     reprojection triangulation. Prevents high memory usage and large\n+ *     number of proj4 calls (for certain transformations and areas).\n+ *     At most `2*(2^this)` triangles are created. Default is `10`.","path":"src/ol/ol.js","position":48,"original_position":48,"commit_id":"32fa3501df44f0fe6542ae262c7189d823400b86","original_commit_id":"32fa3501df44f0fe6542ae262c7189d823400b86","user":{"login":"tsauerwein","id":266474,"avatar_url":"https://avatars.githubusercontent.com/u/266474?v=3","gravatar_id":"","url":"https://api.github.com/users/tsauerwein","html_url":"https://github.com/tsauerwein","followers_url":"https://api.github.com/users/tsauerwein/followers","following_url":"https://api.github.com/users/tsauerwein/following{/other_user}","gists_url":"https://api.github.com/users/tsauerwein/gists{/gist_id}","starred_url":"https://api.github.com/users/tsauerwein/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tsauerwein/subscriptions","organizations_url":"https://api.github.com/users/tsauerwein/orgs","repos_url":"https://api.github.com/users/tsauerwein/repos","events_url":"https://api.github.com/users/tsauerwein/events{/privacy}","received_events_url":"https://api.github.com/users/tsauerwein/received_events","type":"User","site_admin":false},"body":"\"At most `2*(2^this)` triangles are created ...\" ... for each tile/image?","created_at":"2015-10-16T11:26:30Z","updated_at":"2015-10-16T11:26:30Z","html_url":"https://github.com/openlayers/ol3/pull/4122#discussion_r42232496","pull_request_url":"https://api.github.com/repos/openlayers/ol3/pulls/4122","_links":{"self":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/comments/42232496"},"html":{"href":"https://github.com/openlayers/ol3/pull/4122#discussion_r42232496"},"pull_request":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/4122"}}},"pull_request":{"url":"https://api.github.com/repos/openlayers/ol3/pulls/4122","id":45273252,"html_url":"https://github.com/openlayers/ol3/pull/4122","diff_url":"https://github.com/openlayers/ol3/pull/4122.diff","patch_url":"https://github.com/openlayers/ol3/pull/4122.patch","issue_url":"https://api.github.com/repos/openlayers/ol3/issues/4122","number":4122,"state":"open","locked":false,"title":"Raster reprojection","user":{"login":"klokan","id":59284,"avatar_url":"https://avatars.githubusercontent.com/u/59284?v=3","gravatar_id":"","url":"https://api.github.com/users/klokan","html_url":"https://github.com/klokan","followers_url":"https://api.github.com/users/klokan/followers","following_url":"https://api.github.com/users/klokan/following{/other_user}","gists_url":"https://api.github.com/users/klokan/gists{/gist_id}","starred_url":"https://api.github.com/users/klokan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klokan/subscriptions","organizations_url":"https://api.github.com/users/klokan/orgs","repos_url":"https://api.github.com/users/klokan/repos","events_url":"https://api.github.com/users/klokan/events{/privacy}","received_events_url":"https://api.github.com/users/klokan/received_events","type":"User","site_admin":false},"body":"Implementation of the raster reprojection with triangulation with Proj4js as described and discussed in #3785.\r\n\r\nThe raster reprojection is triggered automatically when `projection` in `ol.View` differs from `projection` of a raster source such as WMTS or WMS.\r\n\r\nExamples:\r\n- [Raster reprojection demo](http://klokantech.github.io/ol3/rasterreproj/final/examples/reprojection.html)\r\n- [OpenStreetMap to WGS84 reprojection](http://klokantech.github.io/ol3/rasterreproj/final/examples/reprojection-wgs84.html)\r\n- [Reprojection with EPSG.io database search](http://klokantech.github.io/ol3/rasterreproj/final/examples/reprojection-by-code.html)\r\n- [Image reprojection](http://klokantech.github.io/ol3/rasterreproj/final/examples/reprojection-image.html)\r\n\r\nTutorial for use is being prepared at:\r\nhttps://github.com/klokantech/ol3/wiki/Raster-Reprojection-Tutorial\r\nand to be pushed to official tutorials.\r\n\r\nWe may add an example with UK's Ordnance Survey OpenSpace API tiles as well.\r\n\r\nThere are related tickets to some implementation issues:\r\n- Stitch lines visible between triangles for semi-transparent sources #4123\r\n- Source resolution #4124","created_at":"2015-09-17T10:12:12Z","updated_at":"2015-10-16T11:26:30Z","closed_at":null,"merged_at":null,"merge_commit_sha":"73ff25665e12cb00540020ff1af03e5dbdc3ccb7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/openlayers/ol3/pulls/4122/commits","review_comments_url":"https://api.github.com/repos/openlayers/ol3/pulls/4122/comments","review_comment_url":"https://api.github.com/repos/openlayers/ol3/pulls/comments{/number}","comments_url":"https://api.github.com/repos/openlayers/ol3/issues/4122/comments","statuses_url":"https://api.github.com/repos/openlayers/ol3/statuses/32fa3501df44f0fe6542ae262c7189d823400b86","head":{"label":"klokantech:rasterreproj","ref":"rasterreproj","sha":"32fa3501df44f0fe6542ae262c7189d823400b86","user":{"login":"klokantech","id":511714,"avatar_url":"https://avatars.githubusercontent.com/u/511714?v=3","gravatar_id":"","url":"https://api.github.com/users/klokantech","html_url":"https://github.com/klokantech","followers_url":"https://api.github.com/users/klokantech/followers","following_url":"https://api.github.com/users/klokantech/following{/other_user}","gists_url":"https://api.github.com/users/klokantech/gists{/gist_id}","starred_url":"https://api.github.com/users/klokantech/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klokantech/subscriptions","organizations_url":"https://api.github.com/users/klokantech/orgs","repos_url":"https://api.github.com/users/klokantech/repos","events_url":"https://api.github.com/users/klokantech/events{/privacy}","received_events_url":"https://api.github.com/users/klokantech/received_events","type":"Organization","site_admin":false},"repo":{"id":24091682,"name":"ol3","full_name":"klokantech/ol3","owner":{"login":"klokantech","id":511714,"avatar_url":"https://avatars.githubusercontent.com/u/511714?v=3","gravatar_id":"","url":"https://api.github.com/users/klokantech","html_url":"https://github.com/klokantech","followers_url":"https://api.github.com/users/klokantech/followers","following_url":"https://api.github.com/users/klokantech/following{/other_user}","gists_url":"https://api.github.com/users/klokantech/gists{/gist_id}","starred_url":"https://api.github.com/users/klokantech/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/klokantech/subscriptions","organizations_url":"https://api.github.com/users/klokantech/orgs","repos_url":"https://api.github.com/users/klokantech/repos","events_url":"https://api.github.com/users/klokantech/events{/privacy}","received_events_url":"https://api.github.com/users/klokantech/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/klokantech/ol3","description":"OpenLayers 3","fork":true,"url":"https://api.github.com/repos/klokantech/ol3","forks_url":"https://api.github.com/repos/klokantech/ol3/forks","keys_url":"https://api.github.com/repos/klokantech/ol3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/klokantech/ol3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/klokantech/ol3/teams","hooks_url":"https://api.github.com/repos/klokantech/ol3/hooks","issue_events_url":"https://api.github.com/repos/klokantech/ol3/issues/events{/number}","events_url":"https://api.github.com/repos/klokantech/ol3/events","assignees_url":"https://api.github.com/repos/klokantech/ol3/assignees{/user}","branches_url":"https://api.github.com/repos/klokantech/ol3/branches{/branch}","tags_url":"https://api.github.com/repos/klokantech/ol3/tags","blobs_url":"https://api.github.com/repos/klokantech/ol3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/klokantech/ol3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/klokantech/ol3/git/refs{/sha}","trees_url":"https://api.github.com/repos/klokantech/ol3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/klokantech/ol3/statuses/{sha}","languages_url":"https://api.github.com/repos/klokantech/ol3/languages","stargazers_url":"https://api.github.com/repos/klokantech/ol3/stargazers","contributors_url":"https://api.github.com/repos/klokantech/ol3/contributors","subscribers_url":"https://api.github.com/repos/klokantech/ol3/subscribers","subscription_url":"https://api.github.com/repos/klokantech/ol3/subscription","commits_url":"https://api.github.com/repos/klokantech/ol3/commits{/sha}","git_commits_url":"https://api.github.com/repos/klokantech/ol3/git/commits{/sha}","comments_url":"https://api.github.com/repos/klokantech/ol3/comments{/number}","issue_comment_url":"https://api.github.com/repos/klokantech/ol3/issues/comments{/number}","contents_url":"https://api.github.com/repos/klokantech/ol3/contents/{+path}","compare_url":"https://api.github.com/repos/klokantech/ol3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/klokantech/ol3/merges","archive_url":"https://api.github.com/repos/klokantech/ol3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/klokantech/ol3/downloads","issues_url":"https://api.github.com/repos/klokantech/ol3/issues{/number}","pulls_url":"https://api.github.com/repos/klokantech/ol3/pulls{/number}","milestones_url":"https://api.github.com/repos/klokantech/ol3/milestones{/number}","notifications_url":"https://api.github.com/repos/klokantech/ol3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/klokantech/ol3/labels{/name}","releases_url":"https://api.github.com/repos/klokantech/ol3/releases{/id}","created_at":"2014-09-16T08:32:16Z","updated_at":"2015-08-11T13:06:00Z","pushed_at":"2015-10-16T07:47:44Z","git_url":"git://github.com/klokantech/ol3.git","ssh_url":"git@github.com:klokantech/ol3.git","clone_url":"https://github.com/klokantech/ol3.git","svn_url":"https://github.com/klokantech/ol3","homepage":"http://openlayers.org","size":38648,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"openlayers:master","ref":"master","sha":"df6b90246a6fa9412e75dd708922da25aacf96bc","user":{"login":"openlayers","id":240579,"avatar_url":"https://avatars.githubusercontent.com/u/240579?v=3","gravatar_id":"","url":"https://api.github.com/users/openlayers","html_url":"https://github.com/openlayers","followers_url":"https://api.github.com/users/openlayers/followers","following_url":"https://api.github.com/users/openlayers/following{/other_user}","gists_url":"https://api.github.com/users/openlayers/gists{/gist_id}","starred_url":"https://api.github.com/users/openlayers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openlayers/subscriptions","organizations_url":"https://api.github.com/users/openlayers/orgs","repos_url":"https://api.github.com/users/openlayers/repos","events_url":"https://api.github.com/users/openlayers/events{/privacy}","received_events_url":"https://api.github.com/users/openlayers/received_events","type":"Organization","site_admin":false},"repo":{"id":4723248,"name":"ol3","full_name":"openlayers/ol3","owner":{"login":"openlayers","id":240579,"avatar_url":"https://avatars.githubusercontent.com/u/240579?v=3","gravatar_id":"","url":"https://api.github.com/users/openlayers","html_url":"https://github.com/openlayers","followers_url":"https://api.github.com/users/openlayers/followers","following_url":"https://api.github.com/users/openlayers/following{/other_user}","gists_url":"https://api.github.com/users/openlayers/gists{/gist_id}","starred_url":"https://api.github.com/users/openlayers/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/openlayers/subscriptions","organizations_url":"https://api.github.com/users/openlayers/orgs","repos_url":"https://api.github.com/users/openlayers/repos","events_url":"https://api.github.com/users/openlayers/events{/privacy}","received_events_url":"https://api.github.com/users/openlayers/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/openlayers/ol3","description":"OpenLayers 3","fork":false,"url":"https://api.github.com/repos/openlayers/ol3","forks_url":"https://api.github.com/repos/openlayers/ol3/forks","keys_url":"https://api.github.com/repos/openlayers/ol3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/openlayers/ol3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/openlayers/ol3/teams","hooks_url":"https://api.github.com/repos/openlayers/ol3/hooks","issue_events_url":"https://api.github.com/repos/openlayers/ol3/issues/events{/number}","events_url":"https://api.github.com/repos/openlayers/ol3/events","assignees_url":"https://api.github.com/repos/openlayers/ol3/assignees{/user}","branches_url":"https://api.github.com/repos/openlayers/ol3/branches{/branch}","tags_url":"https://api.github.com/repos/openlayers/ol3/tags","blobs_url":"https://api.github.com/repos/openlayers/ol3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/openlayers/ol3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/openlayers/ol3/git/refs{/sha}","trees_url":"https://api.github.com/repos/openlayers/ol3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/openlayers/ol3/statuses/{sha}","languages_url":"https://api.github.com/repos/openlayers/ol3/languages","stargazers_url":"https://api.github.com/repos/openlayers/ol3/stargazers","contributors_url":"https://api.github.com/repos/openlayers/ol3/contributors","subscribers_url":"https://api.github.com/repos/openlayers/ol3/subscribers","subscription_url":"https://api.github.com/repos/openlayers/ol3/subscription","commits_url":"https://api.github.com/repos/openlayers/ol3/commits{/sha}","git_commits_url":"https://api.github.com/repos/openlayers/ol3/git/commits{/sha}","comments_url":"https://api.github.com/repos/openlayers/ol3/comments{/number}","issue_comment_url":"https://api.github.com/repos/openlayers/ol3/issues/comments{/number}","contents_url":"https://api.github.com/repos/openlayers/ol3/contents/{+path}","compare_url":"https://api.github.com/repos/openlayers/ol3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/openlayers/ol3/merges","archive_url":"https://api.github.com/repos/openlayers/ol3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/openlayers/ol3/downloads","issues_url":"https://api.github.com/repos/openlayers/ol3/issues{/number}","pulls_url":"https://api.github.com/repos/openlayers/ol3/pulls{/number}","milestones_url":"https://api.github.com/repos/openlayers/ol3/milestones{/number}","notifications_url":"https://api.github.com/repos/openlayers/ol3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/openlayers/ol3/labels{/name}","releases_url":"https://api.github.com/repos/openlayers/ol3/releases{/id}","created_at":"2012-06-20T06:53:59Z","updated_at":"2015-10-16T03:49:32Z","pushed_at":"2015-10-16T07:47:46Z","git_url":"git://github.com/openlayers/ol3.git","ssh_url":"git@github.com:openlayers/ol3.git","clone_url":"https://github.com/openlayers/ol3.git","svn_url":"https://github.com/openlayers/ol3","homepage":"http://openlayers.org","size":101544,"stargazers_count":1428,"watchers_count":1428,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":815,"mirror_url":null,"open_issues_count":373,"forks":815,"open_issues":373,"watchers":1428,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/4122"},"html":{"href":"https://github.com/openlayers/ol3/pull/4122"},"issue":{"href":"https://api.github.com/repos/openlayers/ol3/issues/4122"},"comments":{"href":"https://api.github.com/repos/openlayers/ol3/issues/4122/comments"},"review_comments":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/4122/comments"},"review_comment":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/openlayers/ol3/pulls/4122/commits"},"statuses":{"href":"https://api.github.com/repos/openlayers/ol3/statuses/32fa3501df44f0fe6542ae262c7189d823400b86"}}}}