czmlpy


Nameczmlpy JSON
Version 0.9.0 PyPI version JSON
download
home_pagehttps://github.com/mixxen/czmlpy
SummaryPython 3 library to write CZML
upload_time2023-04-13 09:31:19
maintainer
docs_urlNone
authorJuan Luis Cano Rodríguez
requires_python>=3.7
licenseMIT
keywords czml cesium orbits
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            :Name: czmlpy
:Authors: Juan Luis Cano Rodríguez, Eleftheria Chatziargyriou

czmlpy is a Python library to write CZML.

What is CZML?
=============

From the official
`CZML Guide <https://github.com/AnalyticalGraphicsInc/czml-writer/wiki/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.

Installation
============

You can install czmlpy using pip::

  $ pip install czmlpy

or conda::

  $ conda install czmlpy --channel conda-forge

czmlpy requires Python >= 3.7.

Examples
========

A CZML document is a list of *packets*, which have several properties.
When using czmlpy in an interactive interpreter,
all objects show as nice CZML (JSON)::

  >>> from czmlpy import Packet
  >>> print(Packet())
  {
      "id": "adae4d3a-7087-4fda-a70b-d18a262a890e"
  }
  >>> packet0 = Packet(id="Facility/AGI", name="AGI")
  >>> print(packet0)
  {
      "id": "Facility/AGI",
      "name": "AGI"
  }
  >>> packet0.dumps()
  '{"id": "Facility/AGI", "name": "AGI"}'

And there are more complex examples available::

  >>> from czmlpy.examples import simple
  >>> print(simple)
  [
      {
          "id": "document",
          "version": "1.0",
          "name": "simple",
          "clock": {
              "interval": "2012-03-15T10:00:00Z/2012-03-16T10:00:00Z",
              "currentTime": "2012-03-15T10:00:00Z",
              "multiplier": 60,
              "range": "LOOP_STOP",
              "step": "SYSTEM_CLOCK_MULTIPLIER"
          }
      },
  ...

Jupyter widget
--------------

You can easily display your CZML document using our interactive widget::

  In [1]: from czmlpy.examples import simple

  In [2]: from czmlpy.widget import CZMLWidget

  In [3]: CZMLWidget(simple)

And this would be the result:

.. image:: https://raw.githubusercontent.com/mixxen/czmlpy/master/widget-screenshot.png

Support
=======

If you find any issue on czmlpy or have questions,
please `open an issue on our repository <https://github.com/mixxen/czmlpy/issues/new>`_

Contributing
============

You want to contribute? Awesome! There are lots of
`CZML properties <https://github.com/AnalyticalGraphicsInc/czml-writer/wiki/Packet>`_
that we still did not implement. Also, it would be great to have
better validation, a Cesium widget in Jupyter notebook and JupyterLab...
Ideas welcome!

We recommend `this GitHub workflow <https://www.asmeurer.com/git-workflow/>`_
to fork the repository. To run the tests,
use `tox <https://tox.readthedocs.io/>`_::

  $ tox

Before you send us a pull request, remember to reformat all the code::

  $ tox -e reformat

This will apply black, isort, and lots of love ❤️

