たこなぐりの日々

2016-10-20

the横着シリーズ


w(string)って書くだけで良くなるのだ

#target 'aftereffects'

function w(cmt){
    $.writeln(cmt)
    }
w("なになにのどれどれ")

2016-09-21

AfterEffectsのエフェクトプリセットでハマった記録


わかるわけ無いじゃないかよ的な。
AfterEffectsでLayerにエフェクト・アニメーションプリセット(ffx)を適応させる際のアレ

これじゃうまくいかない、一番上に新規平面ができてそこにPresetが適応されるときがある。
もしくは対象じゃないLayerにffx適用されたり

var proj = app.project
var comp = proj.activeItem
var ffxpath ='C:/Program Files/Adobe/Adobe After Effects CS6/Support Files/Presets/takosan.ffx'
var ffxObj= new File(ffxpath)
comp.layers[3].applyPreset(ffxObj)

なんか選択されてるLayerに適用されるのでこうする
一度選択を全て解除した後、対象としたいLayerのみを選択してる状態にする

var proj = app.project
var comp = proj.activeItem
var ffxpath ='C:/Program Files/Adobe/Adobe After Effects CS6/Support Files/Presets/takosan.ffx'
var ffxObj= new File(ffxpath)

for(var i =1;i<=comp.numLayers;i++){
    comp.layers[i].selected=false
    }
comp.layers[3].selected=true
comp.layers[3].applyPreset(ffxObj)

これでPresetが適応される。

2016-03-03

AEのProxyを一括で外すやつ。


3行で書けるじゃねぇかよとかっこつけて言ったら4行になってしまった。
かっこなんてつけるもんじゃない。

for(var i=1;i<= app.project.items.length;i++){
    if(app.project.items[i].useProxy){
        app.project.items[i].useProxy=false
        }
    }


---

【追記】
っていうかctrl+Aで全選択してプロキシを外すを選択すれば外れるんですよねこれ(;´Д`)

2013-12-03

javascriptのsort()のカッコって独自関数を設定できるんですね

プロジェクト内の選択されたcompItemを配列に突っ込んで、尺の長さで配列内の順番を並び替える。

尺の長さ順で配列内のcompItemが欲しかったんですよ。
なのでカッコ内に無名関数をぶち込んでみました。
参考にさせていただいたサイト↓
sortメソッド - Arrayクラス - JavaScript入門

var Proj = app.project
SelList =[]
for (i in Proj.selection){
if(Proj.selection[i]instanceof CompItem){
    SelList .push((Proj.selection[i]))
    }
}

SelList.sort(function(a, b){
    var x = a.duration;
    var y = b.duration;
    if (x > y) return 1;
    if (x < y) return -1;
    return 0;
});

こう書くと尺が短い〜長いの順番で配列内が並び替えられます。(∩´∀`)∩ワーイ

2013-11-18

パス内のフォルダの中にある全ファイルをフォルダ内も全部探ってぶっこ抜く。


これから小ネタぐらいちょこちょこ書いていこう・・・・。

パスを指定したらそのパスの中にあるフォルダの中身も見て底の方まで検索するっていう、ファイルを地獄の果てまで追い続けるというか。
つまり再帰処理っすね。
pythonos.walkみたいなやつ。
指定されたパス内にある全ファイルを配列で返します。フォルダは返しません。

//そのパス以下にある全ファイルを配列で取得。
var Path =new Folder("C:/New_Project")//ここにパスを記述。
$.writeln(GetAllFile(Path))

function GetAllFile(Path){
    var List=[]
    Execute(Path)
    function Execute(Path){
    for (i in Path.getFiles()){
        if(Path.getFiles()[i]instanceof Folder){
            Execute(Path.getFiles()[i])
            }
        if(Path.getFiles()[i]instanceof File){
            List.push(Path.getFiles()[i])
            }
        }
    }
return (List)
}