Array Creator vTool#
Array Creator는 Element 입력 핀을 통해 이미지나 영역 같은 다양한 유형의 요소를 허용하며, Array 출력 핀을 통해 결합된 요소를 출력합니다.
Array Creator vTool을 사용하려면 pylon Software Suite를 다운로드하십시오.

작동 원리#
Array Creator는 레시피에서 유연한 배열 처리를 위해 Array Element Iterator와 함께 사용하도록 설계되었지만, 다른 vTool과 함께 단독으로 사용할 수도 있습니다.
업데이트가 발생할 때마다, 즉 Element 입력 핀에 데이터가 도착할 때마다 Array Creator는 인덱스를 읽고 각 Element 입력 핀의 값을 해당 위치의 해당 출력 배열에 씁니다. 지정된 인덱스의 값이 여러 번 쓰여진 경우, 가장 최근에 수신된 값이 이전 값을 덮어씁니다. Element 입력 핀은 최대 100개까지 생성할 수 있습니다. 동일한 수의 Array 출력 핀이 생성됩니다.
Index 입력 핀은 각 새 요소가 해당 출력 배열에 기록되는 위치를 지정합니다. LastIteration 입력 핀은 시퀀스의 끝을 신호로 보내며, 이 시점에 수집된 배열이 출력됩니다.
Array 출력 핀의 데이터 유형은 Element 입력 핀에 입력된 데이터 유형과 동일합니다.
정보
Array Element Iterator를 사용하는 경우 Array Creator가 올바르게 작동하려면 LastIteration 및 Index 입력 핀을 연결해야 합니다. 이러한 핀이 없으면 vTool은 들어오는 요소를 쓸 위치나 수집된 배열을 내보낼 시점을 결정할 수 없습니다. 핀 중 하나가 연결되지 않은 상태로 유지되면 모든 업데이트에서 모든 출력 핀에 배열 수준 오류가 있는 배열이 생성되고 데이터가 수집되지 않습니다.
LastIteration 입력 핀에서 true가 수신되고 Index 입력 핀에서 유효한 입력이 수신되면 수신된 요소가 평소와 같이 저장된 다음 모든 배열이 출력됩니다. LastIteration 입력 핀에서 true가 수신되었지만 Index 입력이 수신되지 않은 경우, Element 입력 핀의 모든 값은 무시되고 지금까지 수집된 모든 값을 포함하여 배열이 그대로 출력됩니다. 출력 후 모든 내부 배열은 비어 있는 상태로 재설정됩니다.
Error Handling#
필수 연결 누락: LastIteration 또는 Index 입력 핀이 연결되어 있지 않으면 모든 업데이트가 모든 출력 핀에 배열 수준 오류(LastIteration과 Index 입력 핀을 모두 연결해야 합니다.)가 포함된 배열을 생성하고 데이터가 수집되지 않습니다.
오류가 포함된 LastIteration: LastIteration 입력 핀이 오류 상태인 값을 수신하면 Array Creator는 모든 출력 핀에 배열 수준 오류(LastIteration 입력에서 오류가 포함된 Element가 수신되었습니다.)가 포함된 배열을 출력하고 내부 상태를 재설정합니다.
마지막 반복에서의 잘못된 인덱스: LastIteration 핀에서 true가 수신되고 Index 값이 유효하지 않은 경우(음수이거나, 구성된 Maximum Number Of Elements 제한을 초과하거나, 오류 상태인 경우), 배열 수준 오류(인덱스가 범위를 벗어났습니다.)가 포함된 배열이 모든 출력 핀으로 출력됩니다. 이전에 수집된 모든 값은 폐기됩니다.
마지막이 아닌 반복에서의 잘못된 인덱스: LastIteration 핀에서 false(또는 값 없음)가 수신되고 Index 값이 유효하지 않은 경우(음수이거나, 구성된 Maximum Number Of Elements 제한을 초과하거나, 오류 상태인 경우), Array Creator는 오류를 기록하고 업데이트를 무시합니다. 이전에 수집된 값은 유지됩니다.
입력 핀에 오류가 있는 요소: 오류 상태의 들어오는 요소는 유효한 값과 다르게 처리되지 않으며 출력 배열로 투명하게 전달됩니다.
초기화되지 않은 위치: Index 입력으로 인해 출력 배열에 빈틈이 생기는 경우(예: 인덱스가 0에서 3으로 건너뜀), 중간 위치(예: 1, 2)는 오류 값(이 위치에서 요소를 수신하지 못했습니다.)으로 채워집니다.
vTool 설정하기#
Array Creator vTool을 구성하려면 Workbench에서 해당 vTool을 더블 클릭하십시오. 사용 가능한 모든 설정이 표시되는 대화 상자가 열립니다. 또는 Features - All 창에서 동일한 설정을 찾을 수 있습니다.
입력#
ElementN#
모든 vTool의 데이터를 수락합니다. 핀의 데이터 유형은 제공된 첫 번째 입력에 맞게 자동으로 조정됩니다. 모든 단순 데이터 유형(예: String, Float, Boolean, Integer, PointF2D 등)이 지원되지만 배열 유형은 지원되지 않습니다.
- 데이터 유형: Boolean, CircleF, EllipseF, Float, Image, Integer, LineF, PointF, RectangleF, Region, String, Transformation Data
LastIteration#
Array Element Iterator로부터 현재 요소가 배열을 완성하는 마지막 요소인지 여부를 나타내는 true 또는 false 값을 수락합니다. true를 수신하면 Array Creator는 수집된 배열을 출력하고 내부 버퍼를 재설정하여 다음 시퀀스를 준비합니다. 업데이트 중에 이 핀에서 값을 수신하지 않으면 vTool은 false(마지막 반복이 아님)로 가정합니다.
- 데이터 형식: Boolean
색인#
ElementN 입력 핀에서 수신된 입력과 관련된 인덱스 위치(정수)를 수락합니다. 그런 다음 요소가 출력 배열의 해당 인덱스 위치에 기록됩니다. 수신된 인덱스가 배열의 현재 크기를 초과하면 그에 따라 배열 크기가 조정됩니다. 사용되지 않는 위치는 오류 값으로 채워집니다.
- 데이터 형식: Integer
출력#
ArrayN#
Element 입력 핀당 하나의 배열을 반환합니다. 이 배열에는 반복 시퀀스 전반에 걸쳐 해당 입력 핀에서 수집된 모든 값이 포함됩니다. LastIteration 입력 핀에서 true를 수신하면 배열이 출력됩니다. 한 번도 기록되지 않은 위치의 요소는 오류 값으로 채워집니다.
- 데이터 형식: 해당 Element 핀을 통해 입력된 데이터 형식의 Array