KikakuUtils

概要

AEスクリプト用のライブラリ。
type: Startup (Startupフォルダに配置してお使いください。)
version: 0.2.0 (2014/12/06)

API

プロパティ関連

KIKAKU.Utils.isProperty(property)(v0.2.0-)

プロパティがPropertyオブジェクトかどうかを調べます。
@param {PropertyBase} property - 調べたいプロパティ。

KIKAKU.Utils.isPropertyGroup(property)(v0.2.0-)

プロパティがPropertyGroupオブジェクトかどうかを調べます。
@param {PropertyBase} property - 調べたいプロパティ。

KIKAKU.Utils.getSelectedProperty(with_layer)(v0.2.0-)

初めに選択されたレイヤーではじめに選択されたプロパティを返します。なければnullを返します。
@param {bool} [with_layer=false] - レイヤーの情報も返すかどうか。
@return {(Property|object|null)} - 存在しなければnull、存在すればwith_layerがfalseならPropertyを、trueならば{layer: Layer, property: Property}のオブジェクトを返す。

KIKAKU.Utils.getSelectedProperties(with_layer, options)(v0.2.0-)

プロパティがPropertyGroupオブジェクトかどうかを調べます。
@param {bool} [with_layer=false] - レイヤーの情報も返すかどうか。
@param {object} options - {
  multiple: bool(default: true) - falseなら最初に選択したレイヤーのみ、trueならば選択レイヤー全てを対象とする。
  propertyGroup: bool(default: false) - trueならばプロパティグループも含む。
  filter: function - プロパティを引数にとりブール値を返す関数を与える。
}
@return {array} - with_layerがfalseならPropertyBaseの配列、trueならば{layer: Layer, properties: array}の配列を返す。

KIKAKU.Utils.setValue(property, time, value, keyframe)(v0.2.0-)

プロパティの値を設定します。
@param {Property} property - 対象のプロパティ。 @param {number} time - 時間。
@param value - プロパティの種類に応じた値。
@param {bool} [keyframe=false] - キーフレームを必ず打つか。

KIKAKU.Utils.getPathFromString(path)

文字列をパスに変換。(参照: Path)
@param {string} path

KIKAKU.Utils.getPathOfProperty(property, type)

プロパティオブジェクトのパスを取得。
@param {PropertyBase} property
@param {string} [type=name] - name: 名前で取得する。, matchname: マッチネームで取得する。
@return {array}

KIKAKU.Utils.getPathOfSelectedProperty(type)

選択中のプロパティのパスを取得。
@param {string} [type=name] - name: 名前で取得する。, matchname: マッチネームで取得する。
@return {array}

KIKAKU.Utils.getPropertyFromPath(layer, path)

レイヤーのプロパティをパスを用いて取得。(参照: Path)
@param {Layer} layer
@param {(string|array)} path - パスを文字列か、配列で与える。
@return {PropertyBase}

コンポジション関連

KIKAKU.Utils.getActiveComp()

アクティブなコンポジションを取得。なければnullを返す。
@return {(CompItem|null)}

KIKAKU.Utils.getComps(filters)

フィルタを設定し、フィルタを通ったコンポジションのみを配列で取得する。なければnullを返す。(参照: Filters For Comp)
@param {array} filters - フィルタ群を配列で指定する。例: ['selected', ['comment', 'important']] (選択されていて、かつコメントにimportantを含む)
@return {(array|null)}

KIKAKU.Utils.selectComps(filters)

フィルタを設定し、フィルタを通ったコンポジションのみを選択する。(参照: Filters For Comp)
@param {array} filters - フィルタ群を配列で指定する。
@return {KIKAKU.Utils}

KIKAKU.Utils.setAttributesForComps(comps, attributes)

コンポジション群に対して、属性の付加等を行う。(参照: Attributes For Comp)
@param {array} comps - CompItemの配列。
@param {array} attributes - 付加する属性等の配列
@return {KIKAKU.Utils}

