Hiromuブログ(夏)

どこにでもいるただのホロレンジャーです

スクリプトでシェイプレイヤーを作る

すぐできるかなと思ったら、なんか大変だった・・・

 

なんとかこちらのサイトを見つけて、円と長方形は描くことができました。

 

上記サイトには円の描画スクリプトが書かれています。長方形の描き方のQ&Aがありますが、以下のスクリプトで描くことができました。

 

// 新規コンポジションを追加
// app.project.items.addComp(name, width, height, pixelAspect, duration, frameRate)
var mycomp = app.project.items.addComp("Create_NULL_and_Shape", 1280, 720, 1, 10, 30);

// コンポジションに空のシェイプレイヤーオブジェクトを追加 var myShapeLayer = mycomp.layers.addShape();

// シェイプを定義するための各プロパティの設定 var myRectSize = [50, 50]; var myFillColor = [255, 0, 0]; var myShapeLayerContents = myShapeLayer.property("ADBE Root Vectors Group"); var myShapeGroup = myShapeLayerContents.addProperty("ADBE Vector Group"); var myRect = myShapeGroup.property("ADBE Vectors Group").addProperty("ADBE Vector Shape - Rect"); myRect.property("ADBE Vector Rect Size").setValue(myRectSize); var myShapeFill = myShapeGroup.property("ADBE Vectors Group").addProperty("ADBE Vector Graphic - Fill"); myShapeFill.property("ADBE Vector Fill Color").setValue(myFillColor); this.mycomp.layer(1).name = "My_Shape_Rect";

 

よくわからないプロパティ値がたくさん出てくるし、シェイプレイヤーをスクリプトで制御するのは結構大変そう。