Metadata-Version: 2.4
Name: meshlib
Version: 3.0.8.247
Summary: 3d processing library
Author-email: MeshLib Team <support@meshinspector.com>
License: NON-COMMERCIAL & education LICENSE AGREEMENT
        
        This  agreement  is  between  the  individual below (User) and AMV Consulting, LLC, a 
        Nevada limited liability company (AMV). The AMV source code library software, and all 
        modifications,  enhancements,  technical documentation provided by AMV as part of the 
        Software (Software)  are  licensed  and  are  not  sold.  By  receiving or using this 
        Software, User indicates its acceptance of the terms of this agreement. 
        
        
        TRIAL LICENSE.
        
        Subject to the terms of this agreement, AMV grants User a terminable, non-exclusive, 
        and  non-transferable  license  to  use  the  Software,  solely  for non-commercial, 
        evaluation or educational purposes. 
        
        
        DISCLAIMER.
        
        AMV  DISCLAIMS  ANY AND ALL REPRESENTATIONS OR WARRANTIES OF ANY 
        KIND,  WHETHER  EXPRESS  OR  IMPLIED,  MADE  WITH RESPECT TO THE 
        SOFTWARE,  INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES 
        OF   MERCHANTABILITY,   NON-INFRINGEMENT,   AND  FITNESS  FOR  A 
        PARTICULAR PURPOSE. THE SOFTWARE IS PROVIDED ‘AS IS’ WITHOUT ANY 
        WARRANTY  OF ANY KIND. AMV AND ITS LICENSORS DO NOT WARRANT THAT 
        ANY  SOFTWARE  IS WITHOUT DEFECT OR ERROR, OR THAT THE OPERATION 
        OF ANY SOFTWARE WILL BE UNINTERRUPTED.
        
        
        RESTRICTIONS ON USE.
        
        User may not sell, rent, sublicense, display, modify, or otherwise transfer the Software 
        to any third party. 
        
        
        OWNERSHIP.
        
        All right, title, and interest to the Software are owned by AMV and its licensors, and 
        are  protected by United States and international intellectual property laws. User may 
        not  remove  or alter any copyright or proprietary notice from copies of the Software. 
        AMV reserves all rights not expressly granted to User.
        
        
        TERMINATION.
        
        The  license  in  Section  1 terminates upon AMV’s notice of termination to User. Upon 
        termination of this agreement or a license for any reason, User must discontinue using 
        the  Software, de-install, and destroy the Software and all copies within 5 days. Upon 
        AMV’s  request,  User  will confirm in writing its compliance with this destruction or 
        return requirement.
        
        
        LIABILITY LIMIT.
        
        EXCLUSION  OF  INDIRECT  DAMAGES.  TO THE MAXIMUM EXTENT ALLOWED 
        BY LAW, AMV IS NOT LIABLE FOR ANY INDIRECT, SPECIAL, INCIDENTAL, 
        OR  CONSEQUENTIAL  DAMAGES  ARISING  OUT  OF  OR RELATED TO THIS 
        AGREEMENT  (INCLUDING,  WITHOUT LIMITATION, COSTS OF DELAY; LOSS 
        OF  OR  UNAUTHORIZED  ACCESS  TO  DATA  OR INFORMATION; AND LOST 
        PROFITS,  REVENUE,  OR  ANTICIPATED  COST  SAVINGS),  EVEN IF IT 
        KNOWS  OF  THE  POSSIBILITY  OR FORESEEABILITY OF SUCH DAMAGE OR 
        LOSS.
        
        TOTAL  LIMIT ON LIABILITY. TO THE MAXIMUM EXTENT ALLOWED BY LAW, 
        AMV'S  TOTAL  LIABILITY  ARISING  OUT  OF  OR  RELATED  TO  THIS 
        AGREEMENT  (WHETHER  IN  CONTRACT,  TORT, OR OTHERWISE) DOES NOT 
        EXCEED $100.
        
        
        GOVERNING LAW AND FORUM.
        
        This  agreement  is  governed  by  the  laws  of  the  State  of  Nevada  (without regard to 
        conflicts  of  law principles) for any dispute between the parties or relating in any way to 
        the  subject  matter  of  this  agreement.  Any suit or legal proceeding must be exclusively 
        brought  in  the  federal  or  state  courts  for Washoe County, Nevada, and User submits to 
        this  personal  jurisdiction  and  venue.  Nothing  in this  agreement prevents either party 
        from  seeking  injunctive  relief in a court of competent jurisdiction. The prevailing party 
        in any litigation is entitled to recover its attorneys’ fees and costs from the other party.
        
        
        OTHER TERMS.
        
        Entire Agreement and Changes. This agreement constitutes the entire 
        agreement between the parties and supersedes any prior or contemporaneous 
        negotiations or agreements, whether oral or written, related to this subject matter. 
        User is not relying on any representation concerning this subject matter, oral or 
        written, not included in this agreement. No representation, promise, or inducement 
        not included in this agreement is binding. No modification or waiver of any term of 
        this agreement is effective unless both parties sign it.
        
        No Assignment. Neither party may assign or transfer this agreement to a third 
        party, nor delegate any duty, except that the agreement may be assigned, without 
        the consent of the other party, (i) as part of a merger or sale of all or substantially 
        all a party's businesses or assets, of User, and (ii) in the case of AMV at any time 
        to any third party.
        
        Independent Contractors. The parties are independent contractors with respect 
        to each other, and neither party is an agent, employee, or partner of the other 
        party or the other party's affiliates.
        
        Enforceability and Force Majeure. If any term of this agreement is invalid or 
        unenforceable, the other terms remain in effect. Neither party is liable for its non-
        performance due to events beyond its reasonable control, including but not limited 
        to natural weather events and disasters, labor disruptions, and disruptions in the 
        supply of utilities.
        
        Money Damages Insufficient. Any breach by a party of this agreement or 
        violation of the other party’s intellectual property rights could cause irreparable 
        injury or harm to the other party. The other party may seek a court order to stop 
        any breach or avoid any future breach of this agreement.
        
        Survival of Terms. All provisions of this agreement regarding payment, 
        confidentiality, indemnification, limitations of liability, proprietary rights and such 
        other provisions that by fair implication require performance beyond the term of 
        this agreement must survive expiration or termination of this agreement until fully 
        performed or otherwise are inapplicable. The UN Convention on Contracts for the 
        International Sale of Goods does not apply.
        
        Compliance Audit. No more than once in any 12-month period and upon at least 
        30 days’ advance notice, AMV (or its representative) may audit User’s usage of the 
        Software at any User facility. User will cooperate with such audit. User agrees to pay 
        within 30 days of written notification any fees applicable to User’s use of the 
        Software in excess of the license.
        
        Export Compliance. The Software and Confidential Information may be subject to 
        export laws and regulations of the United States and other jurisdictions. Each party 
        represents that it is not named on any U.S. government denied-party list. Neither 
        party will permit its personnel or representatives to access any Software in a U.S.-
        embargoed country or in violation of any applicable export law or regulation.
        
        U.S. Government Restricted Rights. If User is a United States government 
        agency or acquired the license to the Software hereunder pursuant to a 
        government contract or with government funds, then as defined in FAR §2.101, 
        DFAR §252.227-7014(a)(1), and DFAR §252.227-7014(a)(5), or otherwise, all 
        Software provided in connection with this agreement are “commercial items,” 
        “commercial computer software,” or “commercial computer software 
        documentation.” Consistent with DFAR §227.7202 and FAR §12.212, any use, 
        modification, reproduction, release, performance, display, disclosure, or 
        distribution by or for the United States government is governed solely by the 
        terms of this agreement and is prohibited except to the extent permitted by the 
        terms of this agreement.
        
        Open Source Software Licenses. The Software may contain embedded open source 
        software components, which are provided as part of the Software and for 
        which additional terms may be included in the technical documentation.
        
        Feedback. If User provides feedback or suggestions about the Software, then AMV 
        (and those it allows to use its technology) may use such information without 
        obligation to User.
        