KIKAKU.Utils.setAttributesForSelectedComps(attributes)

選択されているコンポジションに対して、属性の付加等を行う。(参照: Attributes For Comp)
@param {array} attributes - 付加する属性等の配列
@return {KIKAKU.Utils}

KIKAKU.Utils.getCompByName(name) (v0.1.0-)

nameを名前に含むコンポジションを取得する。
@param {string} name - 取得したいコンポジションの名前。
@return {(null|CompItem)} - 存在すればCompItem、なければnull。

KIKAKU.Utils.getAVItemByName(name) (v0.1.0-)

nameを名前に含むアイテム(コンポジションを含む、フォルダは除く)を取得する。
@param {string} name - 取得したいアイテムの名前。
@return {(null|AVItem)} - 存在すればAVItem、なければnull。

レイヤー関連

KIKAKU.Utils.isAVLayer(layer, strict)(v0.2.0-)

レイヤーがAVレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。
@param {bool} strict(default: false) - 映像ソースがないレイヤーを除くかどうか。trueだと除く。

KIKAKU.Utils.isTextLayer(layer)(v0.2.0-)

レイヤーがテキストレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。

KIKAKU.Utils.isShapeLayer(layer)(v0.2.0-)

レイヤーがシェイプレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。

KIKAKU.Utils.isCameraLayer(layer)(v0.2.0-)

レイヤーがカメラレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。

KIKAKU.Utils.isLightLayer(layer)(v0.2.0-)

レイヤーがライトレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。

KIKAKU.Utils.isNullLayer(layer)(v0.2.0-)

レイヤーがヌルレイヤーかどうかを調べます。
@param {Layer} layer - 調べたいレイヤー。

KIKAKU.Utils.getSelectedLayer()

選択しているレイヤー群のうちはじめのレイヤーを取得する。なければnullを返す。
@return {(Layer|null)}

KIKAKU.Utils.getSelectedLayers()

選択しているレイヤー群の配列を取得する。
@return {array}

KIKAKU.Utils.getLayers(filters)

フィルタを設定し、フィルタを通ったレイヤーのみを配列で取得する。なければnullを返す。(参照: Filters For Layer)
@param {array} filters - フィルタ群を配列で指定する。例: ['selected', ['comment', 'important']] (選択されていて、かつコメントにimportantを含む)
@return {(array|null)}

KIKAKU.Utils.selectLayers(filters)

フィルタを設定し、フィルタを通ったレイヤーのみを選択する。(参照: Filters For Layer)
@param {array} filters - フィルタ群を配列で指定する。
@return {KIKAKU.Utils}

KIKAKU.Utils.setAttributesForLayers(layers, attributes)

レイヤー群に対して、属性の付加等を行う。(参照: Attributes For Layer)
@param {array} layers - Layerの配列。
@param {array} attributes - 付加する属性等の配列
@return {KIKAKU.Utils}

KIKAKU.Utils.setAttributesForSelectedLayers(attributes)

選択されているレイヤーに対して、属性の付加等を行う。(参照: Attributes For Layer)
@param {array} attributes - 付加する属性等の配列
@return {KIKAKU.Utils}

KIKAKU.Utils.getRepresentativeValueOfLayers(type, layers, path)

レイヤー群のあるパラメータに関して代表値を取得する。(参照: Path, Representative Value)
@param {string} type - 代表値の指定。
@param {array} layers - Layerの配列。
@param {(string|array)} path - パスを文字列か、配列で与える。
@return {(number|array)} - プロパティの種類に準じた値。

KIKAKU.Utils.getRepresentativeValueOfSelectedLayers(type, path)

選択されているレイヤーのあるパラメータに関して代表値を取得する。(参照: Path, Representative Value)
@param {string} type - 代表値の指定。
@param {(string|array)} path - パスを文字列か、配列で与える。
@return {(number|array)} - プロパティの種類に準じた値。

色空間関連

