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, Python 3.12.

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.10.tar.gz (107.3 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.10-py3-none-any.whl (111.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: compas_tf-0.1.10.tar.gz
  • Upload date:
  • Size: 107.3 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.10.tar.gz
Algorithm Hash digest
SHA256 e14facaa23eaf4c9310d74e3663d16e583c9e92a3cfcf32b0cf01ea283060753
MD5 a6496750efdb6b93c0122f8e95663ed4
BLAKE2b-256 e6294954ccd7b4b51d660c62f161e4b78bd7203f6c7ff63ca634386de94deed1

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_tf-0.1.10.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.10-py3-none-any.whl.

File metadata

  • Download URL: compas_tf-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 111.6 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.10-py3-none-any.whl
Algorithm Hash digest
SHA256 09162431ea0b313606bab1f328a6b94e94bf61d867ee6de1b9241bb0a804dcd6
MD5 89949961e0c12bda017c5c62c8a90565
BLAKE2b-256 102546cbb058c96c226b9245bb35833bf595508ff58d3260a8895b0da52e95a5

See more details on using hashes here.

Provenance

The following attestation bundles were made for compas_tf-0.1.10-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

0.1.11

2 files

This release

0.1.10 This release

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