2015-11-25 16:53:20 +08:00
|
|
|
<img src="doc/gmio.png" height="91" alt="gmio_logo"/>
|
|
|
|
======================================================
|
|
|
|
|
2015-07-13 17:22:43 +08:00
|
|
|
[](https://travis-ci.org/fougue/gmio)
|
|
|
|
[](https://ci.appveyor.com/project/HuguesDelorme/gmio)
|
|
|
|
<a href="https://scan.coverity.com/projects/5721">
|
|
|
|
<img alt="Coverity Scan Build Status"
|
|
|
|
src="https://scan.coverity.com/projects/5721/badge.svg"/>
|
2015-09-10 18:23:34 +08:00
|
|
|
</a>
|
2015-09-10 18:39:13 +08:00
|
|
|
[](https://coveralls.io/github/fougue/gmio?branch=master)
|
2016-07-05 18:46:22 +08:00
|
|
|
[](https://github.com/fougue/gmio/blob/master/LICENSE.txt)
|
2016-11-29 16:55:13 +08:00
|
|
|
[](https://github.com/fougue/gmio/releases)
|
2015-09-10 18:39:13 +08:00
|
|
|
|
2015-07-13 17:22:43 +08:00
|
|
|
|
2015-11-25 16:53:20 +08:00
|
|
|
C library for geometry input/output
|
2015-03-05 01:25:51 +08:00
|
|
|
===========================================
|
2014-01-21 23:18:17 +08:00
|
|
|
|
2016-03-25 20:08:17 +08:00
|
|
|
gmio is a reusable C library providing complete I/O support for various CAD file
|
2016-04-27 22:11:00 +08:00
|
|
|
formats(eg. [STL](https://en.wikipedia.org/wiki/STL_%28file_format%29))
|
2015-03-05 01:25:51 +08:00
|
|
|
|
2015-11-25 17:18:49 +08:00
|
|
|
gmio aims to be [fast](https://github.com/fougue/gmio/wiki/4.-Benchmarks),
|
2016-12-14 22:46:59 +08:00
|
|
|
portable(C99 conformance) and feature-rich.
|
2016-03-15 01:00:27 +08:00
|
|
|
|
2015-03-05 01:25:51 +08:00
|
|
|
Main highlights:
|
2015-04-01 22:07:00 +08:00
|
|
|
|
2016-03-16 19:26:11 +08:00
|
|
|
* [x] "Abstract" streams that does not tie the user to C stream(`FILE*`)
|
2015-11-25 17:18:49 +08:00
|
|
|
* [x] Buffering of input/ouput for efficient device usage
|
2016-03-11 19:43:51 +08:00
|
|
|
* [x] Operations can be easily aborted
|
2016-03-14 19:36:46 +08:00
|
|
|
* [x] Progress report about the I/O operation
|
2015-03-05 01:25:51 +08:00
|
|
|
|
2017-01-31 00:43:35 +08:00
|
|
|
Supported formats:
|
|
|
|
|
|
|
|
| Read | Write
|
|
|
|
--------------------------|-----------|---------
|
|
|
|
STL ascii | ✔ | ✔
|
|
|
|
STL binary(little-endian) | ✔ | ✔
|
|
|
|
STL binary(big-endian) | ✔ | ✔
|
|
|
|
AMF uncompressed | ✗ | ✔
|
|
|
|
AMF zip | ✗ | ✔
|
|
|
|
AMF zip64 | ✗ | ✔
|
2014-01-21 23:18:17 +08:00
|
|
|
|
|
|
|
|
2015-05-28 15:40:24 +08:00
|
|
|
Building gmio
|
2016-04-08 18:10:03 +08:00
|
|
|
=============
|
2014-01-21 23:18:17 +08:00
|
|
|
|
2015-05-28 15:40:24 +08:00
|
|
|
gmio can be built with CMake, by default a static library is generated.
|
2015-04-01 22:07:00 +08:00
|
|
|
|
2015-11-25 17:18:49 +08:00
|
|
|
Read the [Build instructions](https://github.com/fougue/gmio/wiki/2.-Build-instructions)
|
2014-01-21 23:18:17 +08:00
|
|
|
|
|
|
|
|
2016-04-08 18:10:03 +08:00
|
|
|
Documentation
|
|
|
|
=============
|
|
|
|
|
2016-11-29 16:55:13 +08:00
|
|
|
The HTML reference manual generated by Doxygen is [here](http://www.fougue.pro/docs/gmio/0.4)
|
2016-04-08 18:10:03 +08:00
|
|
|
|
|
|
|
There is also a [wiki](https://github.com/fougue/gmio/wiki)
|
|
|
|
|
2014-01-21 23:18:17 +08:00
|
|
|
|
2016-06-24 00:14:36 +08:00
|
|
|
Getting help
|
|
|
|
============
|
|
|
|
|
|
|
|
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`.
|
|
|
|
|
|
|
|
|
2015-03-03 18:03:50 +08:00
|
|
|
How to report a bug
|
|
|
|
===================
|
2014-01-21 23:18:17 +08:00
|
|
|
|
2016-03-15 01:00:27 +08:00
|
|
|
The gmio bug tracking system is open to the public at
|
|
|
|
https://github.com/fougue/gmio/issues.
|
|
|
|
|
2015-05-28 15:40:24 +08:00
|
|
|
If you think you have found a bug in gmio, we would like to hear
|
2016-03-15 01:00:27 +08:00
|
|
|
about it so that we can fix it.
|
2014-01-21 23:18:17 +08:00
|
|
|
|
2016-03-15 01:00:27 +08:00
|
|
|
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.
|
2014-01-21 23:18:17 +08:00
|
|
|
|
|
|
|
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.
|
|
|
|
|
|
|
|
|
2015-03-03 18:03:50 +08:00
|
|
|
License
|
|
|
|
=======
|
|
|
|
|
2016-07-05 18:46:22 +08:00
|
|
|
gmio is made available under a "2-clause" BSD [license](https://github.com/fougue/gmio/blob/master/LICENSE.txt).
|
2015-11-27 18:39:27 +08:00
|
|
|
|
|
|
|
|
2016-03-14 19:36:46 +08:00
|
|
|
Credits
|
|
|
|
=======
|
|
|
|
|
2016-04-27 22:11:00 +08:00
|
|
|
"gmio" logo rendered with Prism font(thanks to Erik Yin !)
|