Files
spatial-lab/examples/braided_atrium.spatial.json

285 lines
4.8 KiB
JSON

{
"schema": "spatial-lab.project/1",
"id": "braided-atrium",
"name": "Braided atrium",
"parameters": {
"radius": 11,
"lobe": 3.2,
"rise": 4.8,
"width": 1.25,
"thickness": 0.24,
"twist": 360,
"samples": 240,
"levels": 3
},
"nodes": [
{
"id": "braid-path",
"op": "curve",
"params": {
"xyz": [
"(radius+lobe*cos(3*t))*cos(2*t)",
"(radius+lobe*cos(3*t))*sin(2*t)",
"rise*sin(3*t)"
],
"domain": [
0,
"tau"
],
"segments": "samples",
"closed": true
},
"visible": false,
"role": "route"
},
{
"id": "braid-frames",
"op": "frames",
"inputs": {
"path": "braid-path"
},
"params": {
"twist_degrees": "twist"
},
"visible": false
},
{
"id": "braid-section",
"op": "sweep",
"inputs": {
"frames": "braid-frames"
},
"params": {
"profile": [
[
"-width/2",
"-thickness/2"
],
[
"width/2",
"-thickness/2"
],
[
"width/2",
"thickness/2"
],
[
"-width/2",
"thickness/2"
]
]
},
"visible": false
},
{
"id": "braided-galleries",
"name": "Braided galleries",
"op": "repeat",
"inputs": {
"source": "braid-section"
},
"params": {
"count": "levels",
"translate": [
0,
0,
6.5
],
"rotate": [
0,
0,
37
],
"scale": 0.87
},
"color": [
0.37,
0.56,
0.68
],
"role": "gallery"
},
{
"id": "ring-path",
"op": "curve",
"params": {
"xyz": [
"(radius+lobe+2.6)*cos(t)",
"(radius+lobe+2.6)*sin(t)",
"-6+0.65*sin(4*t)"
],
"segments": 144,
"closed": true
},
"visible": false
},
{
"id": "ring-frames",
"op": "frames",
"inputs": {
"path": "ring-path"
},
"visible": false
},
{
"id": "ring-section",
"op": "sweep",
"inputs": {
"frames": "ring-frames"
},
"params": {
"profile": [
[
-0.13,
-0.11
],
[
0.13,
-0.11
],
[
0.13,
0.11
],
[
-0.13,
0.11
]
]
},
"visible": false
},
{
"id": "outer-rings",
"name": "Contour rings",
"op": "repeat",
"inputs": {
"source": "ring-section"
},
"params": {
"count": 9,
"translate": [
0,
0,
2.8
],
"rotate": [
0,
0,
11
]
},
"color": [
0.63,
0.68,
0.73
],
"role": "structure"
},
{
"id": "spine-path",
"op": "curve",
"params": {
"xyz": [
"(radius+lobe+2.6)*cos(t)",
"(radius+lobe+2.6)*sin(t)",
"-6+18*t/pi"
],
"domain": [
0,
"1.35*pi"
],
"segments": 112
},
"visible": false
},
{
"id": "spine-frames",
"op": "frames",
"inputs": {
"path": "spine-path"
},
"visible": false
},
{
"id": "spine-section",
"op": "sweep",
"inputs": {
"frames": "spine-frames"
},
"params": {
"profile": [
[
-0.18,
-0.18
],
[
0.18,
-0.18
],
[
0.18,
0.18
],
[
-0.18,
0.18
]
]
},
"visible": false
},
{
"id": "spiral-spines",
"name": "Spiral spines",
"op": "repeat",
"inputs": {
"source": "spine-section"
},
"params": {
"count": 4,
"rotate": [
0,
0,
90
]
},
"color": [
0.69,
0.47,
0.29
],
"role": "structure"
},
{
"id": "saddle-shell",
"name": "Lower saddle",
"op": "surface",
"params": {
"xyz": [
"u",
"v",
"0.025*(u*u-v*v)-9"
],
"u_domain": [
-7,
7
],
"v_domain": [
-7,
7
],
"u_segments": 28,
"v_segments": 28,
"thickness": 0.22
},
"color": [
0.57,
0.66,
0.58
],
"role": "shell"
}
]
}