Skip to main content

meshio++

I/O for mesh files.

C++ PyPi Version npm Version PyPI pyversions DOI

GitHub stars PyPi downloads

gh-actions codecov Code style: black

There are various mesh formats available for representing unstructured meshes. meshio++ can read and write all of the following and smoothly converts between them:

Abaqus (.inp), ANSYS msh (.msh), Ansys/APDL coded database (.cdb, .inp), AVS-UCD (.avs), CGNS (.cgns), DOLFIN XML (.xml), COMSOL (.mphtxt), Exodus (.e, .exo), EnSight Gold (geometry, .case/.geo), FLAC3D (.f3grid), FLUX (mesh .pf3, field .dex), FreeFem++ (.msh), H5M (.h5m), HMF (.hmf, experimental, meshio++-specific), I-deas Universal / UNV (.unv), ANSYS Fluent interpolation (.ip), Kratos/MDPA (.mdpa), Medit (.mesh, .meshb), MED/Salome (.med), Modulef (mesh .mfm, field .mff), Nastran (bulk data, .bdf, .fem, .nas), Netgen (.vol, .vol.gz), Neuroglancer precomputed format, Gmsh (format versions 2.2, 4.0, and 4.1, .msh), OBJ (.obj), OFF (.off), OpenFOAM polyMesh (.foam, read-only), PERMAS (.post, .post.gz, .dato, .dato.gz), PLY (.ply), STL (.stl), Tecplot .dat, TetGen .node/.ele, Triangle .node/.ele/.poly, SVG (output only; 2D direct, 3D via skin projection) (.svg), TikZ (LaTeX output only; 2D direct, 3D via skin projection) (.tikz), SU2 (.su2), UGRID (.ugrid), VTK (.vtk), VTP (.vtp), VTU (.vtu), WKT (TIN) (.wkt), XDMF (.xdmf, .xmf).

meshio++ ships a C++20 core (built with pybind11 + scikit-build-core) that reads and writes most formats with zero-copy numpy at the I/O boundary, plus optional HDF5/netCDF acceleration and a selectable parallel backend (AUTO by default — prefers OpenMP, then STL+TBB, then sequential; override with -DMESHIOPLUSPLUS_PARALLEL_BACKEND=...). Every format has a pure-Python fallback, so behaviour and file compatibility are identical whether or not the native libraries are present. For a standalone C++ build use build/configure.sh (Linux/macOS) or build/configure.bat (Windows). Full docs (install, data model, per-format options, CLI) live at the documentation site (sources under doc/).

Install with

pip install meshioplusplus[all]

([all] pulls in all optional dependencies. By default, meshio++ only uses numpy.) You can then use the command-line tool

meshioplusplus convert    input.msh output.vtk   # convert between two formats

meshioplusplus info       input.xdmf             # show some info about the mesh

meshioplusplus compress   input.vtu              # compress the mesh file
meshioplusplus decompress input.vtu              # decompress the mesh file

meshioplusplus binary     input.msh              # convert to binary format
meshioplusplus ascii      input.msh              # convert to ASCII format

meshioplusplus merge      a.vtu b.vtu out.vtu    # merge meshes (optional --weld)

meshioplusplus transform  in.vtu out.vtu --translate 1,2,3   # affine transform
meshioplusplus clean      in.vtu out.vtu --weld              # weld / prune / de-dup
meshioplusplus crop       in.vtu out.vtu --bbox 0,0,0,1,1,1  # subset by region
meshioplusplus split      in.vtu 'out_{key}.vtu' --by type   # partition
meshioplusplus stats      mesh.vtu                           # geometric statistics

with any of the supported formats.

The same verbs are available as a standalone C++ binary that needs no Python: grab a ready-to-run, statically-linked build for Linux/macOS/Windows from the GitHub Releases page, or build it yourself with build/configure.sh --cli --build (or -DMESHIOPLUSPLUS_BUILD_CLI=ON). It links only the C++ core, so point/cell sets (and convert -s/-d) — which live only in the Python Mesh — are unavailable there; use the Python CLI for those.

In Python, simply do

import meshioplusplus

mesh = meshioplusplus.read(
    filename,  # string, os.PathLike, or a buffer/open file
    # file_format="stl",  # optional if filename is a path; inferred from extension
    # see meshioplusplus convert --help for all possible formats
)
# mesh.points, mesh.cells, mesh.cells_dict, ...

# mesh.vtk.read() is also possible

to read a mesh. To write, do

