Skip to content

Commit cc496c1

Browse files
2 parents 108a772 + 04fe76d commit cc496c1

1 file changed

Lines changed: 129 additions & 104 deletions

File tree

README.md

Lines changed: 129 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -1,144 +1,169 @@
1-
# geoTRIC
2-
geoTRIC is a modular computational design toolkit developed through a progressive series of geometric systems.
3-
Each module builds conceptually and technically on the previous one — moving from 2D grammar rules to 3D surface-driven tower systems.
1+
# geoTRIC
42

5-
The project explores structure, iteration, transformation, matrices, and attractor-driven geometry within Rhinoceros using Python (RhinoScriptSyntax).
3+
Procedural computational design toolkit for geometric systems, skeletal structures, spatial matrices, and attractor-driven architectural generation.
4+
---
5+
6+
# Modules
7+
8+
```text
9+
01 grammatric → Shape Grammars
10+
02 skeletric → Skeletal Graphs
11+
03 pattric → Pattern Fields
12+
04 mattric → 3D Matrices
13+
05 hiritric → Surface Tower Systems
14+
```
15+
16+
Each module extends the previous one through:
17+
* dimensional complexity
18+
* iteration systems
19+
* attractor logic
20+
* vector fields
21+
* procedural control
622

723
---
824

9-
## Project Structure
25+
# Structure
1026

27+
```text
1128
geoTRIC/
29+
1230
├── 01_grammatric/
1331
├── 02_skeletric/
1432
├── 03_pattric/
1533
├── 04_mattric/
16-
└── 05_hiritric/
17-
18-
Each module represents a conceptual and technical evolution.
34+
├── 05_hiritric/
35+
36+
├── api/
37+
│ ├── core/
38+
│ ├── rhino/
39+
│ ├── blender/
40+
│ ├── freecad/
41+
│ ├── revit/
42+
│ └── autocad/
43+
44+
├── render/
45+
└── examples/
46+
```
1947

2048
---
2149

22-
# 01 — grammatric
23-
### Shape Grammars & Transformations (2D)
24-
25-
**Focus:** Rule-based geometric generation.
26-
27-
- Create base shapes (points, lines, curves)
28-
- Apply transformations (translate, rotate, scale)
29-
- Define grammar rules (match → replace)
30-
- Generate sequential derivations
31-
- Export visual states
32-
33-
**Core Idea:**
34-
Geometry as language. Shapes become symbols; transformations become syntax.
50+
# API Logic
51+
52+
```text
53+
Core Geometry
54+
55+
Abstract Geometry
56+
57+
Platform Adapter
58+
59+
Rhino / Blender Objects
60+
61+
Rendering / GIF Export
62+
```
63+
64+
## Visual Sequence
65+
66+
```text
67+
┌─────────────────────┐
68+
│ grammatric.py │
69+
│ skeleton.py │
70+
│ pattern.py │
71+
│ matrix.py │
72+
│ surface.py │
73+
└──────────┬──────────┘
74+
75+
76+
┌─────────────────────┐
77+
│ ABSTRACT GEOMETRY │
78+
│ │
79+
│ Polyline │
80+
│ Column │
81+
│ Matrix │
82+
│ Graph │
83+
└──────────┬──────────┘
84+
85+
┌──────────────────┼──────────────────┐
86+
▼ ▼ ▼
87+
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
88+
│ Rhino API │ │ Blender API │ │ Future APIs │
89+
│ Adapter │ │ Adapter │ │ Revit/FCAD │
90+
└──────┬───────┘ └──────┬───────┘ └──────┬───────┘
91+
│ │ │
92+
▼ ▼ ▼
93+
Rhino Objects Blender Objects BIM Objects
94+
│ │
95+
▼ ▼
96+
Rendering Rendering
97+
98+
99+
GIF / PNG / MP4
100+
```
101+
102+
Core geometry is software-independent.
103+
104+
Adapters convert geometry into platform-specific objects.
105+
106+
Current implemented adapters:
107+
108+
* Rhino
109+
* Blender
35110

36111
---
37112

