目录

Computer Graphics Group at RWTH Aachen

OpenFlipper 

OpenMesh

OpenVolumeMesh

【IceSL】ADVANCED MODELING AND SLICING FOR 3D PRINTING

【geogram】a programming library with geometric algorithms

Projects and softwares with Geogram

Projects and softwares

Publications

【Coin3D】OpenInventer API的开源实现

【Gmsh】Gmsh

【OCC】OpenCascade

【FreeCAD】

【CGAL】The Computational Geometry Algorithms Library

【Coin3D】

【VTK】Visualization Toolkit

【libigl】 A simple C++ geometry processing library

【VCG Library】

【trimesh】  

【MeshLab】  

【Computer Graphics and Multimedia】

【Open3D】 – A Modern Library for 3D Data Processing

【OSG】Openscenegraph

【OGRE】开源游戏图形引擎

【Scaffolder】

【ImGui】C++轻量级界面开发框架




Computer Graphics Group at RWTH Aachen

Computer Graphics and Multimedia

OpenFlipper 

Open Flipper - Computer Graphics and Multimedia

OpenFlipper是一个开源的多平台应用程序和编程框架,旨在处理、建模和渲染几何数据。

OpenMesh

官网:http://www.openmesh.org/

github(非openmesh官方):https://github.com/heyaaron/openmesher

OpenMesh是一种用于表示和操作多边形网格的通用且高效的数据结构。有关OpenMesh及其特性的更多信息,请查看介绍页面。OpenMesh是一个c++库。还提供了Python绑定。在OpenMesh的基础上,我们开发了一个灵活的几何建模和处理框架OpenFlipper。

OpenVolumeMesh

OpenVolumeMesh - Computer Graphics and Multimedia


【IceSL】ADVANCED MODELING AND SLICING FOR 3D PRINTING

官网:https://icesl.loria.fr/

Software | MFX

IceSL is a state of the art slicer (STL → G-code) with advanced modeling capabilities. Head to the  features page  to know all about IceSL’s cutting edge technology.

For documentation, guides, tutorials and references about using IceSL, go to the  documentation section  as well as the handy  cheatsheet  we’ve created. If you want to ask a question about IceSL or inquire about licensing, please reach us through our  forum  or go to the  about page  where there is also a F.A.Q section.

See also the Acknowledgements section for information on funding and/or technologies used in IceSL.

geogram】a programming library with geometric algorithms

BrunoLevy/geogram: a programming library with geometric algorithms (github.com)

Geogram is a programming library with geometric algorithms.

It contains the main results in Geometry Processing from the former ALICE Inria project, that is, more than 30 research articles published in ACM SIGGRAPH, ACM Transactions on Graphics, Symposium on Geometry Processing and Eurographics.

It was supported by two grants from the European Research Council (ERC): GOODSHAPE and VORPALINE.

Publications · BrunoLevy/geogram Wiki

Projects and softwares with Geogram

Projects and softwares

Publications

2022

......

【Coin3D】OpenInventer API的开源实现

官网:Coin3D

Coin is an OpenGL-based, 3D graphics library that has its roots in the Open Inventor 2.1 API, which Coin still is compatible with.

If you are not familiar with Open Inventor, it is a scene-graph based, retain-mode, rendering and model manipulation, C++ class library, originally designed by SGI. It quickly became the de facto standard graphics library for 3D visualization and visual simulation software in the scientific and engineering community after its release. It also became the basis for the VRML1 file format standard. Several books exists on the subject of Open Inventor, most notably The Inventor Mentor, and The Inventor Toolmaker, both highly recommended for those who wants to learn how to use Open Inventor.

Coin is based on the API of this library, but was developed from scratch independently before SGI Open Inventor became open source. It does not share any code with SGI Open Inventor, other than through random coincidences guided by the Open Inventor API design.