import meshioplusplus

# two triangles and one quad
points = [
    [0.0, 0.0],
    [1.0, 0.0],
    [0.0, 1.0],
    [1.0, 1.0],
    [2.0, 0.0],
    [2.0, 1.0],
]
cells = [
    ("triangle", [[0, 1, 2], [1, 3, 2]]),
    ("quad", [[1, 4, 5, 3]]),
]

mesh = meshioplusplus.Mesh(
    points,
    cells,
    # Optionally provide extra data on points, cells, etc.
    point_data={"T": [0.3, -1.2, 0.5, 0.7, 0.0, -3.0]},
    # Each item in cell data must match the cells array
    cell_data={"a": [[0.1, 0.2], [0.4]]},
)
mesh.write(
    "foo.vtk",  # str, os.PathLike, or buffer/open file
    # file_format="vtk",  # optional if first argument is a path; inferred from extension
)

# Alternative with the same options
meshioplusplus.write_points_cells("foo.vtk", points, cells)

For both input and output, you can optionally specify the exact file_format (in case you would like to enforce ASCII over binary VTK, for example).

Skin extraction

meshioplusplus.extract_skin derives the boundary surface of a 3D volume mesh (the Kratos SkinDetectionProcess face-hashing algorithm — faces occurring exactly once are boundary; points are compacted, point_data follows):

vol = meshioplusplus.read("part.msh")     # tetra/hexa/wedge/pyramid mesh
skin = meshioplusplus.extract_skin(vol)   # triangle/quad/... surface mesh

The STL and PLY writers do this automatically for volume meshes (pass skin=False for the legacy drop-volume-cells behavior), and the SVG/TikZ writers render 3D meshes by projecting the skin through an orthographic camera (azimuth/elevation/roll in degrees, default the classic CAD isometric view) with painter's-algorithm depth ordering — that is exactly how the Stanford-bunny logo above is drawn.

Surface extraction

meshioplusplus.extract_surface is the general form of skin extraction: it picks the dimension automatically (a volume mesh → boundary faces, a 2D surface mesh → boundary edges) and can record each facet's parent cell id (record_parent_ids=True). See the surface extraction docs (doc/extract_surface.md).

surf = meshioplusplus.extract_surface(vol)                  # faces (or edges for a 2D mesh)
edges = meshioplusplus.extract_surface(sheet, record_parent_ids=True)

Mesh quality

meshioplusplus.compute_quality scores every cell on a set of geometric quality metrics (area/volume, scaled Jacobian, aspect ratio, skewness, interior/dihedral angles, warpage) and flags inverted/degenerate cells; attach_quality writes them back as cell_data. See doc/mesh_quality.md.

report = meshioplusplus.compute_quality(mesh)
print(report["num_inverted"], "inverted cells")
annotated = meshioplusplus.attach_quality(mesh)   # metrics as cell_data

Reordering / renumbering

meshioplusplus.reorder renumbers nodes and elements to reduce sparse-matrix bandwidth (Reverse Cuthill–McKee) or improve cache locality (Morton / Hilbert space-filling curves). It is a pure permutation — geometry and all data preserved — and returns the applied node/cell permutations so external arrays can be remapped. compute_bandwidth measures the before/after connectivity bandwidth. See doc/reorder.md.

out = meshioplusplus.reorder(mesh, method="rcm")            # "morton" / "hilbert" too
out, node_perm, cell_perms = meshioplusplus.reorder(mesh, return_permutation=True)
print(meshioplusplus.compute_bandwidth(mesh), "->", meshioplusplus.compute_bandwidth(out))

Comparison (diff)

meshioplusplus.diff compares two meshes and reports whether they are equivalent within a tolerance (abs_err <= atol + rtol*|expected|), with a structured breakdown (points, cells, data, named sets) and an overall verdict (identical / equal within tolerance / different); meshes_equal is the boolean wrapper for test suites. An optional unordered=True mode matches nodes by spatial proximity, so a shuffled node order still compares equal. See doc/diff.md.

assert meshioplusplus.meshes_equal(a, b, atol=1e-8)         # ideal in a regression test
report = meshioplusplus.diff(a, b, unordered=True)          # tolerant to shuffled node order
print(report["verdict"])

The meshioplusplus diff a.vtu b.vtu CLI verb sets a nonzero exit code when meshes differ, for direct use in CI / Makefiles.

Merge / combine

