랩뷰 초보자 시절 가장 헷갈렸던 것이 있습니다. 기초를 모른 채로 도움말을 읽어 가며 이런 저런 함수를 사용하는데, 함수에서 배열을 입력 받을 때 '차원'이라고도 했다가, 'D(Dimension)'이라고도 했다가. 3차원 함수를 입력하라길래 배열 차수를 두번 늘려서 입력했는데 틀렸다고 나오고... 도대체 문제가 뭐였을까요?
이유는, 랩뷰에서는 '차원'과 'Dimension'을 조금 엄격하게 다른 의미로 구분하기 때문입니다. 하나씩 알아보도록 하죠!
[차원]
랩뷰에서 배열의 '차원'이라고 하면, 단순히 원소의 갯수를 생각하셔도 좋습니다. 조금 더 수학적으로 이야기하면 좌표계의 축의 갯수라고 할 수 있습니다. (1차원) 우리가 일직선에서 원점을 설정하고, 1, 2, 3, 4, ... 이런 식으로 원점으로부터의 거리에 따라 점을 표시한다면 이는 X축 하나만 가지는 좌표계를 생각할 수 있습니다. 배열에서 원소 하나만으로 나타낼 수 있는 점이지요. 이게 랩뷰에서 1차원 입니다. (2차원) 이제 평면을 생각해 봅시다. X 축과 Y 축이 있고, 평면상의 한 점을 나타내려면 (x, y)의 두 개 원소가 필요합니다. 이게 랩뷰에서 2차원입니다. (3차원) 3차원은 X, Y, Z 축을 가지는 3차원 공간을 생각해볼 수 있습니다. 이와 같이, 랩뷰의 어떤 함수에서 'n차원 배열'을 입력으로 받는다고 하면 원소를 n개 가지는 배열을 넣어 달라는 뜻으로 해석하면 됩니다.
[1D, 2D]
그렇다면 랩뷰에서 Dimension은 어떤 걸까요? 단순합니다. 1D는 행 또는 열만 있는 한줄짜리 배열이고, 2D는 행과 열을 모두 가지는 배열입니다. 3D는 잘 사용하지 않지만 페이지(page)라는 명칭으로 부릅니다.
배열 컨트롤이나 상수에서 우클릭을 하면 보이는 '차원 추가' 또는 '차원 제거'를 클릭해 Dimension을 늘리거나 줄일 수 있습니다. 하필 명칭을 '차원'이라고 붙여 놓아서 우리를 헷갈리게 합니다.
이제 이 글을 보신 분들은 랩뷰의 함수에서 도대체 어떤 배열을 넣으라는 건지 헷갈리지 않겠죠? 아주 좋아요!