Skip to main content

Binary Mesh Format

This is a small python library implementation for reading and writing triangulated meshes.

Usage

import binarymeshformat as bmf

meshTracks = bmf.loadMeshes(filename)

That will return a list of mesh tracks.

Track structure

A track has a name and a map. The name is just a string and the map maps integers to meshes.

Mesh structure

The mesh contains points in 3D space and their connections. It uses 3 aspects:

  • positions which is an array of x,y,z coordinates.
  • connections which is an array of indexes indicating two points are connected. Two indexes per connection.
  • triangles an array of indexes, three indexes per triangle.

File Format

A .bmf file contains mesh tracks, where a track is a collection of meshes over time, a mesh is a set positions, connections, and triangles.

Header

The first four bytes are a version string. The current version string should be -1.

The next four bytes are an integer that says how many tracks are in the file.

Track

The first data in a track is a name, which can be a variable size. The first two bytes indicate the length of the name. The string encoding is a subset of UTF8.

Then each mesh is written.

Mesh

First a 4 byte int to represent the timepoint the mesh exists at.

Then a 4 byte integer representing the number of positions values, 8 byte float. Then a 4 byte integer is use to represent the number of connections indexes, each connection index is a 4 byte integers. Finally a 4 byte integer is used to represent the number of triangle indexes, each index is a 4 byte integer

Download files

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

Source Distribution

binarymeshformat-1.0.tar.gz (5.4 kB view details)

Uploaded Source

Built Distribution

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

binarymeshformat-1.0-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

Details for the file binarymeshformat-1.0.tar.gz.

File metadata

  • Download URL: binarymeshformat-1.0.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.8

File hashes

Hashes for binarymeshformat-1.0.tar.gz
Algorithm Hash digest
SHA256 db9716147b434ce1428444dd15a341febf09654f7befec2a33d9362030ef2f67
MD5 813aa819d7564ba2d78fe418a7ef6906
BLAKE2b-256 920c8009fadd8e6ddf7945f0497f9e145bf32edc85a903ec575739c3a7d410f9

See more details on using hashes here.

File details

Details for the file binarymeshformat-1.0-py3-none-any.whl.

File metadata

  • Download URL: binarymeshformat-1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.8

File hashes

Hashes for binarymeshformat-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 70641db348cb61a4431bd9ec2b2a96b012fd69fc429ecd8f9eaf442b854a34f0
MD5 2c3b4140b68261ddf8960095c2fd8b26
BLAKE2b-256 0769434a2100872ccd28f632d959e5ba61032a9cc448fbbde3680b517d6eb289

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.0 This release

2 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