meshioplusplus.merge combines two or more meshes into one: it concatenates points (offsetting connectivity so indices stay valid), merges cell blocks by type, concatenates data (per a configurable data_policy), and tags each cell's origin. With weld=True it fuses coincident nodes across inputs within atol using a spatial hash (never O(N²)) — the standard way to stitch adjacent blocks into a watertight mesh. Overlapping set / field-data names are namespaced by source id. See doc/merge.md.

combined = meshioplusplus.merge([a, b, c])                 # concatenate
welded = meshioplusplus.merge([left, right], weld=True, atol=1e-8)  # fuse the shared interface

Editing (transform / clean / crop / split) and statistics

A bundle of dependency-free mesh-editing utilities:

  • meshioplusplus.transform — apply an affine transform (translate / scale / rotate / 4×4 matrix / unit-scale) to the points; connectivity and data are carried through. See doc/transform.md.
  • meshioplusplus.clean — weld coincident points (spatial hash), drop degenerate and duplicate cells, and remove orphaned points, in one toggleable pass. See doc/clean.md.
  • meshioplusplus.crop — extract the part of a mesh inside a bounding box or half-space, pruning unused points (mode="all"/"any"). See doc/crop.md.
  • meshioplusplus.split — partition a mesh into several by cell type, connected component (flood-fill), or region (cell_sets / integer tag). See doc/split.md.
  • meshioplusplus.compute_stats — geometric statistics (bounding box, centroid, per-type counts, area, signed/unsigned volume, inverted cells) — the geometric complement to info. See doc/stats.md.
out = meshioplusplus.transform(mesh, rotate=("z", 90))
out = meshioplusplus.clean(mesh, weld=True, atol=1e-8)
sub = meshioplusplus.crop(mesh, bbox=[0, 0, 0, 1, 1, 1])
pieces = meshioplusplus.split(mesh, by="type")             # {"triangle": ..., ...}
s = meshioplusplus.compute_stats(mesh)                     # dict of measures

These operations are exposed across every binding surface (Python, C API, Fortran, WASM) and as the CLI verbs meshioplusplus quality, meshioplusplus extract-surface, meshioplusplus reorder, meshioplusplus diff, meshioplusplus merge, meshioplusplus transform, meshioplusplus clean, meshioplusplus crop, meshioplusplus split, and meshioplusplus stats.

Time series

The XDMF format supports time series with a shared mesh. You can write times series data using meshio++ with

with meshioplusplus.xdmf.TimeSeriesWriter(filename) as writer:
    writer.write_points_cells(points, cells)
    for t in [0.0, 0.1, 0.21]:
        writer.write_data(t, point_data={"phi": data})

and read it with

with meshioplusplus.xdmf.TimeSeriesReader(filename) as reader:
    points, cells = reader.read_points_cells()
    for k in range(reader.num_steps):
        t, point_data, cell_data = reader.read_data(k)

ParaView plugin

gmsh paraview *A Gmsh file opened with ParaView.*

If you have downloaded a binary version of ParaView, you may proceed as follows.

  • Install meshio++ for the Python major version that ParaView uses (check pvpython --version)
  • Open ParaView
  • Find the file paraview-meshioplusplus-plugin.py of your meshio++ installation (on Linux: ~/.local/share/paraview-5.9/plugins/) and load it under Tools / Manage Plugins / Load New
  • Optional: Activate Auto Load

You can now open all meshio++-supported files in ParaView.

Benchmarks

How much does the C++ core help? The benchmark/ folder times read/write conversions against the original pure-Python meshio on the formats both support (same in-memory mesh, same machine). The headline input is the bundled example.msh — a real Gmsh bracket (~52k nodes, ~293k cells).

meshio vs meshio++ speedup on example.msh

meshio++'s biggest wins are the parallel and text paths: VTU binary+zlib ~16× write (the zlib blocks run across cores via an OpenMP backend with dynamic scheduling — hybrid P+E-core CPUs load-balance too), VTU ASCII ~7× write / ~5× read, and mixed-topology XDMF read ~10×. The binary and HDF5 formats that used to be slower — VTK/Gmsh binary, UGRID, and MED — are now at or above parity after an optimisation pass (bulk-buffered binary I/O, single-instruction bswap endianness conversion, a real parallel backend, an Eigen-backed MED transpose, zero-copy cell reconstruction that moves the connectivity buffer straight into the mesh, and uninitialised reader buffers + thread-parallel block copies so nothing is written twice); binary reads now match or beat numpy's fromfile — Gmsh ~1.7×, single-type VTK ~1.45×, and even mixed-topology VTK ~1.1×. Output stays byte-identical throughout.

