{"action":"created","issue":{"url":"https://api.github.com/repos/TerriaJS/terriajs/issues/2965","repository_url":"https://api.github.com/repos/TerriaJS/terriajs","labels_url":"https://api.github.com/repos/TerriaJS/terriajs/issues/2965/labels{/name}","comments_url":"https://api.github.com/repos/TerriaJS/terriajs/issues/2965/comments","events_url":"https://api.github.com/repos/TerriaJS/terriajs/issues/2965/events","html_url":"https://github.com/TerriaJS/terriajs/issues/2965","id":322050212,"number":2965,"title":"Compass flips north to south.","user":{"login":"csvoisard","id":26971214,"avatar_url":"https://avatars1.githubusercontent.com/u/26971214?v=4","gravatar_id":"","url":"https://api.github.com/users/csvoisard","html_url":"https://github.com/csvoisard","followers_url":"https://api.github.com/users/csvoisard/followers","following_url":"https://api.github.com/users/csvoisard/following{/other_user}","gists_url":"https://api.github.com/users/csvoisard/gists{/gist_id}","starred_url":"https://api.github.com/users/csvoisard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/csvoisard/subscriptions","organizations_url":"https://api.github.com/users/csvoisard/orgs","repos_url":"https://api.github.com/users/csvoisard/repos","events_url":"https://api.github.com/users/csvoisard/events{/privacy}","received_events_url":"https://api.github.com/users/csvoisard/received_events","type":"User","site_admin":false},"labels":[{"id":331577900,"url":"https://api.github.com/repos/TerriaJS/terriajs/labels/C-Leaflet/Cesium","name":"C-Leaflet/Cesium","color":"557755","default":false},{"id":82546343,"url":"https://api.github.com/repos/TerriaJS/terriajs/labels/T-Bug","name":"T-Bug","color":"EE2222","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2018-05-10T19:17:14Z","updated_at":"2018-05-15T13:52:25Z","closed_at":null,"author_association":"NONE","body":"Steps to reproduce:\r\n1) reset map\r\n2) zoom in a lot\r\n3) middle click top of viewport and drag down (compass flips now)\r\n4) zoom out to confirm flipped compass.\r\n\r\nExample using https://nationalmap.gov.au/\r\n\r\n![compass-flip-national-map](https://user-images.githubusercontent.com/26971214/39924113-992c2cd0-54f4-11e8-81f7-f1006754e3d1.gif)\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/TerriaJS/terriajs/issues/comments/389174464","html_url":"https://github.com/TerriaJS/terriajs/issues/2965#issuecomment-389174464","issue_url":"https://api.github.com/repos/TerriaJS/terriajs/issues/2965","id":389174464,"user":{"login":"kring","id":924374,"avatar_url":"https://avatars0.githubusercontent.com/u/924374?v=4","gravatar_id":"","url":"https://api.github.com/users/kring","html_url":"https://github.com/kring","followers_url":"https://api.github.com/users/kring/followers","following_url":"https://api.github.com/users/kring/following{/other_user}","gists_url":"https://api.github.com/users/kring/gists{/gist_id}","starred_url":"https://api.github.com/users/kring/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kring/subscriptions","organizations_url":"https://api.github.com/users/kring/orgs","repos_url":"https://api.github.com/users/kring/repos","events_url":"https://api.github.com/users/kring/events{/privacy}","received_events_url":"https://api.github.com/users/kring/received_events","type":"User","site_admin":false},"created_at":"2018-05-15T13:52:25Z","updated_at":"2018-05-15T13:52:25Z","author_association":"MEMBER","body":"I looked into this a bit, an it seems Cesium's `Camera.heading` property is returning an incorrect value in this scenario. I think the problem is that Cesium's camera, when using a `constrainedAxis`, prevents further rotation when the camera position is within `EPSILON2` of being parallel with the constrained axis. (See `rotateVertical` in `Camera.js`). But when computing the heading, Cesium decides that the camera is pointing straight down only if it's within `EPSILON3` of the Z axis. (see `getHeading` in `Camera.js`) Changing the latter epsilon to `EPSILON2` solves the problem, but I'm not sure that won't have other repercussions."}}
{"actor":{"display_login":"kring"}}