Vidal, VincentLombardi, EricTola, MartialDupont, FlorentLavoué, GuillaumeWilkie, Alexander and Banterle, Francesco2020-05-242020-05-242020978-3-03868-101-41017-4656https://doi.org/10.2312/egs.20201010https://diglib.eg.org:443/handle/10.2312/egs20201010In this paper, we present MEPP2, an open-source C++ software development kit (SDK) for processing and visualizing 3D surface meshes and point clouds. It provides both an application programming interface (API) for creating new processing filters and a graphical user interface (GUI) that facilitates the integration of new filters as plugins. Static and dynamic 3D meshes and point clouds with appearance-related attributes (color, texture information, normal) are supported. The strength of the platform is to be generic programming oriented. It offers an abstraction layer, based on C++ Concepts, that provides interoperability over several third party mesh and point cloud data structures, such as OpenMesh, CGAL, and PCL. Generic code can be run on all data structures implementing the required concepts, which allows for performance and memory footprint comparison. Our platform also permits to create complex processing pipelines gathering idiosyncratic functionalities of the different libraries. We provide examples of such applications. MEPP2 runs on Windows, Linux & Mac OS X and is intended for engineers, researchers, but also students thanks to simple use, facilitated by the proposed architecture and extensive documentation.Attribution 4.0 International LicenseComputing methodologiesMesh modelsPointbased modelsSoftware and its engineeringSoftware libraries and repositoriesMEPP2: A Generic Platform for Processing 3D Meshes and Point Clouds10.2312/egs.2020101029-32