The speedup is per-element: text/parallel formats climb out of the small-mesh regime and plateau (large meshes realise the full speedup):

speedup vs mesh size

Full methodology and a reproducible notebook are on the Benchmarks doc page (source: benchmark/01_benchmark.ipynb).

Installation

meshio++ is available from the Python Package Index, so simply run

pip install meshioplusplus

to install.

Additional dependencies (netcdf4, h5py) are required for some of the output formats and can be pulled in by

pip install meshioplusplus[all]

For JavaScript / browser use, the C++ core also ships as a WebAssembly npm package covering 29 of the formats above:

npm install @meshioplusplus/wasm

See the WebAssembly / JavaScript doc page for usage and the format-support table.

C / Fortran API

For HPC codes written in C or Fortran, the C++ core also builds as an installable shared library (libmeshioplusplus, pure-C99 header, pkg-config + find_package support) with a modern OO Fortran 2008 module on top:

./build/configure.sh --fortran --tests --build     # --c-api for the C API alone
cmake --install build/cpp-release --prefix /opt/meshioplusplus
mio_mesh* m = mio_read("in.msh", NULL);
printf("%lld points\n", (long long)mio_mesh_num_points(m));
mio_write("out.vtu", m, NULL);
mio_mesh_free(m);
use meshioplusplus
type(mio_mesh) :: m
call m%read("in.msh")
call m%write("out.vtu")
call m%free()

The C API is also packaged for Conan (root conanfile.py) and vcpkg (overlay port under ports/meshioplusplus/), both driving the same install/find_package path:

