Skip to content

Latest commit

 

History

History
80 lines (57 loc) · 2.84 KB

README.md

File metadata and controls

80 lines (57 loc) · 2.84 KB

Planetoids

Procedurally generated worlds.

Build Status Coverage Status Codacy Status

What is it?

Planetoids is a high level Python API for generating interactive, procedurally generated worlds from data in a pandas DataFrame.

What does it do?

Currently, Planetoids is able to terraform a planet from two-dimensional data that has an optional cluster attribute. It's still very new and will be growing in capabilities, but for now the library can achieve the following when terraforming a new world:
  • generates somewhere in space to render your creation
  • generates an ecology based on input data statistics
  • generates land masses
    • these land masses have
      • topographic detail (contours)
      • relief detail (gradients)
  • generates lighting effects in the form of a hillshade

Your terraformed world can be rendered using many different map projections for different effects.

This is just the beginning

I'm hoping to add in hydrological effects, atmospheric effects, bathometry, vegetation, civilizations, animations and a whole lot more. If you'd be interested in helping shape and grow this library to its full potential, take a look at the issues with a good first issue label or raise an issue with features you think the library could benefit from.

How to create a Planetoid

Creating a Planetoid is as simple as
import planetoids as pt
planet = pt.Planetoid(df, x="x_column", y="y_column", cluster_field="cluster_column").fit_terraform()

For full working examples, check out the interactive online demo notebooks.

Installing

Planetoids depends on:
  • pandas
  • sklearn
  • shapely
  • pyproj
  • plotly
  • opencv
  • and their related dependencies like numpy and scipy

Install Options

Conda:
```...```

PyPI:

```...```

Manual:

    wget https://github.com/paulds8/planetoids/archive/master.zip
    unzip master.zip
    rm master.zip
    cd planetoids
    pip install -r requirements.txt

If you're on Windows and installing from PyPI or Manually, you will probably need to install the following dependencies:

...

Documentation

This library is super new, so there's not a ton of documentation to come by just yet, but the public-facing API is fully documented here.