81 |
files = [f for f in files if extensions.count(f.split('.')[-1]) > 0] |
files = [f for f in files if extensions.count(f.split('.')[-1]) > 0] |
82 |
return files |
return files |
83 |
|
|
84 |
def genBgFileFromSeed(w, vs, seed, jpeg=0): |
def genBgFileFromSeed(w, vs, seed, jpeg=0, scale=1): |
85 |
""" |
""" |
86 |
Generates a background texture into filename constructed |
Generates a background texture into filename constructed |
87 |
from the seed. Seed is some 64bit integer value. |
from the seed. Seed is some 64bit integer value. |
89 |
|
|
90 |
Returns the filename with absolute path of the generated file. |
Returns the filename with absolute path of the generated file. |
91 |
""" |
""" |
92 |
|
scalePostfix = '' |
93 |
|
if scale != 1: scalePostfix = '-%sx' % (scale) |
94 |
|
|
95 |
|
w.setLocation(0,0,384*scale,384*scale) |
96 |
size = vs.getSize() |
size = vs.getSize() |
97 |
|
|
98 |
# for Java to accept Python Long |
# for Java to accept Python Long |
102 |
|
|
103 |
pap = ThePaperMill().getPaper(lseed, passmask=passmask, vecs=[[.5,0],[0, .5]]) |
pap = ThePaperMill().getPaper(lseed, passmask=passmask, vecs=[[.5,0],[0, .5]]) |
104 |
pq = GLRen.createPaperQuad(pap, -0.5, -0.5, 0.5, 0.5, 0) |
pq = GLRen.createPaperQuad(pap, -0.5, -0.5, 0.5, 0.5, 0) |
105 |
cs = vs.coords.affine(0, 1, 0, 0, 768, 0, 0, 768) |
cs = vs.coords.affine(0, 1, 0, 0, 768*scale, 0, 0, 768*scale) |
106 |
vs.matcher.add(cs, "tex") |
vs.matcher.add(cs, "tex") |
107 |
vs.put(SolidBackdropVob(java.awt.Color(0,0,0))) |
vs.put(SolidBackdropVob(java.awt.Color(0,0,0))) |
108 |
vs.map.put(pq, cs, 0) |
vs.map.put(pq, cs, 0) |
109 |
w.renderStill(vs, 0) |
w.renderStill(vs, 0) |
110 |
|
|
111 |
if (jpeg): |
if (jpeg): |
112 |
print 'Saving background texture into %s-paper.gen.jpg.' % (str(seed)) |
print 'Saving background texture into %s%s-paper.gen.jpg.' % (str(seed), scalePostfix) |
113 |
saveanim.saveframe('bgfile.tmp', w, 0, 0, 384, 384) |
saveanim.saveframe('bgfile.tmp', w, 0, 0, 384*scale, 384*scale) |
114 |
os.system("convert -quality 95 %s %s" \ |
os.system("convert -quality 95 %s %s" \ |
115 |
% ('bgfile.tmp', basedir+str(seed)+'-paper.gen.jpg')) |
% ('bgfile.tmp', basedir+str(seed)+'%s-paper.gen.jpg' % (scalePostfix))) |
116 |
os.system("rm bgfile.tmp") |
os.system("rm bgfile.tmp") |
117 |
return os.path.abspath(basedir+str(seed)+'-paper.gen.jpg') |
w.setLocation(0,0,384,384) |
118 |
|
return os.path.abspath(basedir+str(seed)+'%s-paper.gen.jpg' % (scalePostfix)) |
119 |
else: |
else: |
120 |
print 'Saving background texture into %s-paper.gen.png.' % (str(seed)) |
print 'Saving background texture into %s%s-paper.gen.png.' % (str(seed), scalePostfix) |
121 |
saveanim.saveframe(basedir+str(seed)+'-paper.gen.png', |
saveanim.saveframe(basedir+str(seed)+'%s-paper.gen.png' % (scalePostfix), |
122 |
w, 0, 0, 384, 384) |
w, 0, 0, 384*scale, 384*scale) |
123 |
return os.path.abspath(basedir+str(seed)+'-paper.gen.png') |
w.setLocation(0,0,384,384) |
124 |
|
return os.path.abspath(basedir+str(seed)+'%s-paper.gen.png' % (scalePostfix)) |
125 |
|
|
126 |
class Main(Runnable): |
class Main(Runnable): |
127 |
def run(self): |
def run(self): |
129 |
from vob.paper.papermill import ThePaperMill |
from vob.paper.papermill import ThePaperMill |
130 |
|
|
131 |
w = gfxapi.createWindow() |
w = gfxapi.createWindow() |
|
w.setLocation(0,0,384,384) |
|
132 |
vs = w.createVobScene() |
vs = w.createVobScene() |
133 |
print "Working directory:", basedir |
print "Working directory:", basedir |
134 |
|
|
147 |
if len(requests) > 0: |
if len(requests) > 0: |
148 |
sleep = 0 |
sleep = 0 |
149 |
for seed in requests: |
for seed in requests: |
150 |
filepath = genBgFileFromSeed(w, |
if seed.find('-') != -1: |
151 |
vs, |
id = seed.split('.')[0] |
152 |
long(seed.split('.')[0]), |
scale = id.split('-')[1].split('x')[0] |
153 |
jpeg) |
filepath = genBgFileFromSeed(w, |
154 |
|
vs, |
155 |
|
long(id.split('-')[0]), |
156 |
|
jpeg, int(scale)) |
157 |
|
else: |
158 |
|
filepath = genBgFileFromSeed(w, |
159 |
|
vs, |
160 |
|
long(seed.split('.')[0]), |
161 |
|
jpeg) |
162 |
if notify: |
if notify: |
163 |
os.system(notify + ' ' + filepath \ |
os.system(notify + ' ' + filepath \ |
164 |
+ ' ' + seed.split('.')[0]) |
+ ' ' + seed.split('.')[0]) |
165 |
os.system('rm '+basedir+seed) |
os.system('rm '+basedir+seed) |
|
|
|
166 |
else: |
else: |
167 |
if not sleep: |
if not sleep: |
168 |
print time.strftime('%y/%m/%d %H:%M:%S'), \ |
print time.strftime('%y/%m/%d %H:%M:%S'), \ |