
Hi all, It fills us with astronomical joy to announce the release of czml3 0.3.0! 🌍 czml3 is a Python (3.6+) library to write CZML. Copying from the CZML Guide:
CZML is a JSON format for describing a time-dynamic graphical scene, primarily for display in a web browser running Cesium. It describes lines, points, billboards, models, and other graphical primitives, and specifies how they change with time. While Cesium has a rich client-side API, CZML allows it to be data-driven so that a generic Cesium viewer can display a rich scene without the need for any custom code. In many ways, the relationship between Cesium and CZML is similar to the relationship between Google Earth and KML.
czml3 aims to be useful for interactive use:
from czml3 import Packet Packet() { "id": "adae4d3a-7087-4fda-a70b-d18a262a890e" } packet0 = Packet(id="Facility/AGI", name="AGI") packet0 { "id": "Facility/AGI", "name": "AGI" } packet0.dumps() '{"id": "Facility/AGI", "name": "AGI"}'
This new release brings some new properties (Box, BoxDimensions, EyeOffset), better validation for Position, and a widget for Jupyter notebook: In [1]: from czml3.examples import simple In [2]: from czml3.widget import CZMLWidget In [3]: CZMLWidget(simple) You can install it with pip: pip install --upgrade czml3 And check out the repository on GitHub, which contains a more detailed README, tests (>99 % coverage) and the issue tracker: https://github.com/poliastro/czml3 If you have any questions or want to contribute, join our chat! https://chat.openastronomy.org/#/room/#poliastro-czml:matrix.org czml3 is similar in intent to czml, a Python library written by Christian Ledermann. czml3 is implemented from scratch and tries to be easier to use on an interactive interpreter, and (for the moment) focuses only on writing. Per Python ad astra!