SCRIPTS
ADAPTIVE FLUX MORPHOLOGIES
8.1 test = rs.PointAdd(self.coord,vect) for i in
rs.VectorUnitize(vect) vect = rs.VectorScale(vect,step)
range(0,len(obstacles)): test = rs.PointAdd(self. inside. append(rs.PointInPlanarClosedCurve(tes t,obstacles[i])) tmpL = inside
self.coord = rs.PointAdd(self.coord,vect) self.moveVect = vect
coord,vect) tmpL = [] for i in range(0,len(obstacles)): tmpL.append(rs.PointIn PlanarClosedCurve(test,obstacles[i])) if rs.PointInPlanarClose dCurve(test,boundary) != 0 and math. fsum(tmpL) == 0:
self.startVect = vect elif rs.PointInPlanarC losedCurve(test,boundary) == 0:
self.coord = rs.PointAdd(self.coord,vect) self.moveVect = vect
while rs.PointInPl anarClosedCurve(test,boundary) == 0:
self.startVect = vect
vect = rs.VectorRotate(vect,random.randint(self.senseAng,self.senseAng),[0,0,1])
elif rs.PointInPlanarClo sedCurve(test,boundary)!=0 and math. fsum(tmpL)!=0:
test = rs.PointAdd(self.coord,vect)
while rs.PointInPlanarC losedCurve(test,boundary)!=0 and math. fsum(tmpL)!=0:
self.coord = rs.PointAdd(self.coord,vect) self.moveVect = vect
inside = [] vect = rs.VectorRotate(vect,random.randint(self.senseAng,self.senseAng),[0,0,1])
self.startVect = test = rs.PointAdd(self.coord,vect)
vect elif len(self.visibleNeighbors) > 0:
for i in range(0,len(obstacles)):
pts = [] for i in range(0,len(self. visibleNeighbors)): pts.append(self. visibleNeighbors[i].coord)
inside. append(rs.PointInPlanarClosedCurve(tes t,obstacles[i])) tmpL = inside
target = cenPt(pts) vect = rs.VectorCreate(target,self.coord)
self.coord = rs.PointAdd(self.coord,vect) self.moveVect = vect
vect =
145