Coin reached the goal of Open Inventor 2.1 compatibility in the autumn of the year 2000, and has since then been extended with a huge set of additional features, ranging from 3D sound support to GLSL shader support, additional file formats like VRML97, and a large number of internal changes for keeping up with the newer, more optimized OpenGL rendering techniques that were not available in the earlier days.

Another term you might find when reading about Coin is "Coin3D", which is the term we use on the larger group of libraries that all fall under the same license as Coin. Coin is the core of Coin3D.

【Gmsh】Gmsh

官网:

Gmsh: a three-dimensional finite element mesh generator withbuilt-in pre- and post-processing facilities​​​​​​

Gmsh is an open source 3D finite element mesh generator with a built-in CAD engine and post-processor. Its design goal is to provide a fast, light and user-friendly meshing tool with parametric input and advanced visualization capabilities. Gmsh is built around four modules: geometry, mesh, solver and post-processing. The specification of any input to these modules is done either interactively using the graphical user interface, in ASCII text files using Gmsh's own scripting language (.geo files), or using the C++, C, Python or Julia Application Programming Interface (API).

See this general presentation for a high-level overview of Gmsh and recent developments, the screencasts for a quick tour of Gmsh's graphical user interface, and the reference manual for a more thorough overview of Gmsh's capabilities, some frequently asked questions and the documentation of the C++, C, Python and Julia API.

The source code repository contains many examples written using both the built-in script language and the API (see e.g. the tutorials and the additional examples).

【OCC】OpenCascade

官网:Open CASCADE Technology | Collaborative development portal

下载链接:Download - Open CASCADE Technology

Open CASCADE Technology (OCCT) is the only open-source full-scale 3D geometry library. Striving to be one of the best free cad software kernels, OCCT is widely used for the development of specialized programs dealing with the following engineering and mechanical domains: 3D modeling (CAD), manufacturing (CAM), numerical simulation (CAE), measurement equipment (CMM) and quality control (CAQ). Since its publication in 1999 as an open source CAD software kernel, OCCT has been successfully used in numerous projects ranging from building and construction to aerospace and automotive.


【FreeCAD】

FreeCAD: Your own 3D parametric modelerFreeCAD: Your own 3D parametric modeler


【CGAL】The Computational Geometry Algorithms Library

官网:The Computational Geometry Algorithms Library

github:https://github.com/CGAL/cgal

       

   

CGAL is a software project that provides easy access to efficient and reliable geometric algorithms in the form of a C++ library. CGAL is used in various areas needing geometric computation, such as geographic information systems, computer aided design, molecular biology, medical imaging, computer graphics, and robotics.

The library offers data structures and algorithms like triangulationsVoronoi diagramsBoolean operations on polygons and polyhedrapoint set processingarrangements of curvessurface and volume mesh generationgeometry processingalpha shapesconvex hull algorithmsshape reconstructionAABB and KD trees...

Learn more about CGAL by browsing through the Package Overview.

       CGAL,Computational Geometry Algorithms Library,计算几何算法库,设计目标是以C++库的形式,提供方便,高效,可靠的几何算法。CGAL可用于各种需要几何计算的领域,如计算机图形学,科学可视化,计算机辅助设计和建模,地理信息系统,分子生物学,医学成像,机器人运动规划,网格生成,数值方法等等。  

       计算几何算法库(CGAL),提供计算几何相关的数据结构和算法,诸如三角剖分(2D约束三角剖分及二维和三维Delaunay三角剖分),Voronoi图(二维和三维的点,2D加权Voronoi图,分割Voronoi图等),多边形(布尔操作,偏置),多面体(布尔运算),曲线整理及其应用,网格生成(二维Delaunay网格生成和三维表面和体积网格生成等),几何处理(表面网格简化,细分和参数化等),凸壳算法(2D,3D和dD),搜索结构(近邻搜索,kd树等),插值,形状分析,拟合,距离等。


【Coin3D】

官网:coin3d

安装配置:

