{"action":"created","issue":{"url":"https://api.github.com/repos/astrofrog/reproject/issues/83","labels_url":"https://api.github.com/repos/astrofrog/reproject/issues/83/labels{/name}","comments_url":"https://api.github.com/repos/astrofrog/reproject/issues/83/comments","events_url":"https://api.github.com/repos/astrofrog/reproject/issues/83/events","html_url":"https://github.com/astrofrog/reproject/issues/83","id":74312299,"number":83,"title":"Switch to using WCSLIB for HEALPIX","user":{"login":"astrofrog","id":314716,"avatar_url":"https://avatars.githubusercontent.com/u/314716?v=3","gravatar_id":"","url":"https://api.github.com/users/astrofrog","html_url":"https://github.com/astrofrog","followers_url":"https://api.github.com/users/astrofrog/followers","following_url":"https://api.github.com/users/astrofrog/following{/other_user}","gists_url":"https://api.github.com/users/astrofrog/gists{/gist_id}","starred_url":"https://api.github.com/users/astrofrog/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/astrofrog/subscriptions","organizations_url":"https://api.github.com/users/astrofrog/orgs","repos_url":"https://api.github.com/users/astrofrog/repos","events_url":"https://api.github.com/users/astrofrog/events{/privacy}","received_events_url":"https://api.github.com/users/astrofrog/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-05-08T10:16:45Z","updated_at":"2015-05-08T10:30:58Z","closed_at":null,"body":"WCSLIB includes a utility to go from a HEALPIX representation to a 2d HPX projection in an exact way with no interpolation (from which we can then use the existing celestial reprojection tools in reproject). Switching to using WCSLIB would therefore have the following advantages:\r\n\r\n* It is LGPL instead of GPL so https://github.com/astrofrog/reproject/issues/82 is no longer an issue since we could drop the HEALPIX dependency.\r\n\r\n* It is bundled in Astropy so we could maybe call the WCSLIB functions from there instead of having it as an extra dependency (maybe @mdboom could say if this is possible?)\r\n\r\n* Since transforming to HPX is lossless, we can then use reproject_exact on the result and therefore implement #80 (cc @cdeil)\r\n\r\nThe downsides are:\r\n\r\n* Not clear if there is a conversion tool for HPX -> HEALPIX but in principle there's no reason we couldn't try and contribute that to WCSLIB\r\n\r\n* At the moment, this is a command-line utility in WCSLIB so we'd need that functionality to be moved to the library. I've asked Mark if this would be possible.\r\n\r\nThis is not something we can do immediately because of the two downsides, but I think we could make it work in the mid-term future!"},"comment":{"url":"https://api.github.com/repos/astrofrog/reproject/issues/comments/100186187","html_url":"https://github.com/astrofrog/reproject/issues/83#issuecomment-100186187","issue_url":"https://api.github.com/repos/astrofrog/reproject/issues/83","id":100186187,"user":{"login":"cdeil","id":852409,"avatar_url":"https://avatars.githubusercontent.com/u/852409?v=3","gravatar_id":"","url":"https://api.github.com/users/cdeil","html_url":"https://github.com/cdeil","followers_url":"https://api.github.com/users/cdeil/followers","following_url":"https://api.github.com/users/cdeil/following{/other_user}","gists_url":"https://api.github.com/users/cdeil/gists{/gist_id}","starred_url":"https://api.github.com/users/cdeil/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cdeil/subscriptions","organizations_url":"https://api.github.com/users/cdeil/orgs","repos_url":"https://api.github.com/users/cdeil/repos","events_url":"https://api.github.com/users/cdeil/events{/privacy}","received_events_url":"https://api.github.com/users/cdeil/received_events","type":"User","site_admin":false},"created_at":"2015-05-08T10:30:58Z","updated_at":"2015-05-08T10:30:58Z","body":"Thanks Tom, I fully agree that if we can get the functionality we need from WCSLib or by implementing some things ourselves, without the HEALPIX dependency, it's worth some effort.\r\n\r\nSide comment – Even after reading about HEALPIX a bit (e.g. at https://en.wikipedia.org/wiki/HEALPix, or the HEALPIX and WCSLib pages), I'm still confused. If someone has the time to write a more hands-on / software-oriented tutorial introduction to HEALPIX, i.e. what is in WCSLib / astropy.wcs and what is in HEALPIX / healpy and give simple examples of HEALPIX FITS files ... I would find this hugely helpful and I suspect other astronomers that only need to work with HEALPIX rarely and want to grok it and know how to work with it in ~ 1 hour would do too."}}