KIKAKU.Utils.rgbToHsl(rgba)(v0.2.0-)

RGB空間からHSL空間へ変換する。 @param {array} rgba - rgbaの配列。
@return {array} - hslaの配列。各チャンネルとも0-1。

KIKAKU.Utils.hslToRgb(hsla)(v0.2.0-)

HSL空間からRGB空間へ変換する。 @param {array} hsla - hslaの配列。
@return {array} - rgbaの配列。各チャンネルとも0-1。

KIKAKU.Utils.rgbToYuv(rgba)(v0.2.0-)

RGB空間からYUV空間へ変換する。 @param {array} rgba - rgbaの配列。
@return {array} - yuvaの配列。各チャンネルとも0-1。

KIKAKU.Utils.yuvToRgb(hsla)(v0.2.0-)

YUV空間からRGB空間へ変換する。 @param {array} yuva - yuvaの配列。
@return {array} - rgbaの配列。各チャンネルとも0-1。

Appendix

Filters For Comp

コンポジションに対するフィルタ群。(参照: string(op))
typeの頭に!を付けると反転できる。
例: frameblending(フレームブレンドがオンのを通す。) -> !frameblending(フレームブレンドがオフのを通す。)
valueをとるフィルタは配列で指定する。
例: ['width', '<=1920'] (幅が1920以下)

typevalue説明
namestringコンポジションの名前にvalueを含む。
nameindexstring(op)コンポジションの名前に含まれた自然数の比較。"Comp 32"の場合、32。数字が含まれてない場合は1。
commentstringコメントにvalueを含む。
selected-選択されている。
widthstring(op)幅の比較。
heightstring(op)高さの比較。
pixelaspectstring(op)ピクセル比の比較。
frameratestring(op)フレームレートの比較。
framedurationstring(op)フレームデュレーションの比較。
durationstring(op)デュレーションの比較。
useproxy-プロキシを使用している。
timestring(op)現在の時間の比較。
dropframe-ドロップフレームがオンか。
workareastartstring(op)ワークエリアの開始時間の比較。
workareadurationstring(op)ワークエリアのデュレーションの比較。
numlayersstring(op)レイヤー数の比較。
hideshylayers-シャイレイヤーを隠している。
motionblur-モーションブラーがオン。
draft3d-ドラフト3Dがオン。
frameblending-フレームブレンドがオン。
preservenestedframerate-ネスト化されたコンポジションのフレームレートを保持している。
preservenestedresolution-ネスト化されたコンポジションの解像度を保持している。
shutteranglestring(op)シャッターアングルの比較。
shutterphasestring(op)シャッターフェーズの比較。
motionblursamplesperframestring(op)モーションブラーのサンプル数の比較。
motionbluradaptivesamplelimitstring(op)モーションブラーの最大サンプル数の比較。

Attributes For Comp

コンポジションに対する属性付加等のコマンド群。
typeの頭に!を付けるとvalueをとらないものは反転することが出来る。
例: motionblur(モーションブラーをオンにする) -> !motionblur(モーションブラーをオフにする)

typevalue1value2説明
remove--リムーブする。
namestringstringコンポジションの名前の前にvalue1を後ろにvalue2を加える。
commentstring-コメントをvalue1にする。
widthnumber-幅をvalue1にする。
heightnumber-高さをvalue1にする。
pixelaspectnumber-ピクセル比をvalue1にする。
frameratenumber-フレームレートをvalue1にする。
framedurationnumber-フレームデュレーションをvalue1にする。
durationnumber-デュレーションをvalue1にする。
useproxy--プロキシを使用する。
timenumber-現在時間をvalue1にする。
dropframe--ドロップフレームをオンにする。
workareastartnumber-ワークエリアの開始時間をvalue1にする。
workareadurationnumber-ワークエリアの長さをvalue1にする。
hideshylayers--シャイレイヤーを隠す。
motionblur--モーションブラーをオンにする。
draft3d--ドラフト3Dをオンにする。
frameblending--フレームブレンドをオンにする。
preservenestedframerate--ネスト化されたコンポジションのフレームレートを保持する。
preservenestedresolution--ネスト化されたコンポジションの解像度を保持する。
shutteranglenumber-シャッターアングルをvalue1にする。
shutterphasenumber-シャッターフェイズをvalue1にする。
motionblursamplesperframenumber-モーションブラーのサンプル数をvalue1にする。
motionbluradaptivesamplelimitnumber-モーションブラーの最大サンプル数をvalue1にする。

