
titsay
Today's Document
Sade Olutola
Cosimo Galluzzi

Product Placement
$LAYYYTER

祝日 / Permanent Vacation
KIROKAZE

JVL

@theartofmadeline
Aqua Utopia|海の底で記憶を紡ぐ

izzy's playlists!

if i look back, i am lost
Show & Tell
i don't do bad sauce passes
Misplaced Lens Cap
No title available
Three Goblin Art
noise dept.

blake kathryn
seen from Germany

seen from South Korea

seen from Türkiye

seen from United Kingdom
seen from Canada
seen from United Kingdom

seen from Japan

seen from Czechia
seen from United States

seen from Germany

seen from Canada

seen from Indonesia

seen from Türkiye
seen from United States
seen from Israel
seen from Türkiye

seen from India
seen from United States
seen from Romania
seen from United States
@design-scripting
Reaction Diffusion systems are mathematical models which explain how the concentration of one or more substances distributed in space changes under the influence of two processes.
This script simulates an R/D system by growing points from a base geometry according to a number of generations. Voronoi cells are grown around the points to create a reactive pattern where geometries collide.
Field Weathering Video Example of Scripts possible output
Field Weathering Agents
Crater Formation - Although, my original natural process was "Melting Icebergs" I found that as I was writing my script, the natural process of Crater Formations seemed more appropriate for the type of geometric configurations that were occurring. Crater Formations are interesting for this type of project, because no material is lost or gained; it is radically reformed in a displaced manner. *I couldn't get this script to work with multiple agents - if anyone would like to adjust the script to work with multiple agents - PLEASE DO! It'll be uploaded to box shortly. This script uses one agent and one Mesh.
#objectives
#to simulate water-surface tension via particles in gravity
#to deposit a series of surface tension particles in layers
# forming 'stalagmites'/'stalactites' over time
import rhinoscriptsyntax as rs
import scriptcontext as sc
#calculate the vector influence
def vectorInfluence(startPt, cloudPt, pointRange):
vectors = []
for i in range(len(cloudPt)):
#measure the distance between the startPt and each cloudPt
dist = rs.Distance(startPt, cloudPt[i])
#if in range, add to a list
if dist < pointRange:
#test
#rs.SelectObjects(cloudPt[i])
#rs.AddLine(startPt, cloudPt[i])
vec = rs.VectorCreate(cloudPt[i], startPt)
vectors.append(vec)
return vectors
#average the vectors in range (via mLeta, modified slightly)
def vectorAverage(vectors):
#definition: averages a list of vectors, returns a vector average
#inputs:
#vectors - list of vectors
#outputs:
#1 averaged vector (if list length is 0, returns (0,0,0))
if len(vectors) == 0:
return (0,0,0)
elif len(vectors) == 1:
return vectors[0]
else:
for i in range (0,len(vectors)):
if i == 0:
v1 = vectors[i]
elif i < len(vectors)-1:
v1 = rs.VectorAdd(v1,vectors[i])
else:
v1 = rs.VectorAdd(v1,vectors[i])
newLength = (rs.VectorLength(v1))/(len(vectors))
averageVector = rs.VectorScale(rs.VectorUnitize(v1),newLength)
return averageVector
#run the functions in order, in a loop of iterations
#test vectors to delete any extra points
def Main():
startPt = rs.GetObject("select the starting point, please", rs.filter.point)
cloudPt = rs.GetObjects("select the point cloud, please", rs.filter.point)
pointRange = 10
iterations = 100
mag = -8
directionInfl = [0, 0, mag]
trailPts =[]
#for j in range???? Multiple starting points????
for i in range(iterations):
vectors = vectorInfluence(startPt, cloudPt, pointRange)
averageVector = vectorAverage(vectors)
averageVector = rs.VectorAdd(averageVector, directionInfl)
vectorLength = rs.VectorLength(averageVector)
if vectorLength < .01:
vecPt = rs.MoveObject(startPt, directionInfl)
elif vectorLength == 8:
vecPt = rs.MoveObject(startPt, directionInfl)
else:
startPt = rs.CopyObject(startPt, averageVector)
sc.escape_test()
#trailPts.append(startPt)
#rs.AddCurve(trailPts)
#cloudPt.append(trailPts)
#rs.DeleteObjects(trailPts)
Main()
Recursive Branching Script. crackMe
Braden Caldwell
Generative Logic Proposal: Hierarchical Subdivision Network Recursive script that mimics a leaf’s vein structure and creates three distinct layers of subdivisions as it grows. The webbing is done using Matt’s curve network webbing script
Final Requirements
For Friday, May 3rd (Worksession Tuesday, April 30):
Finalize
Finalize your Generative Logic Tool.
Document
Compile finalized documentation of your Generative Logic Tool (this should be high quality documentation - drawings in Illustrator, etc.) to include:
The logic of your script described through a sequence of diagrams.
A final Script Flow Chart.
A series of images displaying the outcome of your script and its capacity to work with different inputs.
The Script itself.
Post
Post the Final Documentation as a high quality PDF to Box.
Post the Script and an example file to Box.
Post individual pages/images from the documentation to Tumblr.
Extra Credit
Create and post a video of your script progress and/or result.
Wcheng #CL12