隣接する配列スライスおよび隣接しない配列スライス
- 更新日2026-07-27
- 4分で読める
LabVIEWはパフォーマンスを最適化するために、特定の配列関数に配線した配列から配列スライスを作成する場合があります。配列スライスは別の配列から作成された配列で、元の配列の一部の要素を含んでいます。LabVIEW は、作成された配列のワイヤ上にカーソルを移動したときに詳細ヘルプウィンドウに、配列スライスを (部分) 配列 と表現します。たとえば、 (1-D (部分) 配列) は関数が配列スライスを作成することを意味し、 (1-D配列) は、作成される配列が作成される全要素を含まれていることを意味します。
LabVIEWが配列スライスを作成する場合、データを隣接させて保管する隣接する配列スライスか、データを隣接させないで保管する隣接しない配列スライスが作成されます。配列スライスを「バイナリファイルから読み取る (事前割り当て)」関数に配線する場合、配列スライスが隣接する配列スライスと隣接しない配列スライスのどちらであるかを知る必要がある場合があります。この関数は、使用する配列によってサポートレベルが異なるためです。
LabVIEWが隣接する配列スライスと隣接しない配列スライスのどちらを作成するかを調べる
LabVIEWの配列関数は行優先順でデータにアクセスします。配列の要素を行優先順に配置すると、LabVIEWはその配列をメモリ内で隣接させて表します。LabVIEWは、以下の2D配列をメモリ内で0から15までの1D行として表します。
上の配列を「指標配列」関数に配線して、指標 (行) 入力を0に設定すると、LabVIEWは配列または隣接する配列スライスを返す場合があります。LabVIEWは隣接するメモリオフセット0、1、2、3で値を表すので、配列スライスは隣接する配列スライスになります。
上の配列を「指標配列」関数に配線して、指標 (列) 入力を0に設定すると、LabVIEWは配列または隣接しない配列スライスを返す場合があります。LabVIEWは隣接しないメモリオフセット0、4、8、12で値を表すので、配列スライスは隣接しない配列スライスになります。
以下の関数は配列スライスを返す場合があります。これらの関数の1つが配列スライスを返す場合、以下のガイドラインに従って、LabVIEWが隣接する配列スライスと隣接しない配列スライスのどちらを作成するかを調べてください。
- 部分配列―LabVIEWがこの関数からの出力をメモリ内で隣接して表す場合は、隣接する配列スライスが作成されます。
- 1D配列反転―この関数に配列を配線した場合、隣接しない配列スライスが作成されます。既に反転された配列スライスをこの関数に配線した場合、隣接する配列スライスが作成されます。
- 1D配列分割―この関数に配列を配線した場合、隣接する配列スライスが作成されます。この関数に隣接しない配列スライスを配線した場合、作成される配列スライスは、LabVIEWがその配列スライスをメモリ内でどのように表すかによって、隣接する配列スライスか隣接しない配列スライスになります。
- 2D配列転置―既に転置された配列が関数に配線されている場合以外は、隣接しない配列スライスが作成されます。
- クラスタから配列に変換―隣接する配列スライスを作成します。
- 指標配列―配列を列単位で指標付けするように指定した場合以外は、隣接しない配列スライスを作成します。
- デシメート1D配列―隣接しない配列スライスを作成します。