Open Inventor与Coin3D开发环境配置/Vs2017+Qt+coin3D配置方法,实测可用_井三崩的博客-CSDN博客_coin3d配置楼主因为导入机械臂模型做三维仿真界面,多方查找后决定使用Openinventor实现,其中,coin3d作为开源软件,且能够联合Qt使用,符合楼主需求。然而,在网上找了好多资料发现配置coin3d的教程大部分都为cs2010+coin3d,很多放在现在根本没法使用。废了九牛二虎之力才整好勉强能用的办法(非计算机半路出家==),下面介绍下配置方法,希望能对大家有帮助。vs2017社区版(下载m...https://blog.csdn.net/qq_43090821/article/details/97560442基于VS2019+QT的Coin3D三维可视化库的安装预测测试_开拓者5号的博客-CSDN博客_coin3d1、Coin3D介绍Coin3D是一个基于OpenGL的三维图形库,它源于Open Inventor 2.1api,Coin仍然与之兼容。如果你不熟悉OpenInventor,它是一个场景图,保留模式,渲染和模型操作,C++类库,最初由SGI设计。它发布后,迅速成为科学界和工程界事实上的三维可视化和可视化仿真软件的标准图形库。Coin3D基于这个库的API,但是在SGI Open Inve...https://blog.csdn.net/yanfeng1022/article/details/105889204


【VTK】Visualization Toolkit

官网:VTK - The Visualization Toolkit

github:https://github.com/Kitware/VTK

gitlab:VTK / VTK · GitLab

可以利用python接口做可视化

The Visualization Toolkit (VTK) is open source software for manipulating and displaying scientific data. It comes with state-of-the-art tools for 3D rendering, a suite of widgets for 3D interaction, and extensive 2D plotting capability.

VTK is part of Kitware’s collection of supported platforms for software development. The platform is used worldwide in commercial applications, as well as in research and development. For examples, please see VTK in Action.


【libigl】 A simple C++ geometry processing library

官网:libigl

github:https://github.com/libigl/libigl

libigl is a simple C++ geometry processing library. We have a wide functionality including construction of sparse discrete differential geometry operators and finite-elements matrices such as the cotangent Laplacian and diagonalized mass matrix, simple facet and edge-based topology data structures, mesh-viewing utilities for OpenGL and GLSL, and many core functions for matrix manipulation which make Eigen feel a lot more like MATLAB.

It is a header-only library.

You do not need to compile anything to use, just include igl headers (e.g. #include<igl/cotmatrix.h>) and run. Each header file contains a single function (e.g. igl/cotmatrix.h containsigl::cotmatrix()).

Most are tailored to operate on a generic triangle mesh stored in an n-by-3 matrix of vertex positions V and an m-by-3 matrix of triangle indices F.

Optionally the library may also be pre-compiled into a statically linked library, for faster compile times with your projects. This only effects compile time (run-time performance and behavior is identical). If in doubt, use the header-only default mode: (i.e. just include the headers you want to use).

We use the Eigen library heavily in our code. Our group prototypes a lot in MATLAB, and we have a useful MATLAB to libigl+Eigen conversion table.

We regularly test compiling our library on Mac OS X with clang, Linux with gcc and Windows with Visual Studio 2015 Community Edition.


VCG Library

VCG Library: The VCG Library

The Visualization and Computer Graphics Library (VCG for short) is a open source portable C++ templated library for manipulation, processing and displaying with OpenGL of triangle and tetrahedral meshes.

VCG Lib uses a git repository hosted by github at GitHub - cnr-isti-vclab/vcglib: The VCGlib is a C++, templated, no dependency, library for manipulation, processing and cleaning of triangle meshes

The library, composed by more than 100k lines of code, is released under the GPL license, and it is the base of most of the software tools of the Visual Computing Lab of the Italian National Research Council Institute ISTI (http://vcg.isti.cnr.it), like metro and MeshLab.

The VCG library is tailored to mostly manage triangular meshes: The library is fairly large and offers many state of the art functionalities for processing meshes, like:

  • high quality quadric-error edge-collapse based simplification,
  • efficient spatial query structures (uniform grids, hashed grids, kdtree, ...) ,
  • advanced smoothing and fairing algorithms,
  • computation of curvature,
  • optimization of texture coordinates,
  • Hausdorff distance computation,
  • Geodesic paths,
  • mesh repairing capabilities,
  • isosurface extraction and advancing front meshing algorithms,
  • Poisson Disk sampling and other tools to sample point distributions over meshes,
  • subdivision surfaces,


【trimesh】  

官网:Basic Installation — trimesh 3.10.8 documentation

github:GitHub - mikedh/trimesh: Python library for loading and using triangular meshes.


【MeshLab】  

官网:MeshLab

github:https://github.com/cnr-isti-vclab/meshlab

MeshLab is mostly based on the open source c++ mesh processing library VCGlib developed at the Visual Computing Lab of ISTI - CNR, for all the core mesh processing tasks and it is available for Windows, MacOSX, and Linux.

Compiling instruction can be found in the src folder or simply looking at the continous integration setup on travis and appveyor.

the open source system for processing and editing 3D triangular meshes.
It provides a set of tools for editing, cleaning, healing, inspecting, rendering, texturing and converting meshes.

It offers features for processing raw data produced by 3D digitization tools/devices and for preparing models for 3D printing.

【Computer Graphics and Multimedia】

https://www.graphics.rwth-aachen.de/

【Open3D】 – A Modern Library for 3D Data Processing

Open3D – A Modern Library for 3D Data Processing

https://github.com/isl-org/Open3D

C++ quick start

Checkout the following links to get started with Open3D C++ API

  • Download Open3D binary package: Release or latest development version
  • Compiling Open3D from source
  • Open3D C++ API

To use Open3D in your C++ project, checkout the following examples

  • Find Pre-Installed Open3D Package in CMake
  • Use Open3D as a CMake External Project

【OSG】Openscenegraph

官网:Home

The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application developers in fields such as visual simulation, games, virtual reality, scientific visualization and modelling.

Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, OSX, GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems.

The OpenSceneGraph is now well established as the world leading scene graph technology, used widely in the vis-sim, space, scientific, oil-gas, games and virtual reality industries.

【OGRE】开源游戏图形引擎

 OGRE - Open Source 3D Graphics Engine | Home of a marvelous rendering engine

Since 2001, OGRE has grown to become one of the most popular open-source graphics rendering engines, and has been used in a large number of production projects, in such diverse areas as games, simulators, educational software, interactive art, scientific visualisation, and others.

【Scaffolder】

https://github.com/nodtem66/Scaffolder

Generate scaffold from STL/PLY/OFF/OBJ file with implicit function (e.g., Schwarz P/ Gyroid).


【ImGui】C++轻量级界面开发框架

https://github.com/ocornut/imgui

Dear ImGui is a bloat-free graphical user interface library for C++. It outputs optimized vertex buffers that you can render anytime in your 3D-pipeline enabled application. It is fast, portable, renderer agnostic and self-contained (no external dependencies).

Dear ImGui is designed to enable fast iterations and to empower programmers to create content creation tools and visualization / debug tools (as opposed to UI for the average end-user). It favors simplicity and productivity toward this goal, and lacks certain features normally found in more high-level libraries.

Dear ImGui is particularly suited to integration in games engine (for tooling), real-time 3D applications, fullscreen applications, embedded applications, or any applications on consoles platforms where operating system features are non-standard.

  • Easy to use to create code-driven and data-driven tools.
  • Easy to use to create ad hoc short-lived tools and long-lived, more elaborate tools.
  • Easy to hack and improve.
  • Minimize setup and maintenance.
  • Minimize state storage on user side.
  • Minimize state synchronization.
  • Portable, minimize dependencies, run on target (consoles, phones, etc.).
  • Efficient runtime and memory consumption.
  • Battle-tested, used by many major actors in the game industry.

Logo

鸿蒙生态一站式服务平台。

更多推荐