Apple Developer Connection
Advanced Search
Member Login Log In | Not a Member? Contact ADC

< 前ページ次ページ >

歪みエフェクトフィルタ (Distortion Effect Filters)

歪みエフェクトフィルタは、ジオメトリを変更して 3D エフェクトを生み出すことで、画像を形成し直します。歪みフィルタを使用すれば、画像の一部の移動、レンズエフェクトの適用、画像内の膨らみの形成、その他の芸術的なエフェクトを実現する操作の実行が可能です。図 4-42 に、このセクションで説明するフィルタの多くのソース画像として使用するチェッカーボード(市松模様)のパターンを示します。


図 4-42:チェッカーボードソース画像

図 4-42 チェッカーボードソース画像


このセクションの内容:

バンプ(凹凸)歪み
円形しぶき歪み
円形状ラップ
置き換え歪み
ガラス歪み
ガラス(ひし形)
穴歪み
つまみ歪み
円環体レンズ
らせん歪み
渦巻き歪み

バンプ(凹凸)歪み

CIBumpDistortion フィルタは、画像の指定したポイントに膨らみ(バンプ)を持たせます。バンプは、凹状または凸状にできます。下の 2 つの結果画像と図 4-42 に示したチェッカーボードパターンを比較してください。左の画像は凸状の膨らみを定義した結果で、右の画像は凹状の膨らみを定義した結果です。


図 4-43:CIBumpDistortion フィルタで処理した後の画像:凸状のバンプ(左)と凹状のバンプ(右)

図 4-43 CIBumpDistortion フィルタで処理した後の画像:凸状のバンプ(左)と凹状のバンプ(右)


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
フィルタ処理対象の中心からの距離を指定する値(NSNumber)。

inputScale
エフェクトの方向と量を指定するスカラー値(NSNumber)。デフォルト値は -0.5 です。範囲は -10.0 〜 10.0 です。値 0 は「エフェクトなし」を指定し、負の値は外向き(凸状)のバンプを生み出し、正の値は内向き(凹状)のバンプになります。

円形しぶき歪み

CICircularSplashDistortion フィルタは、円の中心から外側へ放射するようにピクセルを変形させます。下の画像と図 4-42 に示したチェッカーボードパターンを比較してください。


図 4-44:CICircularSplashDistortion フィルタで処理した後の画像

図 4-44 CICircularSplashDistortion フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
フィルタ処理対象の中心からの距離を指定する値(NSNumber)。デフォルト値は 150 です。範囲は 0 〜 1000 です。

円形状ラップ

CICircularWrap フィルタは画像で円を包み込みます。円のアルファ値は 0.0 です。画像の歪みは、円の中心からの距離とともに大きくなります。


図 4-45:CICircularWrap フィルタを使用したテキスト画像の処理

図 4-45 CICircularWrap フィルタを使用したテキスト画像の処理


所属: kCICategoryTransitionkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
変換元の CIImage オブジェクト。

inputAngle
包み込む対象となる円の量を指定する値(NSNumber)。負の値は右回りを指定し、正の値は左回りを指定します。デフォルト値は 0 です。値の範囲は -pi 〜 pi です。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
フィルタ処理対象の中心からの距離を指定する値(NSNumber)。デフォルト値は 150 です。範囲は 0 〜 1000 です。

置き換え歪み

CIDisplacementDistortion フィルタは、テクスチャのグレースケール値をソース画像に適用します。出力画像のテクスチャは、グレースケール値によって定義されます。図 4-46 の右側の画像は、図 4-46 の左側に示すテクスチャを使用して、図 4-42 のチェッカーボードパターンに置き換え歪みフィルタを適用した結果です。


図 4-46:テクスチャ(左)と CIDisplacementDistortion フィルタで処理した後の画像(右)

図 4-46 テクスチャ(左)と CIDisplacementDistortion フィルタで処理した後の画像(右)


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputDisplacementImage
置き換えマップとして使用する CIImage オブジェクト。置き換えマップが画像より小さい場合は、最初のスキャンラインと最後のスキャンラインが同じになるように、また、最初のスキャンカラムと最後のスキャンカラムが同じになるように、マップを用意する必要があります。これを達成するには、画像エディタアプリケーションを使用して、ファイルを右および下に向かって 1 ピクセル大きくします。続いて、最初のスキャンラインを最後のスキャンラインにコピーし、最初のスキャンカラムを最後のスキャンカラムにコピーします。最後に、ファイルを平坦化します。

inputScale
入力画像を、置き換えマップでどのくらい置き換えるかを指定する値(NSNumber)。デフォルト値は 50 です。範囲は 0 〜 200 です。

ガラス歪み

CIGlassDistortion フィルタは、ガラスのようなテクスチャを適用して画像を歪ませます。出力画像の突起はテクスチャマップを適用した結果です。図 4-47 に、ガラスのようなテクスチャを雲の画像に適用した結果を示します。


図 4-47:オリジナルの雲の画像(左)と CIGlassDistortion フィルタで処理した後の画像(右)

図 4-47 オリジナルの雲の画像(左)と CIGlassDistortion フィルタで処理した後の画像(右)


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputTexture
テクスチャを指定する CIImage オブジェクト。このテクスチャの用意の方法については、「置き換え歪み」を参照してください。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputScale
テクスチャに対して使用するスケーリングを指定する値(NSNumber)。範囲は 0.001 〜 500.0 です。デフォルト値は 200.0 です。値 2.0 はテクスチャをオリジナルのサイズで使用することを指定します。これよりも低い値は、テクスチャを拡大して使用することを指定します。

ガラス(ひし形)