Filters For Layer

レイヤーに対するフィルタ群。(参照: string(op), Path)
typeの頭に!を付けると反転できる。
例: null(ヌルレイヤーのみを通す) -> !null(ヌルレイヤー以外を通す)
valueをとるフィルタは配列で指定する。
例: ['x', '<=400'] (位置のxが400以下)

typevalue1value2value3説明
av---AVレイヤー。
text---テキストレイヤー。
shape---シェイプレイヤー。
camera---カメラレイヤー。
light---ライトレイヤー。
indexstring(op)--インデックスの比較。
namestring--レイヤーの名前にvalue1を含む。
nameindexstring(op)--レイヤーの名前に含まれた自然数の比較。"Shape Layer 32"の場合、32。数字が含まれてない場合は1。
hasparent---親を持つ。
parentstring--親の名前にvalue1を含む。
starttimestring(op)--開始時間の比較。
stretchstring(op)--タイムストレッチの比較。
inpointstring(op)--インポイントの比較。
outpointstring(op)--アウトポイントの比較。
durationstring(op)--デュレーションの比較。
enabled---有効。
solo---ソロ。
shy---シャイ。
locked---ロック。
hasvideo---ビデオスイッチがある。
active---アクティブである。
null---ヌルレイヤー。
commentstring--コメントにvalue1を含む。
selected---選択されている。
isnameset---名前が明示的に設定されている。
markerstringstringnumbervalue1: "comment" or "url"
value3番目(default: 1)のマーカーのvalue1にvalue2を含む。
solid---平面レイヤー。
file---ソースがファイルから読み込まれている。
still---フッテージが静止画。
comp---ソースがコンポジション。
sourcestring--ソースの名前にvalue1を含む。
audio---オーディオが有効。
audiolayer---オーディオコンポーネントだけのレイヤー。
motionblur---モーションブラーがオン。
effects---エフェクトが有効。
effectstring--value1の名前を含む、またはvalue1がマッチネームであるエフェクトが掛かっている。
adjustment---調整レイヤー。
guide---ガイドレイヤー。
3d---3Dレイヤーである。
2d---2Dレイヤーである。
environment---環境レイヤーである。
collapse---コラップスがオン。
frameblending---フレームブレンドがオン。
timeremap---タイムリマップがオン。
hasaudio---オーディオコンポーネントを含む。
isaudioactive---オーディオがアクティブ。
istrackmatte---トラックマットである。
hastrackmatte---トラックマットを持っている。
qualitystring--value1: "best", "draft" or "wireframe"
画質設定がvalue1である。
autoorientstring--value1: "alongpath", "towardscamera", "characterstowardcamera" or "off"
自動方向がvalue1である。
samplingstring--value1: "bicubic" or "bilinear"
サンプリングがvalue1である。
randomnumber--value1の確率で選択される。
blendstring--value1: Blend参照。
合成モードがvalue1である。
patharray(path) /
string(path)
--value1のプロパティを持つ。
keyarray(path) /
string(path)
--value1のプロパティにキーフレームが打たれている。
exarray(path) /
string(path)
--value1のプロパティにエクスプレッションが設定してある。
widthstring(op)--幅の比較。
heightstring(op)--高さの比較。
xanchorstring(op)--アンカーポイントのxの比較。
yanchorstring(op)--アンカーポイントのyの比較。
zanchorstring(op)--アンカーポイントのzの比較。
xstring(op)--位置のxの比較。
ystring(op)--位置のyの比較。
zstring(op)--位置のzの比較。
xscalestring(op)--スケールのxの比較。
yscalestring(op)--スケールのyの比較。
zscalestring(op)--スケールのzの比較。
xorientationstring(op)--方向のxの比較。
yorientationstring(op)--方向のyの比較。
zorientationstring(op)--方向のzの比較。
none---全て通さない。
all---すべて通す。
array(path) /
string(path)
string(op)--パスによって指定されたプロパティ(oneDのみ対象)の値の比較。

