astronomy-bundle
Version:
Bundle for astronomical calculations such as position of moon, sun and planets, sunrise, sunset or solar eclipses. Most of the calculations are based on Jean Meeus 'Astronomical Algorithms' book and the VSOP87 theory.
33 lines (32 loc) • 1.83 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.fromTimeOfInterest = exports.fromBesselianElements = void 0;
const createBesselianElements_1 = __importDefault(require("./createBesselianElements"));
const SolarEclipse_1 = __importDefault(require("./SolarEclipse"));
const solarEclipseExists_1 = __importDefault(require("./solarEclipseExists"));
function fromBesselianElements(besselianElements) {
return new SolarEclipse_1.default(besselianElements);
}
exports.fromBesselianElements = fromBesselianElements;
function fromTimeOfInterest(toi) {
return __awaiter(this, void 0, void 0, function* () {
if (!(0, solarEclipseExists_1.default)(toi)) {
throw new Error('Could not find Solar Eclipse for given date: ' + toi.getString());
}
const besselianElements = yield (0, createBesselianElements_1.default)(toi);
return new SolarEclipse_1.default(besselianElements);
});
}
exports.fromTimeOfInterest = fromTimeOfInterest;