CIGlassLozenge フィルタは、ひし形状のレンズを形成し、レンズを重ねたところの画像の部分を歪ませます。下の画像は、図 4-47 に示した雲のオリジナル画像にガラス(ひし形)フィルタを適用した結果です。


図 4-48:CIGlassLozenge フィルタで処理した後の画像

図 4-48 CIGlassLozenge フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputPoint0
ひし形の開始点を指定する CIVector オブジェクト。

inputPoint1
ひし形の終点を指定する CIVector オブジェクト。

inputRadius
ひし形の厚みを指定する値(NSNumber)。デフォルト値は 100 です。範囲は 0 〜 1000 です。

inputRefraction
ひし形の素材の屈折率を指定するスカラー値(NSNumber)。デフォルト値は 1.7 です。範囲は -5.0 〜 5.0 です。さまざまな素材の概算屈折率は次のとおりです。ガラス = 1.52、水 = 1.33、空気 = 1.0、ダイアモンド = 2.42、ルビーおよびサファイア = 1.76。ひし形状ガラスは空中にあるものと見なします。

穴歪み

CIHoleDistortion フィルタは、画像ピクセルを外側に押し出す円形の領域を作成し、円に最も近いピクセルに最大の歪みが生じます。下の画像と図 4-42 に示したチェッカーボードパターンを比較してください。


図 4-49:CIHoleDistortion フィルタで処理した後の画像

図 4-49 CIHoleDistortion フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
穴のサイズを指定する値(NSNumber)。デフォルト値は 150 です。0.1 以上の正の値を指定することができます。

つまみ歪み

CIPinchDistortion フィルタは、ソースピクセルを内側につまむ矩形の領域を作成し、矩形領域に最も近いピクセルに最大の歪みが生じます。下の画像と図 4-42 に示したチェッカーボードパターンを比較してください。


図 4-50:CIPinchDistortion フィルタで処理した後の画像

図 4-50 CIPinchDistortion フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
フィルタ処理対象の中心からの距離を指定する値(NSNumber)。

inputScale
エフェクトの方向と量を指定するスカラー値(NSNumber)。デフォルト値は -0.5 です。範囲は -10.0 〜 10.0 です。値 0 は「エフェクトなし」を指定し、負の値では外向きに膨らんだようになり、正の値では内向きにつまんだようになります。

円環体レンズ

CITorusLens フィルタは、円環体形状のレンズを形成し、レンズを重ねたところの画像の部分を歪ませます。下の画像と図 4-42 に示したオリジナル画像を比較してください。


図 4-51:CITorusLens フィルタで処理した後の画像

図 4-51 CITorusLens フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
円環体レンズの外周の半径を指定する値(NSNumber)。デフォルト値は 160 です。範囲は 0 〜 500 です。

inputWidth
円環体レンズの内周の半径から外周の半径までの相対距離を指定する値(NSNumber)。デフォルト値は 80 です。範囲は 0.0 〜 200 です。

inputRefraction
円環体レンズの素材の屈折率を指定するスカラー値(NSNumber)。デフォルト値は 1.7 です。範囲は -5.0 〜 5.0 です。さまざまな素材の概算屈折率は次のとおりです。ガラス = 1.52、水 = 1.33、空気 = 1.0、ダイアモンド = 2.42、ルビーおよびサファイア = 1.76。円環体レンズは空中にあるものと見なします。

らせん歪み

CITwirlDistortion フィルタは、点を中心にピクセルを回転して、らせんエフェクトを与えます。エフェクトの中心と半径に加えて、回転数も指定できます。下の画像と図 4-42 に示したオリジナル画像を比較してください。


図 4-52:CITwirlDistortion フィルタで処理した後の画像

図 4-52 CITwirlDistortion フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
エフェクトの半径を指定する値(NSNumber)。デフォルト値は 300 です。範囲は 0 〜 500 です。

inputAngle
らせんの角度を指定する値(NSNumber)。負の値は右回りを指定し、正の値は左回りを指定します。デフォルト値は pi です。値の範囲は -4 pi 〜 4 pi です。角度の絶対値を大きくすると、エフェクトの回転数も増えます。

渦巻き歪み

CIVortexDistortion フィルタは、点を中心にピクセルを回転して、渦巻きをシミュレートします。エフェクトの中心と半径に加えて、回転数も指定できます。下の画像と図 4-42 に示したチェッカーボードパターンを比較してください。


図 4-53:CIVortexDistortion フィルタで処理した後の画像

図 4-53 CIVortexDistortion フィルタで処理した後の画像


所属: kCICategoryDistortionEffectkCICategoryVideokCICategoryStillImagekCICategoryBuiltIn

パラメータ

inputImage
処理対象の CIImage オブジェクト。

inputCenter
フィルタ処理する領域の中心を x および y 座標で指定する CIVector オブジェクト。

inputRadius
エフェクトの半径を指定する値(NSNumber)。デフォルト値は 300 です。範囲は 0 〜 500 です。

inputAngle
渦巻きの角度を指定する値(NSNumber)。負の値は右回りを指定し、正の値は左回りを指定します。デフォルト値は pi です。値の範囲は -4 pi 〜 4 pi です。角度の絶対値を大きくすると、エフェクトの回転数も増えます。



< 前ページ次ページ >


Last updated: Tiger




Did this document help you?
Yes: Tell us what works for you.

It’s good, but: Report typos, inaccuracies, and so forth.

It wasn’t helpful: Tell us what would have helped.
Get information on Apple products.
Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Copyright © 2007 Apple Inc.
All rights reserved. | Terms of use | Privacy Notice