(ANN)approximate nearest neighbor searching(ANN)
近似最近邻搜索库
ANN
(assimp)Official Open Asset Import Library Repository
用来导入导出不同3D模型格式的库,并且能够进行一定程度的场景后处理的库
https://github.com/assimp/assimp
(CGAL)Computational Geometry Algorithms Library
计算机几何算法库,提供cpp形式的几何算法
WinEditLine
又叫editline,MinGWEditLine,对于原生windows控制台的EditLine的API实现;旨在实现GNU的Readline库在Windows控制台下的大多数功能
http://mingweditline.sourceforge.net/?Description
https://sourceforge.net/projects/mingweditline/files/
flann
freeglut
OpenGL只是一个接口标准,它的实现一般自带在操作系统里,只要确保显卡驱动足够新就可以使用。如果需要在程序里直接使用OpenGL,会有很多非常恶心的预备工作要做,而且可能还要专门为平台的差异写一些代码。
要跳过这些工作,可以用一个utility库,直接使用它提供的函数,就不用操心那些细节了。这样的库新一点的有GLEW,因为开源所以安装相对方便(大不了丢进去一起编译),但各种教程和书里常见的是闭源的GLUT。由于GLUT的作者已经很久没更新过了(最后更新于2000年),所以其他人另外做了一个接口兼容GLUT的freeglut,开源而且一直在维护中。
FreeImage
freeimage是一款免费的、开源的、跨平台的,支持20多种图像类型的图像处理库。
DevIL
Developer’s Image Library (DevIL):图像加载库
http://openil.sourceforge.net/about.php
FW1FontWrapper
fw1是一个字体接口库,用于使用Direct3D11绘制文字
https://archive.codeplex.com/?p=fw1
libsndfile
libsndfile是一个专门为读写音频采样文件(如wav或者AIFF)设计的C程序库。它支持多种格式,并且有简单易用的接口。在buildroot sdk中可以非常方便的配置和使用libsndfile。
http://www.mega-nerd.com/libsndfile/
lodepng
LodePNG是一个集合了PNG图像解码器和编码器的代码文件,不依赖于诸如zlib和libpng的外部链接/库,提供方便友好的PNG编解码器调用方法。LodePNG主要是采用C(ISO C90)编写的,并提供了C++的接口。LodePNG的使用非常简单,只要在项目文件中包含lodepng.cpp和lodepng.h或者lodepng.c和lodepng.h就可以。
OpenMesh
Openmesh是一个广泛和高效的数据结构,用于展示和操作多边形mesh,属于cpp库
Open3D
Open3D是一个快速处理3D数据的开源库,前端提供了一系列数据结构和cpp和python接口,后端是并行化的所需依赖少。
rapidjson
RapidJSON是腾讯开源的一个高效的C++ JSON解析器及生成器,它是只有头文件的C++库。RapidJSON是跨平台的,支持Windows, Linux, Mac OS X及iOS, Android
https://github.com/Tencent/rapidjson/
readline
要做一个命令行下的交互式开源软件,是否希望也能有这些命令补全、搜索历史命令、行编辑快捷键等等这些人性化的交互方式。
Readline Library 是 GNU 自由软件,在 GNU GPL V3 协议下发布,因此如果你的程序中需要用到该库,也必须遵守相关协议。
zlib
zlib 是通用的压缩库,提供了一套 in-memory 压缩和解压函数,并能检测解压出来的数据的完整性(integrity)。zlib 也支持读写 gzip (.gz) 格式的文件
https://zlib.net/
http://www.gzip.org
MPFR库
https://www.mpfr.org/
GNU下提供多精度浮点计算和误差的正确舍入的库
gmp
全称是GNU Multiple Precision Arithmetic Library,即GNU高精度算术运算库,# 它的功能非常强大,接口很简单,文档详尽,有C风格的接口也有C++的精心封装后的接口,其中不但有普通的整数、实数、浮点数的高精度运算,还有随机数生成,尤其是提供了非常完备的数论中的运算接口,比如Miller-Rabin素数测试算法,大素数生成,欧几里德算法,求域中元素的逆,Jacobi符号,legendre符号等。
它本身提供了很多例子程序,学习过程非常快,很容易将它们集成到自己的代码中去。
https://gmplib.org/
AntTweakBar
AntTweakBar是一个轻量且易于使用的cpp库,允许编程人员快速利用Opengl或者DirectX 构造轻量可视化的UI,
http://anttweakbar.sourceforge.net/doc/
nanoflann
nanoflann是一个c++11标准库,用于构建具有不同拓扑(R2,R3(点云),SO(2)和SO(3)(2D和3D旋转组))的KD树。nanoflann不需要编译或安装。你只需要#include <nanoflann.hpp>在你的代码中。
hdf5
hdf5是一个高性能数据软件库,有特有的文件存储格式用于管理,处理和存储多样的数据,
DXUT
DXUT是一个类似glut的框架,适用于windows平台上的Direct3D11,让Direct3D11编程更加易用
stb
stb是一个cpp的单文件库,里面有好多单个文件,每个文件不相互依赖,实现杂项,解析,数学,游戏,3D图形学,用户界面,音频等多种功能
stb单文件库