推动者
关于世界预测之间变化的球体的目录数据(Globe,
地球,摩尔威德,极地... ),用于独立的页面和故事.
GeoVideo 档案作为粒子或光栅播放,小于GeoJSON和
上方的地理参考图像 。 原始人和目录来自
扎蒂格尔 (单位:千美元)@fxi/zartigl/engine, (中文(简体) ),
/catalog, (中文(简体) ), /story; Projversor从不触及MapLibre. 在地图X中,使用
zartigl的地图Libre层代替.
安装
npm install @fxi/projversor @fxi/zartigl
一个ES模块及其类型. @fxi/zartigl 是一个对等依赖,所以是一个页面
也输入了zartigl 装入一个副本。 d3 仍为依赖;详细数据
海岸线按需装载.
API 密码
import { Projversor } from "@fxi/projversor";
const pv = new Projversor(root, {
preset: "globe", // projection preset; also rotate, zoom
time: Date.parse("2025-03-15"), // playhead; default the latest month
playing: true,
interactive: true, // drag, pinch, wheel
colors: { ocean: "#111d23" }, // over the css custom properties
waitForLandDetail: true, // false: init() resolves before the 50m coastline
});
await pv.init(); // canvases in root, WebGL2; rejects without it
const currents = await pv.add("currents", "particles", {
source: "ocean-current-velocity", // projversor layer id or catalog entry id
tint: null, // particles colored by speed; or a scalar entry id
style: { palette: "viridis" },
});
await pv.add("sst", "scalar", {
source: "sea-water-temperature",
timeRange: { start: "2026-05-01", end: "2026-10-31" }, // as zartigl's
});
await pv.add("photo", "image", {
image: "https://example.org/map.png", // or a loaded image or canvas
bounds: [120, -30, 240, 30], // west, south, east, north
style: { opacity: 0.8 },
});
await pv.add("regions", "geojson", { data, style: { label: "name" } });
await currents.update({ particles: { density: 0.5 } }); // style override
await pv.replace("currents", "particles", { source: "surface-wind" });
await pv.update({ preset: "world", time, playing: false, speed: 2 });
pv.view.zoomBy(1.5); // goTo, rotateBy, setInset, outline, northAngle…
pv.on("month", ({ id, month }) => {}); // also status, palette, playing,
// preset, north, frame
await pv.remove("sst");
pv.destroy();
- 层层. 字段和图像按添加的顺序绘制; GeoJSON (行,
填满,点数
radius总是在他们上面。 一个粒子 一层一层. - 观想.
goTo进入已显示的视图,以及setInset页:1 当前设置, 不做任何工作: 以第一个视图构建preset, (中文(简体) ),rotate财务报告和审定财务报表zoom打开它没有变形. - 时间. 一个玩家 第一个字段推动它穿过它
数月;其他人跟随并负载自己的数月. 内容
timeRange,则 和zartigl的一样{ start?, end? }或者说{ trailing: "P6M" }),循环 在窗口上播放,而不是整个档案;null释出. 共享链接将其作为tr=2026-05-01/2026-10-31或者说tr=P6M。 。 。 . replace切换层的源、 线或样式 层会一直停留到新月解码。 以后的电话会取代的 仍在装入; 失败者保留显示的图层 .- 听着. 三道帆布:下面的海洋和陆地,WebGL数据在两者之间,
上方有草原,海岸线和地上杰森 颜色来自 Css 定制
属性
--ocean, (中文(简体) ),--land, (中文(简体) ),--coast, (中文(简体) ),--graticule, (中文(简体) ),--equator财务报告和审定财务报表--outline,读取于init()· ;colors(选项或update) 覆盖 他们在任何时候. - 说故事吧.
ProjversorStoryView将推进器适应@fxi/zartigl/story注册;视图配置可能包含geojson(单位:千美元)timeRange。 。 。 .
发展
zartigl来源于npm. 中国植物物种信息数据库. 把兄弟们连在一起 寄存器,然后重新安装以返回 npm 版本 :
npm run --prefix ../zartigl build:lib && npm link ../zartigl
npm install
npm test # unit tests
npm run quality # prettier, eslint, tsc
npm run build:lib # dist/: the published package
npm run test:browser # reference renders and app smoke tests
npm run dev:explorer # also dev:story, dev:site, dev:minimal
应用 : apps/explorer (球体上的每一个目录层), apps/story 联合国
的故事, apps/site (主页有卷轴故事)和 apps/minimal (海边
表面温度异常和尼诺区域,最小的一页).
npm run dev:explorer 和象样的人,各为各人服务; npm run build:apps
把它们都建起来 dist-apps/<name>/。 。 。 .
夹克
该图像服务于端口 8080 上的 nginx: Explorer at /, (中文(简体) ),
该故事在 /story/,该站点位于 /site/ 和最小页面
/minimal/ (单位:千美元)/healthz 健康检查).
docker compose up -d --build # from this folder; open http://localhost:8080
docker compose pull && docker compose up -d # the published image
国际慈善社出版 ghcr.io/fxi/projversor 从 main (单位:千美元)latest并且从 v*
标签.
GitHub Pages 发布同样的应用程序 main
(单位:千美元)https://fxi.github.io/projversor/, (中文(简体) ), story/, (中文(简体) ), site/, (中文(简体) ), minimal/) (中文(简体) ).
释放
npm run release:minor # or release:patch, release:major
npm version 凸起 package.json、承诺和标记 vX.Y.Z,然后是
脚本推 main 和标签。 标签将软件包发布到 npm
(单位:千美元)publish.yml,在质量、测试和 build:lib)和应用程序图像.