Allocation.SetAutoPadding(Boolean) メソッド

定義

Allocation から配列にデータがコピーされるときに、Allocation のセルと配列の要素の間のマッピングを指定します。またはその逆も同様です。

[Android.Runtime.Register("setAutoPadding", "(Z)V", "GetSetAutoPadding_ZHandler", ApiSince=23)]
public virtual void SetAutoPadding(bool useAutoPadding);
[<Android.Runtime.Register("setAutoPadding", "(Z)V", "GetSetAutoPadding_ZHandler", ApiSince=23)>]
abstract member SetAutoPadding : bool -> unit
override this.SetAutoPadding : bool -> unit

パラメーター

useAutoPadding
Boolean

True: 自動Padding を有効にします。False: AutoPadding を無効にする

属性

注釈

Allocation から配列にデータがコピーされるときに、Allocation のセルと配列の要素の間のマッピングを指定します。またはその逆も同様です。

要素が長さ 3 のベクトル ( Element#U8_3Element#RGB_888など) である Allocation にのみ適用されます。 この機能を有効にすると、Allocation から配列にデータをコピーしたり、その逆の効率が低下したりする場合があります。

Vec3 要素セルは、同じ android.renderscript.Element.DataTypeを持つ Vec4 要素セルとして Allocation に格納され、4 番目のベクター コンポーネントはパディングとして扱われます。 この機能を有効にすると、データ コンポーネント (つまり、各セルの最初の 3 つのベクター コンポーネント) のみが配列と Allocation の間にマップされます。 無効にすると、次の例で説明するように、パディング コンポーネントの明示的なマッピングが必要になります。

たとえば、#copyFrom(int[])を使用して整数配列を 2 つのElement#I32_3セルの割り当てにコピーする場合は、次のようになります。

無効の場合: 配列には少なくとも 8 つの整数が必要です。最初の 4 つの整数が Allocation の最初のセルにコピーされ、次の 4 つの整数が 2 番目のセルにコピーされます。 4 番目と 8 番目の整数は、埋め込みコンポーネントとしてマップされます。

有効な場合: 配列には少なくとも 6 つの整数が必要で、最初の 3 つの整数がデータ コンポーネントとして最初のセルにコピーされ、次の 3 つの整数が 2 番目のセルにコピーされます。 埋め込みコンポーネントのマッピングはありません。

同様に、バイト配列を 2 つの Element#I32_3 セルの割り当てにコピーする場合は、 #copyFromUnchecked(int[])を使用します。

無効の場合: 配列には少なくとも 32 バイトが必要で、最初の 16 バイトは Allocation の最初のセルにコピーされ、次の 16 バイトは 2 番目のセルにコピーされます。 13 番目から 16 番目と 29 番目から 32 番目のバイトは、パディング コンポーネントとしてマップされます。

有効な場合: 配列には少なくとも 24 バイトが必要で、最初の 12 バイトは Allocation の最初のセルにコピーされ、次の 12 バイトは 2 番目のセルにコピーされます。 埋め込みコンポーネントのマッピングはありません。

配列から Allocation にデータをコピーするのと同様に、Allocation から配列にデータをコピーする場合、自動パッドが有効になっている場合、Vec3 Element セルの埋め込みコンポーネントは配列にコピーまたはマップされません。

既定値: 無効。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象