NeoGeographyToolkit / synthterrain

Tools for the generation of synthetic planetary terrain
Apache License 2.0
3 stars 0 forks source link

Documentation request + error running synthterrain #18

Closed ram-bhaskara closed 1 month ago

ram-bhaskara commented 1 month ago

Description

Thank you for open sourcing this VIPER project.

  1. I notice the code cites the scientific studies on crater distribution: functions.py has useful info. Do you think it would be feasible to briefly describe the methods in the project page to add more information on what is happening under the hood? I am interested to develop visualization through Blender. Do you have any plans on extending this work for terrain rendering? I see synthcraterplot gives a plot for crater distribution. This was useful to quickly grasp the output.

image

  1. Running @test1.txt: I get the following error - image

What I Did

synthterrain @test1.txt (same test1.txt as the example). 
rbeyer commented 1 month ago

These are great questions, let me see if I can get them all:

1.a. Thanks, we tried to make sure we were documenting the scientific source of the algorithms in docstrings for the code, and I'm glad you went looking for them. One of our to-do items is, indeed, to expose those docstrings (an initial go can be found in the docs/ directory, but also to write a little more narratively about how those elemental pieces are used together, and where a programmatic user (as opposed to just a command-line user) might want to tinker.

1.b. Yes, but it is uncertain when those plans might get acted upon. We felt these initial make-me-some-craters and make-me-some-rocks functions had a significantly broad usefulness, that we wanted to share them. The CSV outputs of synthterrain can be useful building blocks to a variety of rendering options. Blender is a great one. The VIPER project takes these CSV files and performs some additional processing and then uses Gazebo (because that's what we use for our rover simulation environment) to perform rendering, but there's no limitation.

You may also want to take a look at synthcraters -h which is the "generate craters" part of synthterrain, it has an option to generate a terrain model (a GeoTIFF) from the craters. This may be better for pulling into Blender. It will look very smooth and "perfect" because it just puts the "ideal" craters on a flat surface, but it might be a good place to start from where you can add texture, etc.

1.c. I'm glad you found it useful.

  1. That's a good point. That's my bad. If you edit your test1.txt file, and delete the --craters line, it will work successfully. I put that in there as an example of how you could use a set of pre-existing craters, but it was not at all explained in the README. You can learn more about it with syntheterrain -h but I'll at least remove that from the README, so that other folks aren't led astray. Thanks!
ram-bhaskara commented 1 month ago

Thank you for the quick update @rbeyer :smiley: