Skip to content

Commit e669997

Browse files
juney-leegitbook-bot
authored andcommitted
GITBOOK-55: split up big functions
1 parent fa4394e commit e669997

File tree

10 files changed

+174
-171
lines changed

10 files changed

+174
-171
lines changed

gitbook/SUMMARY.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,18 @@
1515

1616
* [Workflow & UI](manual/user-interface.md)
1717
* [0. RV](manual/0.-rv.md)
18-
* [1. Pattern](manual/patterns.md)
19-
* [2. Boundary Conditions](manual/boundary-conditions.md)
18+
* [1. Create & Modify Pattern](manual/1.-create-and-modify-pattern/README.md)
19+
* [1a. Create Pattern](manual/1.-create-and-modify-pattern/patterns.md)
20+
* [1b. Modify Pattern](manual/1.-create-and-modify-pattern/patterns-1.md)
21+
* [2. Define Boundary Conditions](manual/boundary-conditions.md)
2022
* [3. Form diagram](manual/diagrams.md)
2123
* [4. Force diagram](manual/equilibrium.md)
2224
* [5. Horizontal equilibrium](manual/horizontal-equilibrium.md)
2325
* [6. Vertical equilibrium](manual/fitting.md)
24-
* [7a. Modify FormDiagram](manual/supports.md)
25-
* [7b. Modify ForceDiagram](manual/supports-1.md)
26-
* [7c. Modify ThrustDiagram](manual/supports-2.md)
26+
* [7. Modify Diagrams](manual/7.-modify-diagrams/README.md)
27+
* [7a. Modify FormDiagram](manual/7.-modify-diagrams/supports.md)
28+
* [7b. Modify ForceDiagram](manual/7.-modify-diagrams/supports-1.md)
29+
* [7c. Modify ThrustDiagram](manual/7.-modify-diagrams/supports-2.md)
2730
* [8. Settings](manual/settings.md)
2831
* [9. Utilities](manual/9.-utilities.md)
2932

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# 1. Create & Modify Pattern
2+
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# 1b. Modify Pattern
2+
3+
## 1b. Modify Pattern
4+
5+
| | | |
6+
| ----------------------------------------------------------------------------------- | ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------- |
7+
| <img src="../../.gitbook/assets/RV_pattern-modify.svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p>RV_pattern_modify</p> | <p><strong>source file</strong></p><p><a href="../../../plugin/RV_pattern_modify.py">RV_pattern_modify.py</a></p> |
8+
9+
### VertexAttributes
10+
11+
12+
13+
* **All**: all vertices
14+
* **Boundary**: all boundary vertices
15+
* **Degree**: selects vertices based on a defined _vertex degree_ (number of edges that are connected to that vertex)
16+
* **EdgeLoop**: selects all vertices along the edge loop of the selected edge
17+
* EdgeStrip: selects all vertices on the edge strip of a selected edge
18+
* **Manual**: manually select vertices
19+
20+
21+
22+
23+
24+
* is\_fixed
25+
* is\_support
26+
* x
27+
* y
28+
* z
29+
30+
### EdgeAttributes
31+
32+
33+
34+
* **All**: all vertices
35+
* **Boundary**: all boundary vertices
36+
* **EdgeLoop**: selects all vertices along the edge loop of the selected edge
37+
* EdgeStrip: selects all vertices on the edge strip of a selected edge
38+
* **Manual**: manually select vertices
39+
40+
41+
42+
43+
44+
45+
46+
47+
48+
* lmax
49+
* lmin
50+
* q
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# 1a. Create Pattern
2+
3+
The first step of the workflow is to generate the topology of the `FormDiagram`, which is called the `Pattern` in RhinoVAULT. A `Pattern` is a collection of vertices interconnected by lines, represented by the COMPAS [mesh datastructure](https://compas-dev.github.io/main/api/compas.datastructures.html#meshes).
4+
5+
RhinoVAULT offers several methods for generating a `Pattern`. Each method has a direct influence not only on the topology of the eventual shell structure, but also the type of application and interaction that is desired during the design process.&#x20;
6+
7+
## 1a. Create Pattern
8+
9+
| | | |
10+
| ---------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------- |
11+
| <img src="../../.gitbook/assets/RV_pattern.svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_pattern</code></p> | <p><strong>source file</strong></p><p><a href="../../../plugin/RV_pattern.py"><code>RV_pattern.py</code></a></p> |
12+
13+
There are many ways to generate a topological pattern. Each method has pros and cons, and the desired design or workflow will help determine which method is more appropriate.
14+
15+
In the case of the rib layout variations for the [rib-stiffened funicular floor system](https://block.arch.ethz.ch/brg/research/rib-stiffened-funicular-floor-system), the boundary remains fixed (the footprint and depth of the floor). However, depending on the topology of the form diagram, the distribution and flow of forces change drastically.&#x20;
16+
17+
<figure><img src="../../.gitbook/assets/3DP-floor.png" alt=""><figcaption><p>3D-printed floor system (Block Research Group)</p></figcaption></figure>
18+
19+
<figure><img src="../../.gitbook/assets/3DP-floor_diagrams.png" alt=""><figcaption><p>Different patterns for the same floor geometry have significantly different force distributions</p></figcaption></figure>
20+
21+
In RhinoVAULT, three types of Rhino geometries can be used to generate a `Pattern :` Lines, Mesh and Surfaces. These pattern generation features would be particularly useful when there is already an existing structure with a geometry that one would like to recreate the pattern for.
22+
23+
<figure><img src="../../.gitbook/assets/fanvault.png" alt=""><figcaption><p>Three-dimensional equilibrium analysis of gothic masonry vaults" (Block and Lachauer, 2014)</p></figcaption></figure>
24+
25+
<figure><img src="../../.gitbook/assets/fanvault-diagrams.png" alt=""><figcaption><p>(a) Primal grid, directly using the rib layout and stereotomy of the vaults; (b) the resulting best-fit reciprocal (force) grid; and (c) axonometry of the target surface, constructed from documentation, and the best-fit thrust network with pipes proportional to the axial forces in the branches.</p></figcaption></figure>
26+
27+
Photographs and diagrams of different rose windows with complex mullion geometries, showing from left to right an outside picture, the equilibrated and piped form diagram, and the reciprocal force diagram.
28+
29+
<figure><img src="../../.gitbook/assets/rose-windows.png" alt=""><figcaption><p> (a) Notre Dame de Mantes, France; (b) Notre Dame de Chartres, France (Photo by Holly Hayes); (c) Durham Cathedral, England (Photo by Carcharoth on Wikipedia); (d) Notre Dame de Paris, France (Photo by Ellen Brown); (e) Bisshop’s Eye of Lincoln Cathedral, England (Photo from Cornell University Library); (f) Sainte-Chapelle Paris, France.</p></figcaption></figure>
30+
31+
{% hint style="warning" %}
32+
`Pattern` is a COMPAS [mesh](https://compas-dev.github.io/main/api/generated/compas.datastructures.Mesh.html#compas.datastructures.Mesh) object. A mesh datastructure is network of faces, where the connectivities of the faces are defined by halfedge adjacencies.&#x20;
33+
34+
35+
{% endhint %}
36+
37+
### RhinoLines
38+
39+
One of the simplest, and the most manual, way to make the Pattern is to draw the edges of the `Pattern` as Rhino lines. Each edge of the Pattern should be an individual line; all lines should be broken at all line intersections. In other words, these lines may not be overlapping.&#x20;
40+
41+
<figure><img src="../../.gitbook/assets/from-lines-grid.jpg" alt=""><figcaption></figcaption></figure>
42+
43+
The input set of lines must consist of closed loops of lines representing the faces of the `Pattern.` If there are closed loops of lines, a `Pattern` will be generated and all lines that do not form a closed loop, such as the "leaf" edges will be omitted.
44+
45+
<figure><img src="../../.gitbook/assets/pattern-input-lines.png" alt=""><figcaption></figcaption></figure>
46+
47+
### RhinoMesh
48+
49+
A Rhino mesh object can be used to create a `Pattern`. Since a Pattern is also a mesh object, the vertices and edges can be directly used to create the vertices and edges of the `Pattern`.
50+
51+
<figure><img src="../../.gitbook/assets/from-mesh.jpg" alt=""><figcaption></figcaption></figure>
52+
53+
### RhinoSurface
54+
55+
A non-trimmed Rhino surface object can be used to create a Pattern, using subdivision values for U and V.
56+
57+
<figure><img src="../../.gitbook/assets/from-surface (1).jpg" alt=""><figcaption></figcaption></figure>
58+
59+
### MeshGrid
60+
61+
This function automatically generates a mesh grid using number and size of the grid in x and y directions.
62+
63+
### Triangulation
64+
65+
Not implemented.
66+
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# 7. Modify Diagrams
2+

gitbook/manual/supports-1.md renamed to gitbook/manual/7.-modify-diagrams/supports-1.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
## Modify ForceDiagram
44

5-
| | | |
6-
| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- |
7-
| <img src="../.gitbook/assets/RV_ForceDiagram-modify (1).svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_force_modify</code></p> | <p><strong>source file</strong></p><p><a href="../../plugin/RV_force_modify.py"><code>RV_force_modify.py</code></a></p> |
5+
| | | |
6+
| -------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
7+
| <img src="../../.gitbook/assets/RV_ForceDiagram-modify (1).svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_force_modify</code></p> | <p><strong>source file</strong></p><p><a href="../../../plugin/RV_force_modify.py"><code>RV_force_modify.py</code></a></p> |
88

99
`RV_force_modify` allows users to make the following modifications to the ForceDiagram.
1010

gitbook/manual/supports-2.md renamed to gitbook/manual/7.-modify-diagrams/supports-2.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
## Modify ThrustDiagram
44

5-
| | | |
6-
| -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------- |
7-
| <img src="../.gitbook/assets/RV_ThrustDiagram-modify.svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_thrust_modify</code></p> | <p><strong>source file</strong></p><p><a href="../../plugin/RV_thrust_modify.py"><code>RV_thrust_modify.py</code></a></p> |
5+
| | | |
6+
| ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------- |
7+
| <img src="../../.gitbook/assets/RV_ThrustDiagram-modify.svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_thrust_modify</code></p> | <p><strong>source file</strong></p><p><a href="../../../plugin/RV_thrust_modify.py"><code>RV_thrust_modify.py</code></a></p> |
88

99
`RV_thrust_modify` allows users to make the following modifications to the ThrustDiagram.
1010

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# 7a. Modify FormDiagram
2+
3+
| | | |
4+
| ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ |
5+
| <img src="../../.gitbook/assets/RV_FormDiagram-modify (1).svg" alt="" data-size="original"> | <p><strong>Rhino command name</strong></p><p><code>RV_form_modify</code></p> | <p><strong>source file</strong></p><p><a href="../../../plugin/RV_form_modify.py"><code>RV_form_modify.py</code></a></p> |
6+
7+
Description
8+
9+
10+
11+
12+
13+
***
14+
15+
## Sub functions&#x20;
16+
17+
### Dropdowns
18+
19+
20+
21+
### Supports
22+
23+
24+
25+
### Loads
26+
27+
28+
29+
### Openings
30+
31+
32+
33+
### EdgeConstraints
34+
35+
36+
37+
### ForceDensities
38+
39+
40+

0 commit comments

Comments
 (0)