Attributes For Layer

レイヤーに対する属性付加等のコマンド群。(参照: string(op), Path)
typeの頭に!を付けるとvalue1, value2の値をとらないものは反転することが出来る。
例: solo(ソロにする) -> !solo(ソロをオフにする)

typevalue1value2説明
remove--リムーブする。
namestringstringレイヤーの名前の前にvalue1を後ろにvalue2を加える。
enabled--有効にする。
solo--ソロにする。
shy--シャイにする。
locked--ロックする。
commentstring-コメントをvalue1にする。
starttimenumber-開始時間をvalue1にする。
stretchnumber-タイムストレッチをvalue1にする。
inpointnumber-インポイントをvalue1にする。
outpointnumber-アウトポイントをvalue1にする。
widthnumber-幅をvalue1にする。
heightnumber-高さをvalue1にする。
audio--オーディオを有効にする。
motionblur--モーションブラーをオンにする。
effects--エフェクトを有効にする。
adjustment--調整レイヤーにする。
guide--ガイドレイヤーにする。
2d--2Dにする。
3d--3Dにする。
environment--環境レイヤーにする。
collapse--コラップスをオンにする。
timeremap--タイムリマップをオンにする。
parentnumber /
null
-親をインデックスがvalue1のレイヤーにする(number)。
親をNoneにする(null)。
blendstring-value1: Blend参照。
合成モードをvalue1にする。
qualitystring-value1: "best", "draft" or "wireframe"
画質設定をvalue1にする。
autoorientstring-value1: "alongpath", "towardscamera", "characterstowardcamera" or "off"
自動方向をvalue1にする。
samplingstring-value1: "bicubic" or "bilinear"
サンプリングをvalue1にする。
xanchornumber-アンカーポイントのxをvalue1にする。
yanchornumber-アンカーポイントのyをvalue1にする。
zanchornumber-アンカーポイントのzをvalue1にする。
xnumber-位置のxをvalue1にする。
ynumber-位置のyをvalue1にする。
znumber-位置のzをvalue1にする。
xscalenumber-スケールのxをvalue1にする。
yscalenumber-スケールのyをvalue1にする。
zscalenumber-スケールのzをvalue1にする。
xorientationnumber-方向のxをvalue1にする。
yorientationnumber-方向のyをvalue1にする。
zorientationnumber-方向のzをvalue1にする。
effectstring-名前もしくはマッチネームがvalue1のエフェクトを加える。
dupnumber-value1回複製する。
exarray(path) /
string(path)
stringvalue1のプロパティのエクスプレッションをvalue2にする。
keyarray(path) /
string(path)
number /
array
value1のプロパティの値をvalue2にしてかつキーフレームを打つ。
array(path) /
string(path)
number /
array
-typeによって指定されたプロパティの値をvalue1にする。

プロパティに値を設定する際は、単純に数値で指定するだけでなく、+=30, -=100, *=2, /=2, %=640といった指定もできる。

string(op)

数値比較用の書式を説明する。便宜上、比較対象のプロパティの値をvalue、<=, >=, <, >, ==, != の比較演算子をcmpとし、また、+, -, *, /, % の算術演算子をarithとする。
cmp 数: 基本的な形、単純にvalueと数を比較する。 例) ==3, >10
arith 数1 cmp 数2: (value arith 数1)の結果と数2を比較する。例) -1==3, %3<=1
arith1 数1 arith2 数2 cmp 数3: ((value arith1 数1) arith2 数2)の結果と数3を比較する。 例) -1%3==0, -240*2<400

