gmio is a reusable C library providing complete I/O support for various CAD file formats(eg. STL)
gmio aims to be fast, portable(C99 conformance) and feature-rich.
Main highlights:
- "Abstract" streams that does not tie the user to C stream(
FILE*
) - Buffering of input/ouput for efficient device usage
- Operations can be easily aborted
- Progress report about the I/O operation
Supported formats | Read | Write |
---|---|---|
AMF uncompressed | ✗ | ✔ |
AMF zip | ✗ | ✔ |
AMF zip64 | ✗ | ✔ |
STL ascii | ✔ | ✔ |
STL binary(little-endian) | ✔ | ✔ |
STL binary(big-endian) | ✔ | ✔ |
gmio can be built with CMake, by default a static library is generated.
Read the Build instructions
The HTML reference manual generated by Doxygen is here
There is also a wiki
For now use the gmio issue tracking system provided by GitHub at https://github.com/fougue/gmio/issues
Just create an issue with label help wanted
or question
.
The gmio bug tracking system is open to the public at https://github.com/fougue/gmio/issues.
If you think you have found a bug in gmio, we would like to hear about it so that we can fix it.
Always include the following information in your bug report:
- the name and version number of your compiler
- the name and version number of your operating system
- the version of gmio you are using
- what configure options it was compiled with.
If the problem you are reporting is only visible at run-time, try to create a small test program that shows the problem when run.
gmio is made available under a "2-clause" BSD license.
"gmio" logo rendered with Prism font(thanks to Erik Yin !)