- UID
- 2804
- 积分
- 9985
- 帖子
- 9
- 主题
- 1
- 论坛币
- 375
- 威望
- 0
- EP值
- 44
- MP值
- 0
- 阅读权限
- 50
- 注册时间
- 2015-9-14
- 在线时间
- 28 小时
- 最后登录
- 2018-11-7
|
這寫成python的oo 或許比較容易看得清楚他在做啥
其中下面的代碼中
line_dur對應到aegisub的line.duration- import math
- class autotag:
- def __init__(self, intervalo1=0, intervalo2=0, dato1="",
- dato2="", pause=0, delay=0, line_dur=0):
-
- self.intervalo1 = intervalo1
- self.intervalo2 = intervalo2
- self.dato1 = dato1
- self.dato2 = dato2
- self.pause = pause
- self.delay = delay
-
- self.resultado = ""
- self.suerte = ""
- self.contador = 0
- self.line_dur = line_dur
-
- def autotags(self):
- count = math.ceil(self.line_dur / self.intervalo1)
-
- for i in range(count):
- if i % 2 == 0:
- self.suerte = self.dato1
- else:
- self.suerte = self.dato2
-
- self.resultado += "\\t({0}, {1}, {2})".format(i*self.intervalo1, (i+1)*self.intervalo1, self.suerte)
-
- return self.resultado
-
- def autotags1(self):
- count = math.ceil(self.line_dur / (self.intervalo1+self.pause))
-
- for i in range(count):
- if i % 2 == 0:
- self.suerte = self.dato1
- else:
- self.suerte = self.dato2
-
- self.resultado += "\\t({0}, {1}, {2})".format(i*(self.intervalo1+self.pause), (i+1)*self.intervalo1+i*self.pause, self.suerte)
-
- return self.resultado
-
- def autotags2(self):
- count = math.ceil(self.line_dur / self.intervalo1)
-
- for i in range(count):
- if i % 2 == 0:
- self.suerte = self.dato1
- else:
- self.suerte = self.dato2
-
- self.resultado += "\\t({0}, {1}, {2})".format(i*self.intervalo1+self.delay, (i+1)*self.intervalo1+self.delay, self.suerte)
-
- return self.resultado
-
- def autotags3(self):
- count = 2 * math.ceil(self.line_dur / (self.intervalo1 + self.intervalo2))
- d = math.ceil((self.intervalo2 - self.intervalo1) / count)
- t = [0]
-
- for i in range(count):
-
- t.append(t[i] + self.intervalo1 + i * d)
-
- if i % 2 == 0:
- self.suerte = self.dato1
- else:
- self.suerte = self.dato2
-
- self.resultado += "\\t({0}, {1}, {2})".format(t[i], t[i+1], self.suerte)
-
- return self.resultado
复制代码 |
|