model-converter
This project aims to be a simple, lightweight, and useful 3D model editor.
For the moment, only obj, ply ascii models are supported.
Feel free to open an issue if you find anything wrong in this.
Scripts
A few utilities to manage 3D models :
convert.pythat converts any type of model to any otherviewer.pywhich is a simple script that renders a 3d model
Install
This project is written in python 3. The convert.py script is made for
needing nothing else than python. However, the viewer.py script has a few
dependencies, you'll need :
- pip (to install the other dependencies)
sudo apt-get install python3-pipfor example - numpy
sudo pip install numpy - pygame
sudo pip install pygame - PyOpenGL
sudo pip install pyopengl
Contributing
If you want to add a new format to this converter, it should be easy enough,
you just have to create a python file in d3/model/formats that should :
- be named after the format you want to add (e.g.
obj.py) - contain a function that tests if a filename is in the specified format (e.g.
is_obj) - contain a parser class (e.g.
OBJParser) - contain an exporter class (e.g.
OBJExporter)
About the parser
The parser should inherit the ModelParser class in the basemodel.py module.
The ModelParser class has everything needed to create a 3D model and render it.
About the exporter
The exporter should inherit the Exporter class in the basemodel.py module.
It should have a constructor that takes a ModelParser has parameter and a
__str__ method that should compute the export.
Formats
Here is the list of all the supported formats
- Wavefront
.obj - Stanford
.ply - STL files
.stl