TCAX 字幕特效制作工具官方论坛 | ASS | TCAS | Python | Aegisub | Lua

 找回密码
 新人加入
查看: 5683|回复: 12
打印 上一主题 下一主题

[已解决] 呜咕。。求问大大们一个问题。。 [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2013-3-23 21:13:05 |只看该作者 |倒序浏览
本帖最后由 爱雪音MiKu 于 2013-3-24 08:43 编辑

翅膀.jpg

呜咕。。。偶想如果:让这些翅膀都变成白色。。但期中一个颜色不同偶要如何写if判断呀。。想了几种可都是无法做出来。。判断字?。。可是这些翅膀是循环生成的判断字无效的吧?

啊呜。。偶想到一个办法。。但是是最笨的方法吧【就是都循环一个颜色,然后另外生成一个颜色不同的翅膀。。获取第X字的坐标。。然后覆盖】。。可是偶想如何通过if判断来做出。。。请大大们指导一下。。非常感谢

Rank: 5Rank: 5

沙发
发表于 2013-3-23 22:24:09 |只看该作者
本帖最后由 我们的夏天 于 2013-3-23 22:31 编辑

你是想在程序循环计算翅膀颜色时,使它只作用于某个固定字后吗?不知道这个理解对不对哦^ω^
如果是的话,可以把计算出来的彩色翅膀颜色存进变量,然后通过if判断,如果是正常的字则不调用该颜色改用白色,而碰到了特定的字则调用该颜色
  1. pic = 'm 0'#翅膀的绘图代码
  2. COL = #此处按原来的思路"循环生成"正常颜色,并将得到的颜色字符串赋值给COL
  3. ass_main(ASS_BUF, SubL(ts, te, 200, Pix_Style), pos(_x, _y) + color1('FFFFFF' if _j != 5 else COL), '{\\p1}'+ pic +'{\\p0}')
复制代码
1

查看全部评分

Rank: 4

板凳
发表于 2013-3-24 07:22:46 |只看该作者
我们的夏天 发表于 2013-3-23 22:24
你是想在程序循环计算翅膀颜色时,使它只作用于某个固定字后吗?不知道这个理解对不对哦^ω^
如果是的话, ...

呜咕。。V。。感谢大大。。明白了的说

Rank: 4

地板
发表于 2013-3-27 13:49:24 |只看该作者
本帖最后由 月城兔子 于 2013-3-27 13:57 编辑


其实我也想了一个比较坑的方法  
我不知道你蝴蝶是怎样出现的 如果单一循环的话

    pic = 'm 0'#翅膀的绘图代码
    TTB = _BT  #这个不解释
    Counter = int((_ET-_BT + 34)/35) 一句话内一直保持相隔35秒的循环(时间可以自己改)
    EFTTest =  ""          #表现效果

    if _j == 0 :
        for i in range(5) : 数值 1出现1次 数值2 出现2次 以此类推  如果使用Counter的话 一句时间内一直保持下面的循环
            ass_main(ASS_BUF, SubL(TTB + i*35 - 30, TTB + i*35), EFTTest, pic)  #每35秒循环一次 循环中间间隔5秒 这个数值可以自己改

简单来说就是…因为设定了TTB = _BT这个开始时间 也就是说…如果你想让一共8只蝴蝶…前5只是一个颜色的话 这里打(5)
然后第6只另外1个颜色
然后再把上面的复制一下

    TTB1 = _BT + “时间” #算出配合第6只出现的时间 “时间”里就是数字 你可以+100 200 300 一直到你想要的时间 或者如果你知道想到的时间 那么随便给个时间导出来后 直接用想要的时间和你导出的这个时间相减
    EFTTest =  ""          #表现效果

    if _j == 0 :
        for i in range(1) #只有第6只产生变化
            ass_main(ASS_BUF, SubL(TTB1 + i*35 - 30, TTB1+ i*35), EFTTest, pic)  

然后第7只到最后在复制一次…在T那里算出6-7只的时间....做出7以后的那几只

这个方法比较坑点就是 需要自己手动算时间…………如果每只蝴蝶都变化的话 并且相隔时间也不同的话 需要大量计算时间和复制粘贴

1

查看全部评分

Rank: 4

5#
发表于 2013-3-29 20:02:46 |只看该作者
月城兔子 发表于 2013-3-27 13:49
其实我也想了一个比较坑的方法  
我不知道你蝴蝶是怎样出现的 如果单一循环的话

呜咕。。偶有一个问题 Counter = int((_ET-_BT + 34)/35)  这句偶不是太明白。。为什么意思是相隔35秒循环呢?


呜咕。。前天键盘坏了。。今天换了一个。。所以现在才回复。。真是对不起

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

6#
发表于 2013-3-29 21:15:23 |只看该作者
爱雪音MiKu 发表于 2013-3-29 20:02
呜咕。。偶有一个问题 Counter = int((_ET-_BT + 34)/35)  这句偶不是太明白。。为什么意思是相隔35秒循 ...

时间/ (时间/帧) = 帧数

35是指 35ms/帧.

可以用 40, 或者  _FD

Rank: 4

7#
发表于 2013-3-29 21:39:52 |只看该作者
milkyjing 发表于 2013-3-29 21:15
时间/ (时间/帧) = 帧数

35是指 35ms/帧.

呜咕。。偶不知道偶理解的对不对。。这句是;在歌词+34的时间内。。以35秒为一帧进行循环

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

8#
发表于 2013-3-29 21:42:40 |只看该作者
爱雪音MiKu 发表于 2013-3-29 21:39
呜咕。。偶不知道偶理解的对不对。。这句是;在歌词+34的时间内。。以35秒为一帧进行循环 ...

具体在哪里开始循环不是由Counter决定的, Counter只是决定循环多少次... (实际用多少次都可以通过for等, 另外控制)

Rank: 4

9#
发表于 2013-3-29 21:48:46 |只看该作者
milkyjing 发表于 2013-3-29 21:42
具体在哪里开始循环不是由Counter决定的, Counter只是决定循环多少次... (实际用多少次都可以通过for等,  ...

呜咕。。V。。如果用for循环就是  for i in rangre(_BT,_ET+34,_FD)   类似这样的么0.0?

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

10#
发表于 2013-3-29 21:57:30 |只看该作者
爱雪音MiKu 发表于 2013-3-29 21:48
呜咕。。V。。如果用for循环就是  for i in rangre(_BT,_ET+34,_FD)   类似这样的么0.0? ...


可以这么用... 但你的描述很奇怪...

你刚才描述的主体是 Counter = int((_ET-_BT + 34)/35) , 而你却用一个for语句来替代. 风马牛不相及...

Counter = int((_ET-_BT + 34)/35)  只是一个表达式而已

for i in range(Counter), 才是循环. 所以你给出的for语句是替换这两句代码用的...

而我在上一个回复所说的for循环, 指的是利用了Counter的for循环, 你给出的for循环里哪里都没有Counter的踪影嘛...

如果你理解了我上一个帖的意思, 那么给出的回复, 至少应该是 for i in range(Counter - 1), 什么的吧.. Orz

Rank: 4

11#
发表于 2013-3-29 22:07:15 |只看该作者
milkyjing 发表于 2013-3-29 21:57
可以这么用... 但你的描述很奇怪...

你刚才描述的主体是 Counter = int((_ET-_BT + 34)/35) , 而你却用 ...

呜咕。。通过Counter表达式计算出来的次数来决定循环的次数?。。偶不知道这样理解对不对(T.T)

Administrator

TCAX Dev.

Rank: 7Rank: 7Rank: 7

12#
发表于 2013-3-29 22:10:05 |只看该作者
爱雪音MiKu 发表于 2013-3-29 22:07
呜咕。。通过Counter表达式计算出来的次数来决定循环的次数?。。偶不知道这样理解对不对(T.T) ...

这种情况, 可以通过实践来证明自己的理解是否正确... 印象更深... 只是提问, 然后获取一个答案, 也许很快就忘了, 这样没什么意义

Rank: 4

13#
发表于 2013-3-29 22:16:00 |只看该作者
milkyjing 发表于 2013-3-29 22:10
这种情况, 可以通过实践来证明自己的理解是否正确... 印象更深... 只是提问, 然后获取一个答案, 也许很快 ...

呜咕。。V。。。明白了。。对了。。如果偶要在_BT+_SK,_ET   时间内循环。。可以通过步长来决定循环之间的间隔吗
您需要登录后才可以回帖 登录 | 新人加入

GitHub|TCAX 主页

GMT+8, 2024-11-22 01:54

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部
RealH