Mesh tools for professionals.
MeshPro is a Python library and command-line tool for mesh I/O and mesh manipulation.
It supports all mesh formats supported by meshio.
Install MeshPro with
pip install meshpro
The full API documentation is here.
You can then use the command-line tool
meshpro convert input.msh output.vtk # convert between two formats
meshpro info input.xdmf # show some info about the mesh
meshpro compress input.vtu # compress the mesh file
meshpro decompress input.vtu # decompress the mesh file
meshpro binary input.msh # convert to binary format
meshpro ascii input.msh # convert to ASCII format
or use MeshPro in Python with
import meshpro
MeshPro features
MeshPro meshes work exactly like meshio meshes, and they have a few extras:
import meshpro
# create mesh
mesh = meshpro.Mesh(
[[0.0, 0.0], [1.0, 0.0], [1.0, 1.0], [0.0, 1.0]],
[("triangle", [[0, 1, 2], [0, 2, 3]])],
)
# or read it in
# mesh = meshpro.read("mesh.vtk")
# remove duplicate points and take care of the indexing
mesh.deduplicate_points(tol=1.0e-10)
# remove all points which aren't referenced in any cell
mesh.remove_orphaned_points()
# remove a number of points or cells
# mesh.remove_points(mask)
# mesh.remove_cells(mask)
# add boundary cells
mesh.add_boundary_cells()
# add outer normals as cell data
mesh.add_outer_normals()
Other mesh manipulation tools are these:
import meshpro
# extract boudnary mesh
boundary_mesh = boundary_meshmeshpro.extract_boundary_mesh(mesh)
# merge some meshes
mesh = meshpro.merge_meshes([mesh1, mesh2, mesh3])
submesh = meshpro.extract_submesh(mesh, point_mask, cell_mask)
submeshes = meshpro.split_cell_sets(mesh, store_orig_node_ids_as="gid")
License
MeshPro is a commercial product. You need to acquire a license to use it. Trial licenses are available.
Metadata
Release files for meshpro 0.0.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| meshpro-0.0.20-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.10 | CPython 3.10 | Linux glibc 2.17+ x86-64 | Details |
| meshpro-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.9 | CPython 3.9 | Linux glibc 2.17+ x86-64 | Details |
| meshpro-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.8 | CPython 3.8 | Linux glibc 2.17+ x86-64 | Details |
| meshpro-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl | CPython 3.7 | CPython 3.7 pymalloc | Linux glibc 2.17+ x86-64 | Details |
Total release size: 2.1 MB
Release files / meshpro-0.0.20-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | meshpro-0.0.20-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 547.8 kB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
ab6c4317d831eacf2e1d0ce9da384f01dc27290882bd01e25e364897b4a59e97
|
|
BLAKE2b-256 checksum How to use checksums |
c6ff7bff38a1adac211d45ff1d82fd3f1402536774d696d4f8b2794c58556db1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
|
Release files / meshpro-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | meshpro-0.0.20-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 546.9 kB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
45e024e5fb8429580384e04fb0bb4cf2c06d7b4454242bd28a55576ad75e071f
|
|
BLAKE2b-256 checksum How to use checksums |
72f6f7183909d80227cf230ae05541a15656ccfff75999b211ea3bec1a1254d2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
|
Release files / meshpro-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | meshpro-0.0.20-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 545.8 kB |
| Tags | CPython 3.8 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
4cc432282ef675668acce5f12b269aff4d2cf4ad4a009512afe9513b4b446079
|
|
BLAKE2b-256 checksum How to use checksums |
956f6cffc9ca1e48339b10b8b5c11be21f138e83a34c4c3027097ab66224bf2a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
|
Release files / meshpro-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | meshpro-0.0.20-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 475.5 kB |
| Tags | CPython 3.7 CPython 3.7 pymalloc Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
54f2e7b852a1c44b3712d42749a376baba1dc857762db5867a3e45e91ad35748
|
|
BLAKE2b-256 checksum How to use checksums |
7573f130e9599ecf1d924471daf056ccc37bd13704fe5884fe73a5e359cdb9ce
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
|