38-
# 02 — skeletric
39-
### Bone Structures & Sequential States (2D)
113+
# Current Systems
40114

41-
**Focus:** Skeletal graph systems as control geometry.
115+
## grammatric
42116

43-
- Generate bone structures (nodes + edges)
44-
- Sample spines into ordered point lists
45-
- Derive ribs, branches, and connections
46-
- Create sequential states through iteration
47-
- Use attractors and conditionals to control density
117+
Rule-based shape transformations.
48118

49-
**Core Idea:**
50-
Structure precedes form. A skeleton controls complexity.
119+
## skeletric
51120

52-
---
121+
Node-edge skeletal graph systems.
53122

54-
# 03 — pattric
55-
### Pattern Systems & Animation (2D)
123+
## pattric
56124

57-
**Focus:** Field-based pattern generation driven by skeleton logic.
125+
Pattern repetition and field variation.
58126

59-
- Use Lists, Dictionaries, Iteration, and Conditionals
60-
- Populate skeletons with motifs
61-
- Introduce formal variability across a grid
62-
- Animate parameters (rotation, scale, density, randomness)
63-
- Export sequential frames
127+
## mattric
64128

65-
**Core Idea:**
66-
Emergence through repetition and controlled variation.
67-
68-
---
129+
3D matrix and column systems.
69130

70-
# 04 — mattric
71-
### 3D Point Matrices & Surface Generation
131+
## hiritric
72132

73-
**Focus:** Matrix-based spatial systems.
74-
75-
- Generate 3D point matrices (dictionary indexed)
76-
- Modify matrices via attractor points
77-
- Loop through matrices to create curves
78-
- Sweep curves into surfaces and wall systems
79-
- Produce structured 3D geometries
80-
81-
**Core Idea:**
82-
Form emerges from structured spatial fields.
83-
84-
---
85-
86-
# 05 — hiritric
87-
### Surface Matrices, Normals & Tower Systems
88-
89-
**Focus:** NURBS surfaces and vector-driven geometry.
90-
91-
- Evaluate surface (U,V) parameter space
92-
- Extract surface normals
93-
- Modify normals via attractor distance
94-
- Generate geometry along modified vectors
95-
- Apply materials and color gradients
96-
- Produce high-rise tower variations
97-
98-
**Core Idea:**
99-
Surface logic becomes architectural system.
133+
Surface-normal tower generation.
100134

101135
---
102136

103-
## Conceptual Progression
137+
# Rendering
104138

105-
grammatric : Shape Grammar
106-
107-
skeletric : Skeletal Graph
108-
109-
pattric : Pattern Field
110-
111-
mattric : 3D Matrix - Surface System
112-
113-
hiritric : Tower
139+
```text
140+
Geometry
141+
→ Frame Sequence
142+
→ GIF / MP4
143+
```
114144

115-
Each module extends the previous one in:
145+
Used for:
116146

117-
- Dimensional complexity (2D → 3D → surface-driven)
118-
- Data structure (lists → graphs → dictionaries → matrices)
119-
- Control logic (rules → iteration → attractors → vector fields)
147+
* procedural animations
148+
* geometric studies
149+
* system visualizations
150+
* architectural motion graphics
120151

121152
---
122153

123-
## Technologies
154+
# Technologies
124155

125-
- Rhinoceros
126-
- Python
127-
- RhinoScriptSyntax
128-
- Lists, Tuples, Dictionaries
129-
- Iteration & Conditional Execution
130-
- Attractor Systems
131-
- Surface Evaluation & Vector Math
156+
* Python
157+
* RhinoScriptSyntax
158+
* RhinoCommon
159+
* Blender bpy
160+
* NumPy
132161

133162
---
134163

135-
## Philosophy
136-
137-
geoTRIC explores the relationship between:
138-
139-
- Structure and variation
140-
- Control and emergence
141-
- Matrix and surface
142-
- Rule and form
164+
# Status
143165

144-
It treats geometry as a system rather than a static object.
166+
Currently focused on:
167+
* Rhino + Blender workflows
168+
* API abstraction layer
169+
* multi-platform procedural geometry

0 commit comments

Comments
 (0)