Mondrian Cube Variants
Structure Synth script for some variants of Mondrian Cube . Images rendered in SunFlow

Mondrian Cube 1
// 3D Mondrian Cube 1 set background #fff set colorpool list:#F00,#0404A2,#FFFE33,#FFF
mondrian
rule mondrian {
a2
}
rule a2 w 3 maxdepth 2 > d {
{ s 0.3334 1 1 x -1 } a2 { s 0.6666 1 1 x 0.25 } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 1 0.3334 1 y -1 } a2 { s 1 0.6666 1 y 0.25 } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 1 1 0.3334 z -1 } a2 { s 1 1 0.6666 z 0.25 } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 0.5 1 1 x -0.5 } a2 { s 0.5 1 1 x 0.5 } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 1 0.5 1 y -0.5 } a2 { s 1 0.5 1 y 0.5 } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 1 1 0.5 z -0.5 } a2 { s 1 1 0.5 z 0.5 } a2 }
rule d {
{ s 1 1 1 } square }
rule square {
{ s 0.95 color random } box
{ color #eee } frame }
rule square {
{ s 0.95 color random } box
{ color #222 } frame }
rule frame {
{ s 0.1 1 0.05 y 0 x 4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
1 * { rz 90 s 0.1 1 0.05} 1 * { y 0 x -4.5 z 9.5 } box
1 * { rz -90} 1 * { s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x 4.5 z -9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
1 * { rz 90 s 0.1 1 0.05 } 1 * { y 0 x -4.5 z -9.5 } box
1 * { rz -90 } 1 * { s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
{ s 0.05 0.05 1 y 9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y 9.5 x 9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x 9.5 z 0 } box
}
|

Mondrian Cube 2
//3D Mondrian Cube 2
set background #fff
set colorpool list:#F00,#0404A2,#FFFE33,#FFF
mondrian
rule mondrian {
a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 0.3334 1 1 x -1 } a2
{ s 0.6666 1 1 x 0.25 } a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 1 0.3334 1 y -1 } a2
{ s 1 0.6666 1 y 0.25 } a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 1 1 0.3334 z -1 } a2
{ s 1 1 0.6666 z 0.25 } a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 0.5 1 1 x -0.5 } a2
{ s 0.5 1 1 x 0.5 } a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 1 0.5 1 y -0.5 } a2
{ s 1 0.5 1 y 0.5 } a2
}
rule a2 w 3 maxdepth 3 > d {
{ s 1 1 0.5 z -0.5 } a2
{ s 1 1 0.5 z 0.5 } a2
}
rule d {
{ s 1 color random} box
}
|

Mondrian Cube 3
//3D Mondrian Cube 3 #define dis 0.5 set background #000 set colorpool list:#F00,#0404A2,#FFFE33,#FFF
4 * { x 0.5 z -0.5 ry 90 } a2 1 * { z -0.5 y 0.5 rx 90 } 2 * { z 1 rx 180 } a2 { z -0.5 s 1.1 color #eee } frame
rule a2 w 3 maxdepth 2 > d {
{ s 0.5 x dis y dis } a2 { s 0.5 x -dis y dis } a2 { s 0.5 x dis y -dis } a2 { s 0.5 x -dis y -dis } a2 }
rule a2 w 3 maxdepth 1 > d {
{ s 0.5 x dis y dis } a2 { s 0.5 x -dis y dis} a2 { s 0.5 x dis y -dis } a2 { s 0.5 x -dis y -dis } a2
}
rule a2 w 1 maxdepth 2 > d {
{ s 0.5 1 1.25 x dis } a2 { s 0.5 1 1.25 x -dis } a2 }
rule a2 w 1 maxdepth 1 > d {
{ s 1 0.5 1.25 y dis } a2 { s 1 0.5 1.25 y -dis } a2 }
rule d {
{ s 0.95 color random } box
{ color #eee } frame }
rule d {
{ s 0.95 color random } box
{ color #222 } frame }
rule frame {
{ s 0.1 1 0.05 y 0 x 4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
1 * { rz 90 s 0.1 1 0.05 } 1 * { y 0 x -4.5 z 9.5 } box
1 * { rz -90 } 1 * { s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x 4.5 z -9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
1 * { rz 90 s 0.1 1 0.05 } 1 * { y 0 x -4.5 z -9.5 } box
1 * { rz -90} 1 * { s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
{ s 0.05 0.05 1 y 9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y 9.5 x 9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x 9.5 z 0 } box
}
|

Mondrian Cube 4
//3D Mondrian Cube 4 #define dis 0.55 set colorpool list:#F00,#0404A2,#FFFE33,#FFF set background #fff 4 * { x 0.55 z -0.55 ry 90 } a2 1 * { z -0.55 y 0.55 rx 90 } 2 * { z 1.1 rx 180 } a2
rule a2 w 3 maxdepth 2 > d {
{ s 0.5 0.5 1 x dis y dis } a2 { s 0.5 0.5 1 x -dis y dis } a2 { s 0.5 0.5 1 x dis y -dis } a2 { s 0.5 0.5 1 x -dis y -dis } a2 }
rule a2 w 3 maxdepth 2 > d {
{ s 0.5 0.5 1 x dis y dis } a2 { s 0.5 0.5 1 x -dis y dis } a2 { s 0.5 0.5 1 x dis y -dis } a2 { s 0.5 0.5 1 x -dis y -dis } a2 }
rule a2 w 3 maxdepth 1 > d {
{ s 0.5 0.5 1 x dis y dis } a2 { s 0.5 0.5 1 x -dis y dis } a2 { s 0.5 0.5 1 x dis y -dis } a2 { s 0.5 0.5 1 x -dis y -dis } a2 }
rule d w 2 {
{ s 0.9 0.9 0.01 color random } box
{ s 1 1 0.25 color #111 } frame }
rule d w 2 {
{ s 0.9 0.9 0.01 color random } box
{ s 1 1 0.25 color #eee } frame }
rule frame {
{ s 1.1 0.1 0.1 y 5 x 0 } box
{ s 0.1 1 0.1 y 0 x 5 } box
{ s 1.1 0.1 0.1 y -5 x 0 } box
{ s 0.1 1 0.1 y 0 x -5 } box
}
|

Mondrian Cube 5 //3D Mondrian Cube 5 #define dis 0.55 set colorpool list:#F00,#0404A2,#FFFE33,#FFF set background #000
a2
rule a2 w 3 maxdepth 2 > d {
{ s 0.5 0.5 0.5 x dis y dis z dis } a2 { s 0.5 0.5 0.5 x -dis y dis z dis } a2 { s 0.5 0.5 0.5 x dis y -dis z dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z dis } a2
{ s 0.5 0.5 0.5 x dis y dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y dis z -dis } a2 { s 0.5 0.5 0.5 x dis y -dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z -dis } a2
}
rule a2 w 3 maxdepth 1 > d {
{ s 0.5 0.5 0.5 x dis y dis z dis } a2 { s 0.5 0.5 0.5 x -dis y dis z dis } a2 { s 0.5 0.5 0.5 x dis y -dis z dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z dis } a2
{ s 0.5 0.5 0.5 x dis y dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y dis z -dis } a2 { s 0.5 0.5 0.5 x dis y -dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z -dis } a2
}
rule a2 w 3 maxdepth 1 > d {
{ s 0.5 0.5 0.5 x dis y dis z dis } a2 { s 0.5 0.5 0.5 x -dis y dis z dis } a2 { s 0.5 0.5 0.5 x dis y -dis z dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z dis } a2
{ s 0.5 0.5 0.5 x dis y dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y dis z -dis } a2 { s 0.5 0.5 0.5 x dis y -dis z -dis } a2 { s 0.5 0.5 0.5 x -dis y -dis z -dis } a2
}
rule d w 2 {
{ color #eee } frame { color random } box
}
rule d w 2 {
{ color #222 } frame { color random } box
}
rule frame {
{ s 0.1 1.1 0.1 x 5 z 5 } box
{ s 0.1 1.1 0.1 x 5 z -5 } box
{ s 0.1 1.1 0.1 x -5 z 5 } box
{ s 0.1 1.1 0.1 x -5 z -5 } box
{ s 1 0.1 0.1 y 5 z 5 } box
{ s 1 0.1 0.1 y 5 z -5 } box
{ s 1 0.1 0.1 y -5 z 5 } box
{ s 1 0.1 0.1 y -5 z -5 } box
{ s 0.1 0.1 1 y 5 x 5 } box
{ s 0.1 0.1 1 y 5 x -5 } box
{ s 0.1 0.1 1 y -5 x 5 } box
{ s 0.1 0.1 1 y -5 x -5 } box
}
|

Mondrian Cube 6
// 3D Mondrian Cube 6 set background white set colorpool list:#F00,#0404A2,#FFFE33,#FFF
4 * { x 0.5 z -0.5 ry 90 } a2 1 * { z -0.5 y 0.5 rx 90 } 2 * { z 1 rx 180 } a2 { z -0.5 s 1.09 color #555 } frame
rule a2 w 2 maxdepth 2 > d {
{ s 0.3334 1 1 x -1 } a2 { s 0.3334 1 1 x 0.0 } a2 { s 0.3334 1 1 x 1.0 } a2 }
rule a2 w 2 maxdepth 2 > d {
{ s 1 0.3334 1 y -1 } a2 { s 1 0.3334 1 y 1 } a2 { s 1 0.3334 1 y 0 } a2 }
rule d {
{ s 1 1 0.1 } square }
rule square {
{ s 0.95 color random } box
{ color #eee } frame }
rule square {
{ s 0.95 color random } box
{ color #222 } frame }
rule frame {
{ s 0.1 1 0.05 y 0 x 4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
1 * { rz 90 s 0.1 1 0.05} 1 * { y 0 x -4.5 z 9.5 } box
1 * { rz -90} 1 * { s 0.1 1 0.05 y 0 x -4.5 z 9.5 } box
{ s 0.1 1 0.05 y 0 x 4.5 z -9.5 } box
{ s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
1 * { rz 90 s 0.1 1 0.05 } 1 * { y 0 x -4.5 z -9.5 } box
1 * { rz -90 } 1 * { s 0.1 1 0.05 y 0 x -4.5 z -9.5 } box
{ s 0.05 0.05 1 y 9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y 9.5 x 9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x -9.5 z 0 } box
{ s 0.05 0.05 1 y -9.5 x 9.5 z 0 } box
}
|
|
|