To build a wheel file, update version in setup.py and __init__.py, then::

  $ python setup.py sdist bdist_wheel
  $ twine upload --repository testpypi dist/*

License
=======

czmlpy is released under the MIT license, hence allowing commercial
use of the library. Please refer to the :code:`LICENSE` file.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/mixxen/czmlpy",
    "name": "czmlpy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "czml,cesium,orbits",
    "author": "Juan Luis Cano Rodr\u00edguez",
    "author_email": "hello@juanlu.space",
    "download_url": "https://files.pythonhosted.org/packages/14/73/61d4069162252bb5ee5b72ea22129823431667b1e8f07cd6e421af83b184/czmlpy-0.9.0.tar.gz",
    "platform": "any",
    "description": ":Name: czmlpy\n:Authors: Juan Luis Cano Rodr\u00edguez, Eleftheria Chatziargyriou\n\nczmlpy is a Python library to write CZML.\n\nWhat is CZML?\n=============\n\nFrom the official\n`CZML Guide <https://github.com/AnalyticalGraphicsInc/czml-writer/wiki/CZML-Guide>`_:\n\n  CZML is a JSON format for describing a time-dynamic graphical scene,\n  primarily for display in a web browser running Cesium.\n  It describes lines, points, billboards, models, and other graphical primitives,\n  and specifies how they change with time.\n  While Cesium has a rich client-side API,\n  CZML allows it to be data-driven\n  so that a generic Cesium viewer can display a rich scene\n  without the need for any custom code.\n\nInstallation\n============\n\nYou can install czmlpy using pip::\n\n  $ pip install czmlpy\n\nor conda::\n\n  $ conda install czmlpy --channel conda-forge\n\nczmlpy requires Python >= 3.7.\n\nExamples\n========\n\nA CZML document is a list of *packets*, which have several properties.\nWhen using czmlpy in an interactive interpreter,\nall objects show as nice CZML (JSON)::\n\n  >>> from czmlpy import Packet\n  >>> print(Packet())\n  {\n      \"id\": \"adae4d3a-7087-4fda-a70b-d18a262a890e\"\n  }\n  >>> packet0 = Packet(id=\"Facility/AGI\", name=\"AGI\")\n  >>> print(packet0)\n  {\n      \"id\": \"Facility/AGI\",\n      \"name\": \"AGI\"\n  }\n  >>> packet0.dumps()\n  '{\"id\": \"Facility/AGI\", \"name\": \"AGI\"}'\n\nAnd there are more complex examples available::\n\n  >>> from czmlpy.examples import simple\n  >>> print(simple)\n  [\n      {\n          \"id\": \"document\",\n          \"version\": \"1.0\",\n          \"name\": \"simple\",\n          \"clock\": {\n              \"interval\": \"2012-03-15T10:00:00Z/2012-03-16T10:00:00Z\",\n              \"currentTime\": \"2012-03-15T10:00:00Z\",\n              \"multiplier\": 60,\n              \"range\": \"LOOP_STOP\",\n              \"step\": \"SYSTEM_CLOCK_MULTIPLIER\"\n          }\n      },\n  ...\n\nJupyter widget\n--------------\n\nYou can easily display your CZML document using our interactive widget::\n\n  In [1]: from czmlpy.examples import simple\n\n  In [2]: from czmlpy.widget import CZMLWidget\n\n  In [3]: CZMLWidget(simple)\n\nAnd this would be the result:\n\n.. image:: https://raw.githubusercontent.com/mixxen/czmlpy/master/widget-screenshot.png\n\nSupport\n=======\n\nIf you find any issue on czmlpy or have questions,\nplease `open an issue on our repository <https://github.com/mixxen/czmlpy/issues/new>`_\n\nContributing\n============\n\nYou want to contribute? Awesome! There are lots of\n`CZML properties <https://github.com/AnalyticalGraphicsInc/czml-writer/wiki/Packet>`_\nthat we still did not implement. Also, it would be great to have\nbetter validation, a Cesium widget in Jupyter notebook and JupyterLab...\nIdeas welcome!\n\nWe recommend `this GitHub workflow <https://www.asmeurer.com/git-workflow/>`_\nto fork the repository. To run the tests,\nuse `tox <https://tox.readthedocs.io/>`_::\n\n  $ tox\n\nBefore you send us a pull request, remember to reformat all the code::\n\n  $ tox -e reformat\n\nThis will apply black, isort, and lots of love \u2764\ufe0f\n\nTo build a wheel file, update version in setup.py and __init__.py, then::\n\n  $ python setup.py sdist bdist_wheel\n  $ twine upload --repository testpypi dist/*\n\nLicense\n=======\n\nczmlpy is released under the MIT license, hence allowing commercial\nuse of the library. Please refer to the :code:`LICENSE` file.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python 3 library to write CZML",
    "version": "0.9.0",
    "split_keywords": [
        "czml",
        "cesium",
        "orbits"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7fa7ab7997b8cee53c9e38f07240607a12656107409bb9c09dadf92ba9bc5ed9",
                "md5": "3f0cf6b971dbc91edaa390eecb96bfa5",
                "sha256": "6fb2a7a33f732e9a96e00cdfcaddc2d2d9a4bcd1eeb3dddc81e499d83d17241a"
            },
            "downloads": -1,
            "filename": "czmlpy-0.9.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3f0cf6b971dbc91edaa390eecb96bfa5",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 29915,
            "upload_time": "2023-04-13T09:31:16",
            "upload_time_iso_8601": "2023-04-13T09:31:16.395606Z",
            "url": "https://files.pythonhosted.org/packages/7f/a7/ab7997b8cee53c9e38f07240607a12656107409bb9c09dadf92ba9bc5ed9/czmlpy-0.9.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "147361d4069162252bb5ee5b72ea22129823431667b1e8f07cd6e421af83b184",
                "md5": "501acbac6c10a9801b8de3ecfc3e970b",
                "sha256": "55a7b4880e846a0feeff08f500d6a49d0b34ad63f936a7d3748df0cbd1a13bbc"
            },
            "downloads": -1,
            "filename": "czmlpy-0.9.0.tar.gz",
            "has_sig": false,
            "md5_digest": "501acbac6c10a9801b8de3ecfc3e970b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 37970,
            "upload_time": "2023-04-13T09:31:19",
            "upload_time_iso_8601": "2023-04-13T09:31:19.195044Z",
            "url": "https://files.pythonhosted.org/packages/14/73/61d4069162252bb5ee5b72ea22129823431667b1e8f07cd6e421af83b184/czmlpy-0.9.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-13 09:31:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "mixxen",
    "github_project": "czmlpy",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": false,
    "circle": true,
    "tox": true,
    "lcname": "czmlpy"
}
        
Elapsed time: 1.01143s