MarchingCube (Isosurface) 알고리즘 및 OpenGL 3D Viewer 입니다.
- 최초 등록일
- 2019.12.19
- 최종 저작일
- 2018.12
- 압축파일
- 가격 9,000원
소개글
MarchingCube (Isosurface) 알고리즘 및 OpenGL 3D Viewer 입니다.
대표이미지에서 보시다 시피 MarchingCube 알고리즘으로 3D Rendering 이 된 화면입니다.
MarchingCube 알고리즘은 외부 라이브러리를 사용한게 아닌 직접 코드를 짰습니다.
그리고 MarchingCube 는 기본적으로 데이터가 격자형이지만 본데이터는 방사형 (Angle)로 되어있습니다.
어차피 Input (x,y,z)나 알고리즘 내부는 동일하기때문에 무관합니다.
본 프로그램은 알고리즘 공부 목적이 상당히 큽니다.
저렴한 가격으로 알고리즘 코드 및 공부를 하시면 될 듯합니다. (주석처리도 해둠)
추가 키 이벤트 : +/- 키로 MarchingCube 임계값을 조절합니다.
기본 window size 는 1024, 768 로 되있으며, glutIdleFunc 반복적으로 화면이 갱신 됩니다.
코드는 알고리즘 분석에 꼭 필요한 코드만 있고
openGL을 배우기 시작하시거나, 정리하시기에는 군더더기 없는 소스코드입니다.
모든 소스에는 주석이 달려있어서 보시기에도 도움이 되실겁니다.
개발환경 : Visual Studio 2017 32비트(x86) 빌드하셔야합니다.
(Visual Studio 버젼은 상관없으나 32비트는 꼭!)
OpenGL 관련 lib 가 32비트이기 때문입니다.
잘만들었으니 가져가셔서 많은 도움이 되셨음 좋겠습니다. 감사합니다.
컴파일 실행환경
Visual Studio 2017, 빌드(x86), C/C++
압축파일 내 파일목록
MarchingCube.sln
MarchingCube/DATASTREAM.CPP
MarchingCube/datastream.h
MarchingCube/Data/figbeam1.png
MarchingCube/Data/figbeam10.png
MarchingCube/Data/figbeam11.png
MarchingCube/Data/figbeam12.png
MarchingCube/Data/figbeam13.png
MarchingCube/Data/figbeam14.png
MarchingCube/Data/figbeam15.png
MarchingCube/Data/figbeam16.png
MarchingCube/Data/figbeam2.png
MarchingCube/Data/figbeam3.png
MarchingCube/Data/figbeam4.png
MarchingCube/Data/figbeam5.png
MarchingCube/Data/figbeam6.png
MarchingCube/Data/figbeam7.png
MarchingCube/Data/figbeam8.png
MarchingCube/Data/figbeam9.png
MarchingCube/Data/PD.m
MarchingCube/Data/RLTPD1.bin
MarchingCube/Data/RLTPD10.bin
MarchingCube/Data/RLTPD11.bin
MarchingCube/Data/RLTPD12.bin
MarchingCube/Data/RLTPD13.bin
MarchingCube/Data/RLTPD14.bin
MarchingCube/Data/RLTPD15.bin
MarchingCube/Data/RLTPD16.bin
MarchingCube/Data/RLTPD2.bin
MarchingCube/Data/RLTPD3.bin
MarchingCube/Data/RLTPD4.bin
MarchingCube/Data/RLTPD5.bin
MarchingCube/Data/RLTPD6.bin
MarchingCube/Data/RLTPD7.bin
MarchingCube/Data/RLTPD8.bin
MarchingCube/Data/RLTPD9.bin
MarchingCube/glew32.lib
MarchingCube/glext.h
MarchingCube/GLU.H
MarchingCube/glut.h
MarchingCube/glut32.dll
MarchingCube/glut32.lib
MarchingCube/MarchingCube.cpp
MarchingCube/MarchingCube.vcxproj
MarchingCube/MarchingCube.vcxproj.filters
MarchingCube/MarchingCube.vcxproj.user
MarchingCube/marchingsource - isosurface.cpp
MarchingCube/marchingsource - 복사본.cpp
MarchingCube/marchingsource.cpp
MarchingCube/ReadMe.txt
MarchingCube/stdafx.cpp
MarchingCube/stdafx.h
MarchingCube/targetver.h
MarchingCube/Tokenizer.cpp
MarchingCube/Tokenizer.h
참고 자료
surface 알고리즘