conan create . -o meshioplusplus/*:with_hdf5=True
vcpkg install meshioplusplus --overlay-ports=ports

Full mesh access (build meshes from raw arrays, zero-copy readback) is covered on the C API and Fortran doc pages.

Single-header C++

The whole C++ core is also amalgamated into one self-contained, STB-style header — single_include/meshioplusplus/meshioplusplus.hpp — with pugixml bundled and no external dependencies by default. Drop it in, no CMake or linking required:

// in exactly ONE .cpp:
#define MESHIOPLUSPLUS_IMPLEMENTATION
#include "meshioplusplus/meshioplusplus.hpp"
// elsewhere: just #include it (declarations only)
g++ -std=c++20 -I single_include main.cpp

It is generated by ./tools/amalgamate.sh and kept in sync by CI. See the single-header doc page (optional HDF5/netCDF/zlib formats via MESHIOPLUSPLUS_HAS_* macros).

C++ mesh backends

Standalone C++ builds (no Python) can swap the in-memory mesh structure at compile time via MESHIOPLUSPLUS_MESH_BACKEND — every format works identically under each backend:

  • MESHIO (default; the Python extension and PyPI wheels always use it) — mirrors the Python meshio.Mesh;
  • NATIVE — the fastest pure-C++ structure (canonical Float64/Int64 storage, cell-type enum, CSR ragged blocks); the WebAssembly build uses it;
  • KRATOS — a Kratos Multiphysics-style ModelPart (Nodes/Elements/Conditions/SubModelParts) plus a header-only templated bridge that populates a real Kratos::ModelPart with no Kratos build dependency.
./build/configure.sh --mesh-backend NATIVE --tests --build

See the C++ mesh backends doc page.

Testing

To run the meshio++ unit tests, check out this repository, install it with the test extras, and type

pytest tests/

License

meshio++ is published under the MIT license.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

meshioplusplus-7.1.0.tar.gz (6.4 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

meshioplusplus-7.1.0-cp312-cp312-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.12Windows x86-64

meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ ARM64

meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

meshioplusplus-7.1.0-cp311-cp311-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.11Windows x86-64

meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ ARM64

meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

meshioplusplus-7.1.0-cp310-cp310-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.10Windows x86-64

meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ ARM64

meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

meshioplusplus-7.1.0-cp39-cp39-win_amd64.whl (1.6 MB view details)

Uploaded CPython 3.9Windows x86-64

meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_x86_64.whl (2.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_aarch64.whl (2.2 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ ARM64

meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_x86_64.whl (1.4 MB view details)

Uploaded CPython 3.9macOS 13.0+ x86-64

meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_arm64.whl (1.3 MB view details)

Uploaded CPython 3.9macOS 13.0+ ARM64

File details

Details for the file meshioplusplus-7.1.0.tar.gz.

File metadata

  • Download URL: meshioplusplus-7.1.0.tar.gz
  • Upload date:
  • Size: 6.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for meshioplusplus-7.1.0.tar.gz
Algorithm Hash digest
SHA256 2d6a043a2a2596c7d8d4faa5aecbf3a8e438f9373ba3bab30f80dd8b9b3624fc
MD5 ad357a003e2e21793625d7fd6ef327f0
BLAKE2b-256 c8502e64ef7d2feb299e9c1503cf18ca8fb62a0dac9560f7b5d12bd8d0382e15

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0.tar.gz:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bd51ac5d0c8cb656e672a7a133d0c3effd9c5c45f7dea999e36eae46ec835bdc
MD5 d0fffd68b54011cd8ed632a873585f4f
BLAKE2b-256 2bfbda64bdcf38f18aec038e6cadc1bd2919f0f1cbbc7be8587001f0555fbb0f

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp312-cp312-win_amd64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9e3a96a8d98bb835dc69d4c1b966659adf099f937c6f6caae4df80aec68df674
MD5 4e5b4d610fee9764136fdb43fde631d8
BLAKE2b-256 6109ce779b4ab9d7272a0fb364e0cf49353f6ddfd0d458dd6a1a0a58b9bd4861

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 2e4546c04cc5efa4aef94d2b65e5cce9c302ee12280675c6a4a3048f8da4a9d5
MD5 0a3f5c8613509c2b0b2ca889c598045f
BLAKE2b-256 f0b423d05ce84bba3e75bb1a7fd9ec1b66ab51a7bf6441912ec63a4a0f242e87

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp312-cp312-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e5362ce1450fa6d1f43a8c0cacf7919ee9115097d154a02fc6cf67c57437a1d4
MD5 fb5776c809663d91f0c84ffd948f95e1
BLAKE2b-256 e21c5eb74b2b8cb6fc884384fc4e5d038e3fe5ccc69fb23a35718680b84bab19

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c2a1cf5dee51c84ebb995d2e54168dd58503ecc25b0cd9638f7f2bbb3034f62d
MD5 31f6114a702d9771ec49791ca4f1901f
BLAKE2b-256 589e59ea2af72f67cb511b27f886bdd0bdd237b100e5fe8cddd7b420a505bec0

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 59d9ee5d6af9a87f2d961007abdc7d3e4623973a5bb3dcec9e7bf394ceb372ff
MD5 53e5957f9bafc547678927c9e9002c16
BLAKE2b-256 2d49a2c08aba182bdbcbf324fac1c003b5aab07e5c6c52f2eb81bbed2d172810

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp311-cp311-win_amd64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 b06d1cd1d885085210a4ed53446606db253f20f324d218ea53b676ad917deed9
MD5 2a50991ae735129befa6215735e42a79
BLAKE2b-256 27386a02a460a3accf5289fb587f54c233a271155bb69161bf0bed1e86452f05

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 1127c6e297cea225bf551df5752de30d788355df72d4a9a690e15ff169a4237d
MD5 a5fb92f15826d24b38ad8fbf7a7f1c90
BLAKE2b-256 303d8fc3246d17221114230ca5962eced8096c06110610c7bc11fa7cbeefe539

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp311-cp311-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e5175fca878a80eba3ff3407afb12fa911d1d7083e46033fb0cc4ef8fb016db7
MD5 48477208d186943262031014c152168c
BLAKE2b-256 129a88c6f33c16021f32dffe27ff962fa50469226621d9c1039ff5c76e984cd2

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c903bd6739ac784c077146ee84057a895f10da0ac16816858750da9c7e926517
MD5 6e10d9f552c287d62f5f96f4fdeadb27
BLAKE2b-256 654bc66737d50316733ca9345ff3abd860555282d0771c884dd2f64a25b34448

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c81f56150363d065e56d0dcba22ce9da8e6b92cb8fee5a3b7b60d04900b38389
MD5 0544f0cbb4206141dc10c11b358f173a
BLAKE2b-256 b828f7b1826528030e7242260569d50abaed27710e7953eba8d6ad5492b24e8f

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp310-cp310-win_amd64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 fc09a940457c4590bb55163bec6bc9e68544c8c3545e36d6292540ab3b37c8c5
MD5 7ea7f85ee52511f3901fd1d43db3d3f6
BLAKE2b-256 67ec900487d14163bf8570aa4aeb1d81bd6420f85429ba57b27a6bedd337a6a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 794193ffd322cc1d0ae9401a9ed9f1dcb97805a4a233b3ae3e1d29fd2206f1f5
MD5 f8726d5918bbbc1cf8671cdcf22f23ee
BLAKE2b-256 02025a63df8954e60646c6c89e8a7f5e526b6f9708804a1f71e2de54ebd1f22a

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp310-cp310-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 d9f26e975979a5937d1dd2c9d9da54a32e558756fc80372a209b8d6cf61c2cbd
MD5 4795c36a6094ccf6066871cecb8772aa
BLAKE2b-256 a18150ba66c8c8becefa920361ae2dcbeb22ee5feee1d03cda346da619328239

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 20a5b806bb8001ece22b9decfd406c9dcc01776b2582490417fd5f95cefafc19
MD5 fb88a5b4152ffad146cfad72c7c2df33
BLAKE2b-256 543abdf67a730e6ee9c648dde38941eb85dbeca32e2a886408fe99852a0966db

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp310-cp310-macosx_13_0_arm64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7c89e4ac5a8e788611b2a971cc42ee29251a3ee55825ef7d480395b8de2ad1c1
MD5 928b5b72fdd73c9112b37845b403b512
BLAKE2b-256 ecabae77f6269ffb1898a368fbe6f3a88b82861180f704dcd61a417d1e30b9f0

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp39-cp39-win_amd64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 cc7f834b64f6c7ec043dea1445ddade8c6e025b015fc3c121777ea46d82811ca
MD5 e16a5d9cb13b3501fb32cfb1abbaa9f5
BLAKE2b-256 2c960cd0e692752ac546dabd29ea85667bfced5ebab4168af62a9796c6f9633e

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_aarch64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_aarch64.whl
Algorithm Hash digest
SHA256 e7f3bcb9b60dbc18d6c9a4309705d76709bccaec04b1b1a22dcb0f4fcea49284
MD5 8caf4dcd80061d919ceaa36bbc0fab57
BLAKE2b-256 5432f7ea4618a56576e08e0f20f5b06c1f3efbbcafc1daf6b8cd3ac38e95e6c4

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp39-cp39-manylinux_2_34_aarch64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 d7df6ca03637d4e99ef899e01dc8d9a62daf74fed9f3cc406a17b5f95a6c0e23
MD5 55f0d6e5a039ac27ec9c447d5657d3f5
BLAKE2b-256 89cb719fa6904ee383615fe7047b88f6788176673841ba9324ec692c250a4451

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_x86_64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 437b4678b83928f7d5e6619635e254bee028054c9d47a81c4356e3ebb545161e
MD5 e368e7fc1c5ec83ed27c1c3b1c558c1b
BLAKE2b-256 2fb8b2c19e28ea10ddb6191fee05ab0bec6c8974ec912c9fb6712f07f6a4c527

See more details on using hashes here.

Provenance

The following attestation bundles were made for meshioplusplus-7.1.0-cp39-cp39-macosx_13_0_arm64.whl:

Publisher: wheels.yml on loumalouomega/meshioplusplus

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

10.17.0

21 files

10.14.0

21 files

10.9.0

21 files

10.6.0

21 files

10.0.0

21 files

9.27.0

21 files

9.25.0

21 files

9.22.0

21 files

9.14.0

21 files

9.12.0

21 files

9.11.0

21 files

9.10.0

21 files

9.9.0

21 files

9.8.0

21 files

9.7.0

21 files

9.6.0

21 files

9.4.1

21 files

9.4.0

21 files

9.3.0

21 files

9.2.0

21 files

9.1.0

21 files

9.0.0

21 files

8.7.0

21 files

8.5.0

21 files

8.4.0

21 files

8.3.0

21 files

8.0.0

21 files

7.16.0

21 files

7.15.0

21 files

7.14.0

21 files

7.13.0

21 files

7.12.0

21 files

7.10.0

21 files

7.7.0

21 files

7.6.0

21 files

7.5.0

21 files

7.4.0

21 files

7.3.0

21 files

7.2.1

21 files

7.2.0

21 files

This release

7.1.0 This release

21 files

7.0.0

21 files

6.9.0

17 files

6.8.0

17 files

6.7.0

17 files

6.6.3

17 files

6.6.1

17 files

6.6.0

17 files

6.5.0

17 files

6.4.0

17 files

6.3.2

17 files

6.3.1

17 files

6.3.0

17 files

6.2.0

17 files

6.1.0

17 files

6.0.5

17 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page