본문 바로가기

Programming/VTK

VTK를 설치하고 개인 프로젝트에 적용하는 방법 (1/2)

Volume Rendering 관련 프로젝트를 맡게 되면서 VTK를 활용하게 됐다.

VTK(Visualization TooKit)는 객체지향 기법으로 설계, 구현된 3차원 그래픽 C++ 클래스 라이브러리이다.
쉽게 보자면 데이터를 시각화해서 보여주는 도구라고 보면 된다.

 VTK에서 사용되는 주요 객체간의 연관관계

 

생각보다 다루기 까다롭지만(너무 객체지향적이면서 매크로가 많아 낯설다.)
익숙해지면 상당히 유용한 도구가 될 것이다.

설치환경 : Windows 10 64bit / Visual Studio 2015

먼저 VTK 파일을 다운로드하여야 한다.
아래 경로로 가면 다운로드할 수 있다.

www.vtk.org/download/

 

Download | VTK

 

vtk.org

표시된 2개의 압축파일을 각각 다운받아야 한다.

 

이제 파일들을 놓을 공간을 만들어야 한다.
나는 아래와 같이 경로를 설정해 압축 파일을 풀어주었다.
두 압축파일 모두 같은 위치에 풀어주면 된다.

 

이제 cmake를 통해 vtk를 쉽게 사용할 수 있도록 설정해주어야 한다.
cmake가 없다면 다운받아 주도록 하자.

https://cmake.org/download/

 

Download | CMake

Current development distribution Each night binaries are created as part of the testing process. Other than passing all of the tests in CMake, this version of CMake should not be expected to work in a production environment. It is being produced so that us

cmake.org

설치파일을 다운받아 쉽게 설치 가능하다.

 

vtk 코드들을 다운받은 폴더 상위에 새로운 폴더를 만들어주자.
이 곳에 cmake로 생성할 파일들이 들어갈 것이다.

cmake-bin 이라는 폴더를 만들었다.

 

이제 cmake를 실행시켜 원본 소스와 목적지 경로를 설정해줘야 한다.

source code는 vtk코드를 다운로드한 폴더를 지정해 줘야 한다.
build the binaries는 cmake로 만들어진 것들이 저장될 공간으로 아까 생성한 cmake-bin 폴더로 설정해줬다.

경로 설정을 완료하고 Configure를 누르면 아래와 같이 초기 환경 세팅 창이 뜬다.

Visual studio 2015 / x64

내 설치 환경과 동일하다면 위와같이 설정을 변경해주고 Finish를 누르면 된다.
만약 visual studio 버전이 다르다면 해당 visual studio 버전으로 변경해주자.
generator를 x64로 설정하는 이유는 보통 VTK를 활용하면 큰 데이터들을 다루기 때문에 x64를 활용한다.
따라서 추후에 x86과 충돌 에러를 방지하기 위해 x64로 설정해주는 것이 좋다.(default Win32)

처음 Configure가 완료되고 나면 빨갛게 무언가 뜰 것이다.
당황하지 않고 advanced를 누른 후 아래와 같이 설정을 바꿔준다.

1. BUILD_EXAMPLES 체크
2. BUILD_SHARED_LIBS 체크
3. 
BUILD_TESTING 체크 해제
4. CMAKE_INSTALL_PREFIX -> cmake에서 생성한 파일을 저장할 경로(아까 cmake-bin 폴더를 지정해주면 됨)
5. 
Module_vtkRenderingParallel 체크

다시 Configure를 누르면 빨간 것들이 모두 사라질 것이다.
그렇다면 이제 Generate를 눌러주자.

정상적으로 완료되고 나면 cmake-bin 폴더에 VTK.sln이 생성되어 있을 것이다.
해당 솔루션을 열어주자.

솔루션에서 ALL_BUILD를 찾아 빌드해준다.

ALL_BUILD 빌드

 

시간이 조금 걸릴 것이다.
완료되면 INSTALL도 찾아서 빌드해주자.

INSTALL 빌드

 

여기까지 완료하고 나면 cmake-bin 폴더 내부에 bin, include, lib 폴더가 생성되어 있다.
이 폴더들이 다른 프로젝트에 VTK를 적용시킬 때 활용될 파일들이 저장되어 있는 곳이다.

 

이제 실제로 vtk가 잘 돌아가는지 예제를 돌려서 확인해보자.
VTK.sln 에서 아무 프로젝트나 시작 프로젝트로 설정해 실행시켜보도록 하자.

cube 프로젝트를 실행시켜 보았다. 결과가 잘 나오는 것을 확인할 수 있다.

cube 프로젝트를 실행한 결과화면

 

다음 시간에는 개인 프로젝트에 어떻게 vtk를 연결하는지 알아보도록 하자.