Project-URL: Homepage, https://meshlib.io/
Project-URL: Documentation, https://meshlib.io/documentation/
Project-URL: Source, https://github.com/MeshInspector/MeshLib
Project-URL: Bug Reports, https://github.com/MeshInspector/MeshLib/issues
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: License :: Free For Educational Use
Classifier: License :: Free for non-commercial use
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: MacOS :: MacOS X
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=1.19.0
Dynamic: license-file

[![build-test-distribute](https://github.com/MeshInspector/MeshLib/actions/workflows/build-test-distribute.yml/badge.svg?branch=master)](https://github.com/MeshInspector/MeshLib/actions/workflows/build-test-distribute.yml?branch=master) 

[![PyPI version](https://badge.fury.io/py/meshlib.svg)](https://badge.fury.io/py/meshlib)
[![Downloads](https://pepy.tech/badge/meshlib/month?style=flat-square)](https://pepy.tech/project/meshlib)
[![Python](https://img.shields.io/pypi/pyversions/meshlib.svg?style=flat)](https://badge.fury.io/py/meshlib)

[![NuGet Version](https://img.shields.io/nuget/v/MeshLib?label=nuget%20package&color=green)](https://www.nuget.org/packages/MeshLib)
[![NuGet Downloads](https://img.shields.io/nuget/dt/MeshLib?label=downloads%2Ftotal&color=blue)](https://www.nuget.org/packages/MeshLib)

<p align="left">
<picture>
  <source media="(prefers-color-scheme: dark)"  srcset="https://github.com/user-attachments/assets/37d3a562-581d-421b-8209-ef6b224e96a8">
  <source media="(prefers-color-scheme: light)" srcset="https://github.com/user-attachments/assets/caf6bdd1-b2f1-4d6d-9e22-c213db6fc9cf">
  <img alt="Shows a black logo in light color mode and a white one in dark color mode." src="https://github.com/user-attachments/assets/caf6bdd1-b2f1-4d6d-9e22-c213db6fc9cf" width="60%">
</picture>
</p>


# MeshLib: An SDK to Supercharge Your 3D Data Processing Efficiency

Official Website: [**https://meshlib.io**](https://meshlib.io/) 

The MeshLib SDK is an open-source library that provides advanced algorithms for 3D data processing. It assists developers and engineers in achieving precise results while delivering significant resource savings. Whether you are working on 3D printing, scanning, inspection, automation, robotics, scientific visualization, or medical devices, our 3D data processing library is ideally suited to meet your needs thanks to its potent capabilities and broad applicability.
![MeshLib_SDK_Mesh_Processing_Library](https://github.com/user-attachments/assets/a65dc95f-675d-4fb8-ac17-6857c9a91554)
## Why Choose Us

**Fully Open Source.** You can also fork the code for your own unique use cases.

**Multi-Language Support.** Written in C++ with bindings for C, C#, and Python, our library integrates easily into AI pipelines and workflows.

**High Performance.** Internal benchmarks show up to 10x faster execution compared to alternative SDKs — especially in mesh boolean operations and simplification. [See performance data](https://meshlib.io/blog/).

**GPU-Accelerated Architecture.** Built with speed and scalability in mind, MeshLib supports GPU acceleration and CUDA for high-performance computing.

**Cross-Platform Ready.** The SDK runs on Windows, macOS, Linux, and WebAssembly, offering flexibility for any development environment.

**Developer Support.** Get timely assistance from our responsive support team for integration, usage, or troubleshooting.

**Flexible Integration.** Use our toolkit as a standalone engine with UI components, or integrate selected algorithms into existing applications with minimal dependencies.

## What We Offer

We provide a robust foundation for 3D data processing, supporting all essential formats like point clouds, meshes, and volumes continuously generated by modern sensors. Our powerful half-edge data structure ensures manifold compliance for precise, reliable mesh representation. Plus, our repository includes clear code samples to help you get started quickly and explore advanced features with ease.

## Key Available Algorithms

- **3D Boolean** performs fast, highly optimized mesh- and voxel-based operations.
- **Mesh Repair** eliminates self-intersections, fills holes, and removes degeneracies.
- **Mesh Offsetting** controls surface thickness with multiple precise modes for 3D printing and machining.
- **Hole Filling** fills flat and curved surfaces, connects or separates holes, and builds bridges.
- **Mesh Simplification** optimizes mesh complexity while keeping details within set tolerance. We provide remeshing, and subdivision options as well.
- **Collision Detection** verifies intersections between models for further operations.
- **Extensive File Format Support** enables importing a wide range of file formats for meshes, point clouds, CT scans, polylines, distance maps, and G-code. Export functionalities—and support for color and texture data—are available for select formats, too (see the [full list for details](https://meshlib.io/feature/file-formats-supported-by-meshlib/)).
- **Triangulation** converts point clouds into meshes with accurate normal creation.
- **ICP** precisely aligns meshes using point-to-point and point-to-plane transformations.
- **Segmentation** performs semi-automatic segmentation based on curvature for meshes and voxels.
- **Deformation** applies Laplacian, freeform, and relaxation smoothing for fine mesh adjustments.
- **Support of Distance Maps and Polylines** allows to generate distance maps and iso-lines and performs projection and intersection.

For detailed information, explore our [website section](https://meshlib.io/features/) or refer to the corresponding sections in our [documentation](https://meshlib.io/documentation/index.html).

## How to Get Started

- **Evaluate MeshLib.** Start by exploring our library for free under our [educational and non-commercial license](https://github.com/MeshInspector/MeshLib?tab=License-1-ov-file#readme). You’ll get access to the [documentation](https://meshlib.io/documentation/index.html), installation guide, example code, and can run scripts locally to see how it fits your workflow.
- **Try software built with the MeshLib SDK.** Put our toolkit to the test using [MeshInspector](https://meshinspector.com/), our GUI built on top of the SDK. It's available as a standalone desktop and web app with a 30-day trial.
- [**Request a Demo**](https://meshlib.io/book-a-call/). Get expert-level guidance, ask questions about integration, and receive complete licensing information tailored to your needs.
- **Visit our blog.** Explore [articles and tutorials](https://meshlib.io/blog/) covering 3D data processing workflows, occasional comparisons with other tools, and practical insights from the field.

## Installation

For Python, simply install via pip:  

```
pip install meshlib
```

If your chose is C++, C or C#, check out our [Installation Guide](https://meshlib.io/documentation/InstallationGuide.html).

Here, you can find our [tutorials](https://meshlib.io/documentation/Tutorials.html) and [code samples](https://meshlib.io/documentation/Examples.html) to master our SDK quickly and with ease.

## **License**

Here, you can access our [Non-Commercial Free License](https://github.com/MeshInspector/MeshLib?tab=License-1-ov-file#readme) with a Commercial License Requirement. Also, see extra details on the [license page](https://meshlib.io/license/).

## **Reporting**

Report bugs via our [GitHub Issues Form](https://github.com/MeshInspector/MeshLib/issues/) for efficient tracking and resolution. 

Join the [GitHub Discussions](https://github.com/MeshInspector/MeshLib?tab=readme-ov-file#:~:text=GitHub%20Discussions%20page) to connect with developers, share ideas, and stay updated on MeshLib.
