Skip to main content

compas_tf

Timber floor development. A parametric model of a timber floor — columns, ribs, beds, t-sections, oculus and the connectors that hold them together — that you can build, cut, measure, extract from and hand to a shop as STEP.

Documentation: https://brg-research.github.io/compas_tf/

Use it

pip install compas_tf
import compas

model = compas.json_load("cantilevers_baked_model.json")

print(len(list(model.geometry_elements())))   # 237
print(len(list(model.contacts())))            # 733

bay = model.find_groups_with_names(["column_model_0", "quarter_model_0"], neighbors=True)
bay.to_step("bay_0.stp")

The geometry in a written model is baked — every boolean already evaluated and stored on the element — so it loads in 0.60 s with no boolean backend involved. compas_tf_example is a standalone project that does nothing but read one.

Develop it

Prerequisites: git, uv, and Python 3.10 or newer.

git clone https://github.com/BRG-research/compas_tf.git
cd compas_tf
uv venv .venv --python 3.12
source .venv/Scripts/activate      # macOS / Linux: source .venv/bin/activate
uv pip install -r requirements.txt -r requirements-dev.txt -r requirements-viewer.txt
uv pip install -e .

Use uv pip, not plain pip — a uv venv has no pip of its own, so a bare pip install lands in the wrong environment.

Mesh booleans go through compas_manifold; Breps and STEP through compas_occt. Both install with the requirements. compas_viewer is optional — the library never imports it.

invoke lint
invoke test
invoke docs
python tools/run_examples.py     # the whole example chain, viewer suppressed

Examples

examples/ is a chain: each reads the JSON the one before it wrote. example_model_18_write_model_and_brep.py is the hinge — it bakes the model, finds every contact, and writes the four files the last three read:

Example Does
example_model_19_read_model.py reads the model back — elements, tree, contacts
example_model_20_read_brep.py reads the STEP — 237 closed solids
example_model_21_extract_bay.py pulls one column + one quarter out as its own model

References

Download files

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

Source Distribution

compas_tf-0.1.11.tar.gz (108.6 kB view details)

Uploaded Source

Built Distribution

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

compas_tf-0.1.11-py3-none-any.whl (113.0 kB view details)

Uploaded Python 3

File details

Details for the file compas_tf-0.1.11.tar.gz.

File metadata

  • Download URL: compas_tf-0.1.11.tar.gz
  • Upload date:
  • Size: 108.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for compas_tf-0.1.11.tar.gz
Algorithm Hash digest
SHA256 5c85acfde5b042885549fb59285c21cdfc7fa66287f56fc2b0afa40d8a0f1258
MD5 6e85ecd9c9bf2cc5ee3c313c83e7809e
BLAKE2b-256 9f19bf9a723d6c4bd04e78a5314125f964243aaabc3f22678dbc3cc46a19fb1d

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_tf-0.1.11.tar.gz:

Publisher: release.yml on BRG-research/compas_tf

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

File details

Details for the file compas_tf-0.1.11-py3-none-any.whl.

File metadata

  • Download URL: compas_tf-0.1.11-py3-none-any.whl
  • Upload date:
  • Size: 113.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for compas_tf-0.1.11-py3-none-any.whl
Algorithm Hash digest
SHA256 361f7e6fd9efc635bb8766585b7d55e961a5990d18e2814749cad40c80fd04dd
MD5 8ebdb5a1b1e1c9ce5c98ecef564b3774
BLAKE2b-256 f69d671cd2ac23406ab40880cb1fb0862f513e39d46bef8435f89479cf4abc77

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_tf-0.1.11-py3-none-any.whl:

Publisher: release.yml on BRG-research/compas_tf

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

Release history Release notifications | RSS feed

0.1.12

2 files

This release

0.1.11 This release

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

2 files

0.1.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page