본문 바로가기

Hacked Brain/embeddedland.net

[VPL 강좌 10] List 액티버티 활용하기 (Functions)



[VPL 강좌 10] List 액티버티 활용하기 (Functions)

 

작성자: Microsoft Robotics Group 김영준 수석 (yjoonkim@microsoft.com)

 

이전 회차에서는 List 액티버티와 List Functions 액티버티를 활용하여 배열에서와 같이 여러 개의 값을 등록하고 읽어오는 과정을 설명하였습니다.

 

이전 회차에서는 List Functions의 여러 기능 중에서 List에 값을 등록하기 위하여 Append 기능만을 활용하였습니다.

 

이번 회차에서는 List Functions의 나머지 기능들을 활용하는 예제를 살펴 보도록 하겠습니다.

 

List Functions 액티버티를 다이어그램에 추가하고 액티버티 아래의 드롭다운 버튼을 클릭하면, 아래와 같이 7개의 기능 목록을 볼 수 있습니다.

 

 

사용자 삽입 이미지

그림 1

 

기본적으로는 Append가 표시되며 각각의 기능은 아래와 같습니다.

 

l  Append: List와 등록할 Item을 입력 받고 Item List의 맨 마지막에 등록한 후 등록된 List를 리턴합니다.

 

l  Concatenate: 두 개의 List를 입력 받고 두 개가 연결된 List를 리턴합니다.

 

l  Reverse: 등록되어 있는 Item들의 순서를 역순으로 정렬하고 결과를 List 형식으로 리턴합니다.

 

l  Sort: 등록되어 있는 Item들의 순서를 올림순으로 정렬하고 결과를 List 형식으로 리턴합니다.

 

l  RemoveItem: 등록되어 있는 Item 중에서 지정된 위치에 있는 Item을 삭제하고, 나머지 남아있는 List를 리턴합니다.

 

l  InsertItem: 이 기능에서는 3개의 입력값이 필요합니다. 첫번째는 작업할 List이고, 두번째는 등록할 Item, 세번째는 등록 위치입니다. 지정된 위치에 추가한 후 결과를 리턴합니다.

 

l  GetIndex: List에서 지정된 Item의 등록 위치를 리턴합니다. 가장 처음 위치는 0부터 시작합니다.

 

첫 번째로 Concatenate 기능을 살펴 보도록 하겠습니다. 아래와 같이 다이어그램을 구성한 후 결과를 확인해 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 2

 

결과로서 AA BB를 포함하는 List가 생성됩니다.

 

이번에는 Reverse 기능을 살펴보도록 하겠습니다. 아래와 같이 3개의 Item을 등록하는 다이어그램을 구성한 후 실행시켜 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 3

 

위의 다이어그램에서는 “BB”,”AA”, “CC”의 순서로 추가되었으나, Reverse 시키고 난 후에는 “CC”, “AA”, “BB”의 순서로 정렬되는 것을 확인할 수 있습니다.

 

다음으로는 Sort 기능을 확인해 보도록 하겠습니다. 아래와 같이 다이어그램을 구성한 후 결과를 확인해 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 4

 

위의 다이어그램에서는 “BB”,”AA”, “CC”의 순서로 추가되었으나, Sort 시키고 난 후에는 “AA”, “BB”, “CC”의 순서로 정렬되는 것을 확인할 수 있습니다.

 

다음으로는 RemoveItem 기능을 확인해 보도록 하겠습니다. 아래와 같이 다이어그램을 구성한 후 결과를 확인해 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 5

 

위의 다이어그램에서는 “BB”,”AA”, “CC”의 순서로 추가되었으나, 두번째 위치 (1)의 값을 삭제한 후에는 “BB”, “CC” 값 만이 표시되는 것을 확인할 수 있습니다.

 

다음으로는 InsertItem 기능을 확인해 보도록 하겠습니다. InsertItem에서는 다른 기능과 달리 세 개의 입력점이 필요합니다. 아래와 같이 다이어그램을 구성한 후 결과를 확인해 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 6

 

위의 다이어그램에서는 “BB”,”AA”, “CC”의 순서로 추가한 후에, 다시 두번째 위치에 “DD”를 추가하였으며, 결과는 “BB”, “DD”, “AA”, “CC”로 표시되는 것을 확인할 수 있습니다.

 

이제는 마지막으로 GetIndex기능을 살펴 보도록 하겠습니다. 아래와 같이 다이어그램을 구성한 후 실행시켜 보시기 바랍니다.

 

 

사용자 삽입 이미지

그림 7

 

위의 다이어그램에서는 “AA”의 위치를 찾아서 리턴하는 기능을 보여주며, 결과값이 1이 표시가 되는 것을 확인할 수 있습니다 (0은 첫번째 위치를 나타냅니다).

2007/11/03 - [임베디드/MSRS] - [VPL 강좌 09] List 액티버티 파악하기 (멀티항목 다루기)
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 08] List 액티버티 구현하기 (기본과정)
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 07] 반복문 구현하기
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 06] Switch 조건문 처리
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 05] IF 조건문 처리
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 04] 기본적인 변수 선언과 처리 – 두 개의 숫자 더하기
2007/11/03 - [임베디드/MSRS] - [VPL 강좌 03] 기본적인 변수 선언과 처리 – 입력 값 처리하기
2007/11/02 - [임베디드/MSRS] - [VPL 강좌 02] 기본적인 변수 선언과 처리 – 변수 값 처리하기
2007/11/02 - [임베디드/MSRS] - [VPL 강좌 01] 기본적인 변수 선언과 처리 – 변수선언 및 사용