Project concept

In this blog we will explore the possibility to create custom STL files based on topographic data sources via a web interface.

General workflow:



  1. The user will select the the wanted terrain via a map interface, here he will set the coordinates and radius of the map.
  2. These properties get send to the web server which will request a height map from the corresponding data source. This can be via a API request or in a internal file. 
  3. The webserver launches blender via a terminal command a launches the internal python script. This script will get the height map and needed model properties
  4. After the python script has been processed blender will export a STL file and render a image of the model. The render part may be optional
  5. The webserver fetches the STL file and optional rendered image and sends these through to the web interface.
  6. Now the user can preview the model via the rendered image and download the wanted STL model.
The currently planned development process for this project is the following:
  1. Python script that converts a height map to 3D model.
  2. Fetch height maps from corresponding data sources. Certain data sources only have topographic data for there region. So a method to find and fetch needed data will have to be implemented. Some limitations may have to placed for region with inaccessible data.
  3. A map interface for the web client. The end user will be interacting with this to select there wanted region. 
  4. A microservice implementation to queue request and dedicate computation resources.

Terminology:

  • Topographic: Elevation data of terrain commonly used as heightmap 
  • Heightmap: Image that shows height of terrain. A height map only has one channel which can be interpreted as the distance between lowest and highest point. It does not give to absolute elevation of any given point but rather the relative displacement.


Comments

Popular posts from this blog

Blender api script

Nasa topographic data