12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- export default function(crs, denorm, point) {
- var xin = point.x,
- yin = point.y,
- zin = point.z || 0.0;
- var v, t, i;
- var out = {};
- for (i = 0; i < 3; i++) {
- if (denorm && i === 2 && point.z === undefined) {
- continue;
- }
- if (i === 0) {
- v = xin;
- if ("ew".indexOf(crs.axis[i]) !== -1) {
- t = 'x';
- } else {
- t = 'y';
- }
- }
- else if (i === 1) {
- v = yin;
- if ("ns".indexOf(crs.axis[i]) !== -1) {
- t = 'y';
- } else {
- t = 'x';
- }
- }
- else {
- v = zin;
- t = 'z';
- }
- switch (crs.axis[i]) {
- case 'e':
- out[t] = v;
- break;
- case 'w':
- out[t] = -v;
- break;
- case 'n':
- out[t] = v;
- break;
- case 's':
- out[t] = -v;
- break;
- case 'u':
- if (point[t] !== undefined) {
- out.z = v;
- }
- break;
- case 'd':
- if (point[t] !== undefined) {
- out.z = -v;
- }
- break;
- default:
- //console.log("ERROR: unknow axis ("+crs.axis[i]+") - check definition of "+crs.projName);
- return null;
- }
- }
- return out;
- }
|