Path

プロパティを指定する際はパスを用いることになるが(例: 位置の場合、["Transform", "Position"])、getPathFromStringを用いることによっていくつかのプロパティは文字列で取得することが出来る。

Path説明
タイムリマップ-
timeremapタイムリマップ
トランスフォーム-
anchor /
anchorpoint
アンカーポイント
position位置
xpositionX 位置(次元分割時)
ypositionY 位置(次元分割時)
zpositionZ 位置(次元分割時)
scaleスケール
orientation方向
rotation回転
xrotationX 回転
yrotationY 回転
zrotationZ 回転
opacity不透明度
appearsinreflections反射内に表示
マテリアル-
materialcastsshadowsシャドウを落とす
materiallighttransmissionライト透過
materialacceptsshadowsシャドウを受ける
materialacceptslightsライトを受ける
materialappearsinreflections反射内に表示
materialambientアンビエント
materialdiffuse拡散
materialspecularintensity鏡面強度
materialspecularshininess鏡面光沢
materialmetal金属
materialreflectionintensity反射強度
materialreflectionsharpness反射シャープネス
materialreflectionrolloff反射ロールオフ
materialtransparency透明度
materialtransparencyrolloff透明度ロールオフ
materialindexofrefraction屈折率
形状-
geometrycurvature曲率
geometrysegments線分数
geometrybevelstyleベベルのスタイル
geometrybeveldepthベベルの深さ
geometryholebeveldepth内枠のベベルの深さ
geometryextrusiondepth押し出す深さ
カメラ-
zoomズーム
depthoffield被写界深度
focusdistanceフォーカス距離
aperture絞り
blurlevelブラーレベル
irisshapeアイリスの形状
irisrotationアイリスの回転
irisaspectratioアイリスの真円率
irisdiffractionfringeアイリスの回折フリンジ
highlightgainハイライトのゲイン
highlightthresholdハイライトのしきい値
highlightsaturationハイライトの彩度
ライト-
lightintensity強度
lightcolorカラー
lightconeangle円錐頂角
lightconefeather円錐ぼかし
lightfalloffフォールオフ
lightfalloffradius半径
lightfalloffdistanceフォールオフの距離
lightcastsshadowsシャドウを落とす
lightshadowdarknessシャドウの暗さ
lightshadowdiffusionシャドウの拡散

Blend

Blend説明
add加算
alphaaddアルファ追加
classiccolorburn焼き込みカラー(クラシック)
classiccolordodge覆い焼きカラー(クラシック)
classicdifference差(クラシック)
colorカラー
colorburn焼き込みカラー
colordodge覆い焼きカラー
dancingdissolveダイナミックディザ合成
darken比較(暗)
darkencolorカラー比較(暗)
difference
dissolveディザ合成
exclusion除外
hardlightハードライト
hardmixハードミックス
hue色相
lighten比較(明)
lightercolorカラー比較(明)
linearburn焼き込みリニア
lineardodge覆い焼きリニア
linearlightリニアライト
luminescentpremulルミナンスキープリマルチプライ
luminosity輝度
multiply乗算
normal通常
overlayオーバーレイ
pinlightピンライト
saturation彩度
screenスクリーン
silhouetealpha
silhouettealpha
シルエットアルファ
silhouettelumaシルエットルミナンスキー
softlightソフトライト
stencilalphaステンシルアルファ
stencillumaステンシルルミナンス
vividlightビビッドライト

Representative Value

代表値。

Type説明
minimum最小値。
maximum最大値。
center真ん中の値。(max + min) / 2
median中央値。
mean平均値。

Download

KikakuUtils-0.2.0.zip

v0.2.0 - 2015/01/04 いくつかの関数の追加。
v0.1.0 - 2014/11/01 バグフィクス。いくつかの関数の追加。
v0.0.0 - 2014/08/17