<aside> 💡 preference
<aside> 💡 plug-ins
pufferfish
mesh edit 1 & 2
weaverbird
paneling tools http://www.grasshopper3d.com/group/panelingtools
</aside>
<aside> 💡 geometry
mesh: http://grasshopperprimer.com/en/1-foundations/1-6/1_What is a Mesh.html
mesh vs. NURBS: http://grasshopperprimer.com/en/1-foundations/1-6/2_Understanding Topology.html BREP: https://www.grasshopper3d.com/forum/topics/how-to-make-a-brep internalize data: refer to rhino geometry and right click internalize in GH
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to select geometry (index geometry) Geometry relations translate to numbers then use Equality to pick and choose then Dispatch (can attach toggle to ctrl)
</aside>
! mesh faces (quadrangle, triangle…) are not surface! they are more like an area defined by corners, corners are not points, they are indexes of points > they can be used as index to extract item (list item)
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> different ways of populating points
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to make any boundary voronoi (since voronoi is limited to rectangular boundary) populate geometry/ populate 3D
voronoi 3D solid intersection
</aside>
http://grasshopperprimer.com/en/1-foundations/1-6/3_Creating Meshes.html
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to move in direction with mathematic function Vector Math(+-x/) Move(T, vector) Direction Amplitude Direction+ Amplitude vector display can visualize direction
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to make select from a group points the ones on the boundary convex hull (get the indices as index) list item (indices to index, points to lists) how to populate the points within the boundary populate 2D
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to reorient each subdivided surface to a point
</aside>
</aside>
<aside> 💡 deconstruct / evaluation
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> deconstruct mesh: vertices, face, color, normal
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> deconstruct faces: corners
</aside>
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to show mesh faces as surfaces (face surface transition): deconstruct mesh (get faces and vertices)
deconstruct face (get corners as index) list items (use index to select vertices) 4point surface (rebuild surfaces from selected vertices)
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> deconstruct brep
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> deconstruct box ! boxes are plane based forms, plane + x, y, z domains
</aside>
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> how to color base on vertices direction deconstruct mesh (get normal)
angle (get angle relative to x/y/z axis) gradient (angle-t, pi-L1) mesh colors
</aside>
</aside>
Brep, one continuous surface | |
---|---|
Center Box (mesh & brep) | |
Sphere (mesh & brep) | |
Shape In Brep | Results as 0 (Inside) or 1 (Intersecting) or 2 (Outside) |
Cap holes | |
Deconstruct Brep (get face) | |
Evaluate surface | as opposed to deconstruct mesh, faces here are surfaces |
Brep Edges | |
Brep Wireframe | |
Brep / Line | |
Brep / Brep Trim Solid | intersections |
Solid Union | |
Solid Difference | |
**Solid Intersection** | |
Box Slits | boolean union |
boolean difference | |
boolean intersect | |
boolean splt, slab-like (generated from a plane, like center box) | |
Mesh Brep | |
Surface | |
---|---|
Evaluate Surface | use MD slider to locate a point on the surface |
output: | |
frame | |
Plane Normal | alter each surface orientation: |
Z-axis: new vector | |
output: plane / frame | |
orient | alternate frame / plane: |
source: original frame / plane | |
target: new frame / plane (plane normal) | |
orient direction | |
(it entails scale base of the vector distance, use amplitude to rescale the vector before plug into direction) | alternate frame / plane: |
point A: original points | |
point B: new points (relocation) | |
direction A: original frame / plane | |
direction B: new frame / plane (plane normal) |
Mesh | |
---|---|
Mesh Box | |
Mesh Sphere | |
Center Box (mesh & brep) | |
Sphere (mesh & brep) | transit Primitive Breps |
Mesh Brep | |
Simple Mesh | transit Breps |
Mesh Edges | |
Deconstruct Mesh | |
Deconstruct Face | |
Face Normal | |
Mesh Explode | mesh analysis |
Mesh Union | |
Mesh Difference | |
Mesh Intersection | |
Weld Mesh | |
Smooth Mesh | |
Triangulate | |
Quadrangulate | always weld mesh!! |
delete faces | |
weld mesh | |
smooth mesh | |
close mesh (pufferfish) | making 3D tunnels |
mesh box | |
face boundaries | |
boundary surfaces | make Rubik cube |
Delaunay Mesh (mesh edit plug-in) | |
Delaunay Edges (mesh edit plug-in) | |
Convex Hull | |
Voronoi (rectangular boundary only, flat only) | |
Substrate (mesh edit plug-in) | Triangulation |
https://en.wikipedia.org/wiki/Delaunay_triangulation | |
http://www.complexification.net/gallery/machines/substrate/ | |
populate 2D > vorinoi | |
populate 3D (limit to box) > facet dome | 2D and 3D voronoi |
Mesh Edit | |
---|---|
3D Delaunay | |
3D DelaunayCell | “shaking hands with everyone else in the room” |
Delaunay Mesh | |
Delaunay Edges | |
Convex Hull | |
Substrate |
Weaverbird | |
---|---|
Evaluate Surface | use MD slider to locate a point on the surface |
WB loop subdivision | |
Weaverbird's Laplacian Smoothing | smoothing/ softening edges |
Pufferfish | good at clean mesh edges |
---|---|
close mesh | |
offset surface |
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> faces, edges, vertices item level manipulation: same location item at each branch getting manipulated at the same action
<aside> <img src="/icons/forward_gray.svg" alt="/icons/forward_gray.svg" width="40px" /> faces: paneling
</aside>
<aside> <img src="/icons/forward_gray.svg" alt="/icons/forward_gray.svg" width="40px" /> edges ! curve / line direction
</aside>
</aside>
<aside> 💡 morph, things to consider:
<aside> <img src="/icons/forward_purple.svg" alt="/icons/forward_purple.svg" width="40px" /> Unit Geometry, getting indexed by a bounding box
</aside>