forked from protonphoton/LJ
[fix] clitools tunnel generator should use circles
This commit is contained in:
parent
8e9cd509ab
commit
1e43a5fc43
@ -12,7 +12,7 @@ Use it to test your filters and outputs
|
|||||||
|
|
||||||
LICENCE : CC
|
LICENCE : CC
|
||||||
|
|
||||||
by cocoa
|
by cocoa
|
||||||
|
|
||||||
'''
|
'''
|
||||||
|
|
||||||
@ -52,7 +52,7 @@ randomize = args.randomize
|
|||||||
speed = args.speed
|
speed = args.speed
|
||||||
verbose = args.verbose
|
verbose = args.verbose
|
||||||
|
|
||||||
origSpeed = speed
|
origSpeed = speed
|
||||||
optimal_looptime = 1 / fps
|
optimal_looptime = 1 / fps
|
||||||
square = [
|
square = [
|
||||||
[-1,1],
|
[-1,1],
|
||||||
@ -62,14 +62,32 @@ square = [
|
|||||||
[-1,1]
|
[-1,1]
|
||||||
]
|
]
|
||||||
|
|
||||||
shape = square
|
circle = [[1,0],
|
||||||
|
[0.9238795325112867,0.3826834323650898],
|
||||||
|
[0.7071067811865476,0.7071067811865475],
|
||||||
|
[0.38268343236508984,0.9238795325112867],
|
||||||
|
[0,1.0],
|
||||||
|
[-0.3826834323650897,0.9238795325112867],
|
||||||
|
[-0.7071067811865475,0.7071067811865476],
|
||||||
|
[-0.9238795325112867,0.3826834323650899],
|
||||||
|
[-1.0,0],
|
||||||
|
[-0.9238795325112868,-0.38268343236508967],
|
||||||
|
[-0.7071067811865477,-0.7071067811865475],
|
||||||
|
[-0.38268343236509034,-0.9238795325112865],
|
||||||
|
[0,-1.0],
|
||||||
|
[0.38268343236509,-0.9238795325112866],
|
||||||
|
[0.707106781186548,-0.707106781186547],
|
||||||
|
[0.9238795325112872,-0.3826834323650887],
|
||||||
|
[1,0]]
|
||||||
|
|
||||||
|
shape = circle
|
||||||
currentCenter = [centerX, centerY]
|
currentCenter = [centerX, centerY]
|
||||||
centerVector= [0,0]
|
centerVector= [0,0]
|
||||||
# tweak random basis
|
# tweak random basis
|
||||||
if randomize % 2 == 1:
|
if randomize % 2 == 1:
|
||||||
randomize += 1
|
randomize += 1
|
||||||
debug(name,"randomize:{}".format(randomize))
|
debug(name,"randomize:{}".format(randomize))
|
||||||
centerRand = int(math.sqrt(randomize) / 4 ) + 1
|
centerRand = int(math.sqrt(randomize) / 4 ) + 1
|
||||||
debug( name, "centerRand:{}".format(centerRand ) )
|
debug( name, "centerRand:{}".format(centerRand ) )
|
||||||
class polylineGenerator( object ):
|
class polylineGenerator( object ):
|
||||||
|
|
||||||
@ -103,10 +121,10 @@ class polylineGenerator( object ):
|
|||||||
min_size = 9999
|
min_size = 9999
|
||||||
delList = []
|
delList = []
|
||||||
if randomize :
|
if randomize :
|
||||||
# Change the vector
|
# Change the vector
|
||||||
centerVector[0] += random.randrange( -centerRand,centerRand )
|
centerVector[0] += random.randrange( -centerRand,centerRand )
|
||||||
centerVector[1] += random.randrange( -centerRand,centerRand )
|
centerVector[1] += random.randrange( -centerRand,centerRand )
|
||||||
# Modify the vector if it is over the limit
|
# Modify the vector if it is over the limit
|
||||||
if currentCenter[0] + centerVector[0] >= centerX + randomize or currentCenter[0] + centerVector[0] <= centerX - randomize:
|
if currentCenter[0] + centerVector[0] >= centerX + randomize or currentCenter[0] + centerVector[0] <= centerX - randomize:
|
||||||
centerVector[0] = 0
|
centerVector[0] = 0
|
||||||
if currentCenter[1] + centerVector[1] >= centerY + randomize or currentCenter[1] +centerVector[1] <= centerY - randomize:
|
if currentCenter[1] + centerVector[1] >= centerY + randomize or currentCenter[1] +centerVector[1] <= centerY - randomize:
|
||||||
@ -115,19 +133,19 @@ class polylineGenerator( object ):
|
|||||||
currentCenter[1] += centerVector[1]
|
currentCenter[1] += centerVector[1]
|
||||||
# Change speed
|
# Change speed
|
||||||
speed += int( random.randrange( int(-origSpeed),origSpeed ) )
|
speed += int( random.randrange( int(-origSpeed),origSpeed ) )
|
||||||
if speed < origSpeed :
|
if speed < origSpeed :
|
||||||
speed = origSpeed
|
speed = origSpeed
|
||||||
elif speed > (origSpeed + randomize / 2) :
|
elif speed > (origSpeed + randomize / 2) :
|
||||||
speed = origSpeed + randomize / 2
|
speed = origSpeed + randomize / 2
|
||||||
#debug(name, "currentCenter:{} speed:{}".format(currentCenter,speed))
|
#debug(name, "currentCenter:{} speed:{}".format(currentCenter,speed))
|
||||||
|
|
||||||
for i, shapeInfo in enumerate(self.polylineList):
|
for i, shapeInfo in enumerate(self.polylineList):
|
||||||
size = shapeInfo[0]
|
size = shapeInfo[0]
|
||||||
# Augment speed with size
|
# Augment speed with size
|
||||||
"""
|
"""
|
||||||
size = 0 : += sqrt(speed)
|
size = 0 : += sqrt(speed)
|
||||||
size = half max size : +=speed
|
size = half max size : +=speed
|
||||||
|
|
||||||
"""
|
"""
|
||||||
if size < max_size / 4:
|
if size < max_size / 4:
|
||||||
size += math.pow(speed, 0.1)
|
size += math.pow(speed, 0.1)
|
||||||
@ -143,7 +161,7 @@ class polylineGenerator( object ):
|
|||||||
for i in delList:
|
for i in delList:
|
||||||
del self.polylineList[i]
|
del self.polylineList[i]
|
||||||
#debug(name, "polyline:",self.polylineList)
|
#debug(name, "polyline:",self.polylineList)
|
||||||
if min_size >= interval:
|
if min_size >= interval:
|
||||||
debug(name, "new shape")
|
debug(name, "new shape")
|
||||||
self.polylineList.append([0,[currentCenter[0],currentCenter[1]]])
|
self.polylineList.append([0,[currentCenter[0],currentCenter[1]]])
|
||||||
|
|
||||||
@ -172,5 +190,5 @@ while True:
|
|||||||
if( looptime < optimal_looptime ):
|
if( looptime < optimal_looptime ):
|
||||||
time.sleep( optimal_looptime - looptime)
|
time.sleep( optimal_looptime - looptime)
|
||||||
#debug(name+" micro sleep:"+str( optimal_looptime - looptime))
|
#debug(name+" micro sleep:"+str( optimal_looptime - looptime))
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user