CHOU

[MFC] ChartDirector 무료 차트 라이브러리 본문

Tech/Technical Tips

[MFC] ChartDirector 무료 차트 라이브러리

chobabo 2013. 7. 19. 17:09

MFC에서 동작하는 무료 차트 라이브러리를 알아보던 중 ChartDirector가 사용하기 쉽고

많은 차트와 그래프를 지원한다는 사실을 접하고 사용해 봤습니다.

 

1. 우선 아래의 사이트에 접속해서 자신의 개발환경에 맞는 라이브러리를 다운 합니다.

저는 32bit 환경으로 개발하기 때문에 아래 그림의 빨간 박스 부분을 다운 받았습니다.

 

http://www.advsofteng.com/download.html

 

 

다운받은 파일의 압축을 해제하고,

 

1) 'lib' 폴더안에 있는 'chartdir51.lib'을 자신의 프로젝트 폴더에 복사 합니다.

2) 'lib' 폴더안에 있는 'chartdir51.dll'을 실행파일(.exe)이 있는 폴더에(일반적으로 Debug 폴더) 복사 합니다.

3) 'mfcdemo/mfcdemo' 폴더안에 있는 'ChartViewer.cpp'와 'ChartViewer.h'을 자신의 프로젝트 폴더에 복사합니다.

4) 'include' 폴더을 자신의 프로젝트 폴더에 복사 합니다.

 

2. 다음으로, PROJECT -> Properties 에서 설정을 추가해 줍니다.

 

 

1) Property Page에서 C/C++ -> General 에 들어가면 Additional Dependencies 부분을 볼 수 있는데

옆의 화살표를 클릭하고 edit 에서 방금전에 복사한 include 폴더의 경로를 적어 줍니다.

 

 

저의 경우 'include' 폴더는 프로젝트 폴더 안에 있기 때문에 폴더명만 적어주면 됩니다. 

 

 

2) Property Page에서 Linker -> Input 에 들어가면 Additional Dependencies 부분을 볼 수 있는데

옆의 화살표를 클릭하고 edit에서 'chartdir51.lib' 라이브러리를 추가해 줍니다.

 

 

일반적으로 라이브러리는 따로 보관할 수 있는 폴더를 생성하여 관리하는 것이 좋은데

저의 경우, 프로젝트 폴더아래 'lib' 폴더를 만들어서 'chartdir51.lib'을 저장했습니다.

 

따라서, 아래와 같이 라이브러리 경로명을 입력해 줍니다. 

 

 

3) 마지막으로, 프로젝트 폴더에 복사한 'ChartViewer.cpp'와 'ChartViewer.h'을 Solution Explorer에서

읽어와 프로젝트에 추가합니다.

 

위의 과정을 마치면 ChartDirector 라이브러리 사용을 위한 환경 설정을 마칠 수 있습니다.

 

3. ChartDirector을 이용하여 MFC에서 차트를 표현

 

1) 차트를 표현 할 다이어로그에 Toolbox에서 Picture Control을 선택해 추가해 줍니다.

그리고, 추가한 Picture Control의 Proterties에 들어가서 TypeBitmap으로 변환합니다.

 

 

Picture Control의 Type을 변환한 후, Add Variable에 들어가서

Picture Control의 variable name과 variable type을 지정해 줍니다.

Variable Type은 CChartViewer 입니다.

 

 

 

2) 차트를 표현할 다이어로그의 헤더 파일에 'ChartViewer.h'을 추가 합니다.

 

4. 처음 압축한 폴더에 있는 예제 소스를 복사하여 프로그램이 잘 동작하는지 테스트 해 봅니다.

 

 

잘 동작합니다^^.

다음에는 TCP/IP 통신을 통해 SICK사의 LMS1xx, LMS5xx 레이저 센서와 통신하고

ChartDirector 라이브러리를 이용하여 실시간으로 획득한 데이터를 표현하는 것을 구현해 보겠습니다.