wcsjs: Creating a Coordinate Grid
239 |This example shows how to use D3 to build coordinate axes for an astronomical image.
240 |, 241 |
├── .gitignore ├── Makefile ├── README.md ├── examples ├── grid.html ├── pixel-to-sky.html └── sky-to-pixel.html ├── package.json ├── src ├── end.js ├── start.js └── wrapper.c ├── test ├── create_tests.c ├── data │ ├── 1904-66_AIR │ ├── 1904-66_AIT │ ├── 1904-66_ARC │ ├── 1904-66_AZP │ ├── 1904-66_BON │ ├── 1904-66_CAR │ ├── 1904-66_CEA │ ├── 1904-66_COD │ ├── 1904-66_COE │ ├── 1904-66_COO │ ├── 1904-66_COP │ ├── 1904-66_CSC │ ├── 1904-66_CYP │ ├── 1904-66_HPX │ ├── 1904-66_MER │ ├── 1904-66_MOL │ ├── 1904-66_NCP │ ├── 1904-66_PAR │ ├── 1904-66_PCO │ ├── 1904-66_QSC │ ├── 1904-66_SFL │ ├── 1904-66_SIN │ ├── 1904-66_STG │ ├── 1904-66_SZP │ ├── 1904-66_TAN │ ├── 1904-66_TSC │ ├── 1904-66_ZEA │ ├── 1904-66_ZPN │ ├── HIGAL_BLUE0671p118_070_RM │ ├── PlanckMap_308.235996_-22.010959_1.0_1.0_030_1024_nominal │ └── m101 ├── get_headers.py ├── m101_test.js └── wcsjs_test.js ├── wcs.js └── wcs.min.js /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | wcslib.* 3 | wcslib 4 | node_modules 5 | test/data/*.gz 6 | a.out 7 | bower_components 8 | *.fits -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | 2 | EMSCRIPTEN=$(HOME)/emscripten 3 | 4 | build: wcslib.js 5 | cat src/start.js wcslib.js src/end.js > wcs.js 6 | node_modules/.bin/uglifyjs wcs.js -o wcs.min.js 7 | 8 | wcslib.js: wcslib 9 | cd wcslib; \ 10 | $(EMSCRIPTEN)/emconfigure ./configure --prefix=$(EMSCRIPTEN)/system; \ 11 | $(EMSCRIPTEN)/emmake make; \ 12 | $(EMSCRIPTEN)/emmake make install; 13 | $(EMSCRIPTEN)/emcc -O2 src/wrapper.c -lwcs -lm -o wcslib.js -s EXPORTED_FUNCTIONS="['_getWcs', '_pix2sky', '_sky2pix']"; 14 | 15 | wcslib: wcslib.tar.bz2 16 | tar xjf wcslib.tar.bz2 17 | mv wcslib-* wcslib 18 | 19 | wcslib.tar.bz2: 20 | curl "ftp://ftp.atnf.csiro.au/pub/software/wcslib/wcslib.tar.bz2" -o "wcslib.tar.bz2" 21 | 22 | clean: 23 | rm -rf wcslib 24 | rm wcslib.js 25 | rm wcs.js 26 | rm wcs.min.js 27 | 28 | tests: 29 | gcc test/create_tests.c -lwcs -lcfitsio -lm -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # wcsjs 2 | 3 | `wcsjs` is a Javascript port of Mark Calabretta's [WCSLIB](http://www.atnf.csiro.au/people/mcalabre/WCS/) using [Emscripten](https://github.com/kripken/emscripten/wiki). The library works in either NodeJS or in the browser. 4 | 5 | ## Usage 6 | 7 | ### NodeJS 8 | 9 | 10 | var wcs = require('wcs'); 11 | 12 | var w = new wcs(); 13 | w.init(headerString); 14 | var world = w.pix2sky(x, y); 15 | var pixcrd = w.sky2pix(ra, dec); 16 | 17 | 18 | ### Browser 19 | 20 | 21 | 27 | 28 | -------------------------------------------------------------------------------- /examples/grid.html: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 | 5 |This example shows how to use D3 to build coordinate axes for an astronomical image.
240 |, 241 |