compas-timber 2.0.0.dev0__tar.gz → 2.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {compas_timber-2.0.0.dev0/src/compas_timber.egg-info → compas_timber-2.1.1}/PKG-INFO +6 -8
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/pyproject.toml +10 -8
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/__init__.py +1 -1
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/base.py +20 -5
- compas_timber-2.1.1/src/compas_timber/btlx/__init__.py +5 -0
- compas_timber-2.1.1/src/compas_timber/btlx/reader.py +554 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/__init__.py +15 -17
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/ball_node.py +1 -9
- compas_timber-2.1.1/src/compas_timber/connections/butt_joint.py +234 -0
- compas_timber-2.1.1/src/compas_timber/connections/cluster.py +129 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/joint.py +117 -11
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/joint_candidate.py +5 -34
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/l_butt.py +34 -18
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/l_french_ridge_lap.py +1 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/l_lap.py +2 -12
- compas_timber-2.1.1/src/compas_timber/connections/l_miter.py +282 -0
- compas_timber-2.1.1/src/compas_timber/connections/l_tenon_mortise.py +143 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/lap_joint.py +11 -17
- compas_timber-2.0.0.dev0/src/compas_timber/connections/t_tenon_mortise.py → compas_timber-2.1.1/src/compas_timber/connections/mortise_tenon.py +55 -112
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/oligina.py +41 -6
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/plate_butt_joint.py +0 -10
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/plate_joint.py +21 -22
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/solver.py +4 -6
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/t_birdsmouth.py +8 -15
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/t_butt.py +21 -7
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/t_dovetail.py +53 -64
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/t_lap.py +1 -8
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/t_step_joint.py +67 -51
- compas_timber-2.1.1/src/compas_timber/connections/t_tenon_mortise.py +109 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/utilities.py +34 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/x_lap.py +0 -10
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/x_notch.py +12 -24
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/y_butt.py +20 -19
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/beam.py +29 -5
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/fastener.py +13 -5
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/fasteners/ball_node_fastener.py +9 -4
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/fasteners/plate_fastener.py +14 -11
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/features.py +2 -2
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/panel.py +212 -88
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/plate.py +76 -51
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/plate_geometry.py +98 -71
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/errors.py +34 -1
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/btlx.py +193 -24
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/double_cut.py +10 -40
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/dovetail_mortise.py +19 -49
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/dovetail_tenon.py +27 -50
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/drilling.py +12 -25
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/free_contour.py +122 -30
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/french_ridge_lap.py +9 -38
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/jack_cut.py +9 -38
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/lap.py +17 -52
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/longitudinal_cut.py +14 -56
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/mortise.py +16 -50
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/pocket.py +43 -66
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/slot.py +16 -47
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/step_joint.py +12 -42
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/step_joint_notch.py +16 -46
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/tenon.py +18 -48
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/text.py +15 -27
- compas_timber-2.1.1/src/compas_timber/geometry.py +157 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/model.py +246 -44
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/panel_features/__init__.py +4 -0
- compas_timber-2.1.1/src/compas_timber/panel_features/opening.py +149 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/panel_features/panel_connection_interface.py +4 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/panel_features/panel_features.py +14 -7
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/rhino/__init__.py +2 -2
- compas_timber-2.1.1/src/compas_timber/structural.py +529 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/utils/__init__.py +273 -10
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1/src/compas_timber.egg-info}/PKG-INFO +6 -8
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber.egg-info/SOURCES.txt +7 -1
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber.egg-info/requires.txt +4 -6
- compas_timber-2.0.0.dev0/src/compas_timber/connections/analyzers.py +0 -244
- compas_timber-2.0.0.dev0/src/compas_timber/connections/butt_joint.py +0 -277
- compas_timber-2.0.0.dev0/src/compas_timber/connections/l_miter.py +0 -181
- compas_timber-2.0.0.dev0/src/compas_timber/structural.py +0 -115
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/LICENSE +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/README.md +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/setup.cfg +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/panel_butt_joint.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/panel_joint.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/panel_miter_joint.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/connections/plate_miter_joint.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/__init__.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/elements/fasteners/__init__.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/fabrication/__init__.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/planning/__init__.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/planning/nesting.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/planning/sequencer.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/rhino/install.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber/utils/r_tree.py +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber.egg-info/dependency_links.txt +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber.egg-info/not-zip-safe +0 -0
- {compas_timber-2.0.0.dev0 → compas_timber-2.1.1}/src/compas_timber.egg-info/top_level.txt +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: compas_timber
|
|
3
|
-
Version: 2.
|
|
3
|
+
Version: 2.1.1
|
|
4
4
|
Summary: COMPAS package for modeling, designing and fabricating timber assemblies.
|
|
5
|
-
Author-email: Aleksandra Anna Apolinarska <apolinarska@arch.ethz.ch>, Chen Kasirer <kasirer@arch.ethz.ch>, Gonzalo Casas <casas@arch.ethz.ch>, Jonas Haldemann <haldemann@arch.ethz.ch>, Oliver Appling Bucklin <bucklin@arch.ethz.ch>, "Aurèle L. Gheyselinck" <gheyselinck@arch.ethz.ch>, Panayiotis Papacharalambous <papacharalambous@arch.ethz.ch>, Anastasiia Stryzhevska <astryzhevska@arch.ethz.ch>, Jelle Feringa <jelleferinga@gmail.com>, Joseph Kenny <jk6372@princeton.edu>, Beverly Lytle <lytle@arch.ethz.ch>, Eric Gozzi <eric.gozzi@arch.ethz.ch>, Rodrigo Arca Zimmermann <rodrigo.arca@gmail.com>
|
|
5
|
+
Author-email: Aleksandra Anna Apolinarska <apolinarska@arch.ethz.ch>, Chen Kasirer <kasirer@arch.ethz.ch>, Gonzalo Casas <casas@arch.ethz.ch>, Jonas Haldemann <haldemann@arch.ethz.ch>, Oliver Appling Bucklin <bucklin@arch.ethz.ch>, "Aurèle L. Gheyselinck" <gheyselinck@arch.ethz.ch>, Panayiotis Papacharalambous <papacharalambous@arch.ethz.ch>, Anastasiia Stryzhevska <astryzhevska@arch.ethz.ch>, Jelle Feringa <jelleferinga@gmail.com>, Joseph Kenny <jk6372@princeton.edu>, Beverly Lytle <lytle@arch.ethz.ch>, Eric Gozzi <eric.gozzi@arch.ethz.ch>, Rodrigo Arca Zimmermann <rodrigo.arca@gmail.com>, Nicolas Benjamin Boscoboinik <boscoboinik@arch.ethz.ch>
|
|
6
6
|
License-Expression: MIT
|
|
7
7
|
Project-URL: Homepage, https://gramaziokohler.github.io/compas_timber/latest/
|
|
8
8
|
Project-URL: Repository, https://github.com/gramaziokohler/compas_timber
|
|
@@ -17,22 +17,20 @@ Requires-Python: >=3.9
|
|
|
17
17
|
Description-Content-Type: text/markdown
|
|
18
18
|
License-File: LICENSE
|
|
19
19
|
Requires-Dist: rtree
|
|
20
|
-
Requires-Dist: compas<3.0,>=2.
|
|
21
|
-
Requires-Dist: compas_model==0.9.
|
|
20
|
+
Requires-Dist: compas<3.0,>=2.15.1
|
|
21
|
+
Requires-Dist: compas_model==0.9.2
|
|
22
|
+
Requires-Dist: scipy>=1.1
|
|
22
23
|
Provides-Extra: dev
|
|
23
24
|
Requires-Dist: bump-my-version; extra == "dev"
|
|
24
|
-
Requires-Dist: compas_invocations2; extra == "dev"
|
|
25
|
+
Requires-Dist: compas_invocations2[mkdocs]>=1.0.2; extra == "dev"
|
|
25
26
|
Requires-Dist: invoke>=0.14; extra == "dev"
|
|
26
27
|
Requires-Dist: ruff; extra == "dev"
|
|
27
|
-
Requires-Dist: sphinx_compas2_theme; extra == "dev"
|
|
28
|
-
Requires-Dist: sphinxcontrib-mermaid; extra == "dev"
|
|
29
28
|
Requires-Dist: twine; extra == "dev"
|
|
30
29
|
Requires-Dist: wheel; extra == "dev"
|
|
31
30
|
Requires-Dist: pytest-mock; extra == "dev"
|
|
32
31
|
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
33
32
|
Requires-Dist: build; extra == "dev"
|
|
34
33
|
Requires-Dist: tomlkit; extra == "dev"
|
|
35
|
-
Requires-Dist: compas_viewer; extra == "dev"
|
|
36
34
|
Requires-Dist: pytest-cov; extra == "dev"
|
|
37
35
|
Requires-Dist: pytest-randomly; extra == "dev"
|
|
38
36
|
Requires-Dist: pre-commit; extra == "dev"
|
|
@@ -18,7 +18,8 @@ authors = [
|
|
|
18
18
|
{ name = "Joseph Kenny", email = "jk6372@princeton.edu" },
|
|
19
19
|
{ name = "Beverly Lytle", email = "lytle@arch.ethz.ch" },
|
|
20
20
|
{ name = "Eric Gozzi", email = "eric.gozzi@arch.ethz.ch" },
|
|
21
|
-
{ name = "Rodrigo Arca Zimmermann", email = "rodrigo.arca@gmail.com" }
|
|
21
|
+
{ name = "Rodrigo Arca Zimmermann", email = "rodrigo.arca@gmail.com" },
|
|
22
|
+
{ name = "Nicolas Benjamin Boscoboinik", email = "boscoboinik@arch.ethz.ch" }
|
|
22
23
|
]
|
|
23
24
|
license = "MIT"
|
|
24
25
|
readme = "README.md"
|
|
@@ -36,25 +37,23 @@ classifiers = [
|
|
|
36
37
|
|
|
37
38
|
dependencies = [
|
|
38
39
|
"rtree",
|
|
39
|
-
"compas >=2.
|
|
40
|
-
"compas_model == 0.9.
|
|
40
|
+
"compas >=2.15.1, <3.0",
|
|
41
|
+
"compas_model == 0.9.2", # pin until first release
|
|
42
|
+
"scipy >= 1.1"
|
|
41
43
|
]
|
|
42
44
|
|
|
43
45
|
[project.optional-dependencies]
|
|
44
46
|
dev = [
|
|
45
47
|
"bump-my-version",
|
|
46
|
-
"compas_invocations2",
|
|
48
|
+
"compas_invocations2[mkdocs]>=1.0.2",
|
|
47
49
|
"invoke >=0.14",
|
|
48
50
|
"ruff",
|
|
49
|
-
"sphinx_compas2_theme",
|
|
50
|
-
"sphinxcontrib-mermaid",
|
|
51
51
|
"twine",
|
|
52
52
|
"wheel",
|
|
53
53
|
"pytest-mock",
|
|
54
54
|
"pytest>=8.0",
|
|
55
55
|
"build",
|
|
56
56
|
"tomlkit",
|
|
57
|
-
"compas_viewer",
|
|
58
57
|
"pytest-cov",
|
|
59
58
|
"pytest-randomly",
|
|
60
59
|
"pre-commit",
|
|
@@ -73,6 +72,9 @@ Repository = "https://github.com/gramaziokohler/compas_timber"
|
|
|
73
72
|
# ============================================================================
|
|
74
73
|
# Setup and build
|
|
75
74
|
# ============================================================================
|
|
75
|
+
[build-system]
|
|
76
|
+
requires = ["setuptools>=68", "wheel"]
|
|
77
|
+
build-backend = "setuptools.build_meta"
|
|
76
78
|
|
|
77
79
|
[tool.setuptools]
|
|
78
80
|
package-dir = { "" = "src" }
|
|
@@ -94,7 +96,7 @@ where = ["src"]
|
|
|
94
96
|
# ============================================================================
|
|
95
97
|
|
|
96
98
|
[tool.bumpversion]
|
|
97
|
-
current_version = "2.
|
|
99
|
+
current_version = "2.1.1"
|
|
98
100
|
message = "Bump version to {new_version}"
|
|
99
101
|
commit = true
|
|
100
102
|
tag = true
|
|
@@ -95,6 +95,21 @@ class TimberElement(Element, abc.ABC):
|
|
|
95
95
|
"""Reset all computed/cached properties."""
|
|
96
96
|
self._reset_computed_dummy()
|
|
97
97
|
|
|
98
|
+
def clear_model_dependent_cache(self):
|
|
99
|
+
"""Clear cached attributes that depend on the element's position in the model hierarchy.
|
|
100
|
+
|
|
101
|
+
Preserves model-independent caches such as ``_elementgeometry``, features,
|
|
102
|
+
and blank extensions.
|
|
103
|
+
"""
|
|
104
|
+
self._modeltransformation = None
|
|
105
|
+
self._modelgeometry = None
|
|
106
|
+
self._aabb = None
|
|
107
|
+
self._obb = None
|
|
108
|
+
self._collision_mesh = None
|
|
109
|
+
self._blank = None
|
|
110
|
+
self._ref_frame = None
|
|
111
|
+
self._geometry = None
|
|
112
|
+
|
|
98
113
|
@property
|
|
99
114
|
def is_beam(self):
|
|
100
115
|
return False
|
|
@@ -201,7 +216,7 @@ class TimberElement(Element, abc.ABC):
|
|
|
201
216
|
|
|
202
217
|
Parameters
|
|
203
218
|
----------
|
|
204
|
-
|
|
219
|
+
features : :class:`~compas_timber.fabrication.BTLxProcessing` | list(:class:`~compas_timber.fabrication.BTLxProcessing`) | None
|
|
205
220
|
The feature or features to be removed described as a BTLxProcessing or a list of BTLxProcessings.
|
|
206
221
|
If None, all features will be removed.
|
|
207
222
|
|
|
@@ -351,7 +366,7 @@ class TimberElement(Element, abc.ABC):
|
|
|
351
366
|
|
|
352
367
|
def get_dimensions_relative_to_side(self, ref_side_index):
|
|
353
368
|
# type: (int) -> tuple[float, float]
|
|
354
|
-
"""Returns the
|
|
369
|
+
"""Returns the dimensions of a timber element with respect to the Y- axis and Normal of the given reference side.
|
|
355
370
|
|
|
356
371
|
Parameters
|
|
357
372
|
----------
|
|
@@ -361,9 +376,9 @@ class TimberElement(Element, abc.ABC):
|
|
|
361
376
|
Returns
|
|
362
377
|
-------
|
|
363
378
|
tuple(float, float)
|
|
364
|
-
|
|
365
|
-
-
|
|
366
|
-
-
|
|
379
|
+
Y-axis dimension, Normal direction dimension.
|
|
380
|
+
- Y-axis dimension: The element dimension along y-axis of reference side.
|
|
381
|
+
- Normal dimension: The element dimension normal to the reference side.
|
|
367
382
|
"""
|
|
368
383
|
if ref_side_index in [1, 3]:
|
|
369
384
|
return self.height, self.width
|