@ actionstrings/ swiss-eph (英语)
瑞士 Ephemeris 天文计算库汇编到WebAssembly 跨平面JavaScript/TypeScript用法,有平面的rust绑定.
特征
- 跨平台: 在Deno、Node.js、浏览器和边缘运行时间工作 (云雾工人)
- 废品装订: 完成 FFI 和安全的 Rust API 本地性能
- 高精度: 比特级精度匹配瑞士本土 Ephemeris 计算
- 完整 API: 95+ 行星位置、房屋、日食和 更多
- 零依赖关系:自成一体的带有内置Moshier的WASM模块 麻风病
- 类型脚本: 带有TSDoc文档的完整类型定义
安装(JS/TS)
德诺/JSR
import { load } from "jsr:@fusionstrings/swiss-eph";
节点.js/ npm
npm install @fusionstrings/swiss-eph
import { load } from "@fusionstrings/swiss-eph";
快速启动( JS/ TS)
import { Constants, load } from "@fusionstrings/swiss-eph";
// Initialize the Swiss Ephemeris
const eph = await load();
// Calculate Julian Day for a date
const jd = eph.swe_julday(2024, 6, 15, 12.0, Constants.SE_GREG_CAL);
// Get Sun's position
const { xx, error } = eph.swe_calc_ut(
jd,
Constants.SE_SUN,
Constants.SEFLG_SPEED,
);
console.log(`Sun longitude: ${xx[0]}°`);
脏用法
将此添加到您的 Cargo.toml数字 :
[dependencies]
swiss-eph = "0.1.0"
快速启动( Rust)
use swisseph_x::safe::*;
use swisseph_x::*;
fn main() {
let jd = julday(2024, 1, 1, 12.0);
let flags = CalcFlags::new().with_speed();
let sun = calc(jd, SE_SUN, flags).unwrap();
println!("Sun longitude: {:.6}°", sun.longitude);
}
API 概览(JS/TS)
| 函数 | 说明 |
|---|---|
swe_calc 编号 : swe_calc_ut | 行星位置(TT/UT) |
swe_houses 编号 : swe_houses_ex | 房屋花纹和取角 |
swe_julday 编号 : swe_revjul | 朱利安日转换 |
swe_sidtime | 边际时间 |
swe_deltat | 德尔塔 T (TT - UT) |
许可证
AGPL-3.0 导弹 - 和瑞士以弗梅里斯图书馆一样.
此软件由Astrodienst AG公司以瑞士以弗梅里斯为蓝本. 见 https://www.astro.com/swisseph/ (中文(简体) ) 更多信息.
贷项
- 瑞士以弗梅里斯 由 Astrodienst AG 编辑
- 使用 WASI SDK 编译和正在建造