2009-09-04 2 views
4

나는 파이썬으로 학문적 아이디어를 실험하기위한 프로그램을 작성 중이다. 프로그램이 생성하는 결과 이미지 봐 :3D에서 간단한 과학적 시각화를위한 어떤 경량의 파이썬 라이브러리

leaf

잎의 중간에 두꺼운 골격 라인이 가시화 될 필요가 것입니다. 스켈레톤 라인의 모든 세그먼트에는 위의 이미지 (pycairo으로 그려짐)와 연관된 값이 있으며 시각화에는 다양한 음영이 사용되며 밝은 색은 높은 값을 의미하고 검은 색 선은 해당 값과 연관된 값 0을 나타냅니다 . 왼쪽 이미지가

2d in 3d

: 문제는이 경우 색상을 사용하여 시각화 인간의 눈에 매우 직관적이다, (종이에서 촬영) 다음과 같이 3 차원의 값을 시각화하는 것이 훨씬 더 좋을 것이다 오른쪽의 3D 시각화, 선과 관련된 값은 3D의 연속 벽 높이로 시각화됩니다.

가장 적합한 라이브러리는 무엇입니까? 이 작업을 수행하는 데 많은 시간을 투자하지 않으므로 가벼운 라이브러리를 사용하는 것이 좋습니다.

+0

매우 늦은 제안으로서, 두 개의 오프셋 2D 투시 렌더링을 나란히 표시 한 다음 자유 시점 입체 시각화를 수행합니다 (나에게주의 : 곧 시도하십시오!). http://en.wikipedia.org/wiki/3d_photography#Side-by-side_.28non-shared_viewing_scenarios.29 – heltonbiker

답변

3

mayavi을 보았습니까? 그것이 "가벼운"당신의 정의에 부합하는지 모르겠지만, 그것은 그 힘을 위해 대중적이고 합리적으로 사용하기 쉽다.

+0

나는 다른 프로젝트에 대해 수개월 전 mayavi를 사용했으며, 워크 플로우와 파이프 라인은 상당히 복잡하며, 이것을 극복 할 수 있습니다. . – btw0

+0

이것은 기본적으로 VTK에 대한 래퍼입니다. VTK를 직접 사용하는 것이 더 쉽습니다. –

+0

라이브러리에 대한 간단한 인터페이스를 제공하는 enthought.mayavi.mlab 모듈이 있습니다. 함수 호출은 MATLAB 3D 플롯 함수와 유사합니다. – SiggyF

4

가볍고 싶다면 PyOpenGL을 사용하여 Python으로 OpenGL 호출을 직접 포장 할 수 있습니다. 아마도 가장 가벼운 옵션 일 것입니다.

많은 기능을 원한다면 VTK을 사용하는 것이 좋습니다. Python 래퍼 (포함)가 포함 된 매우 강력한 시각화 툴킷입니다. 이 위에 Mayavi 및 Paraview와 같은 다른 패키지가 있지만 VTK 래퍼 만 사용하는 것이 더 쉽습니다. 아마 당신이 사용할 수있는 좋은 샘플을 가지고 있기 때문에 아마 이것이 저의 첫 번째 선택 일 것입니다. VtkPolyData 인스턴스를 만들고 렌더러에 던져 넣기 만하면됩니다.

개발의 편의를 위해 Irrlicht을 통한 경량 렌더링 엔진의 래퍼 (예 : Pyrr)를 사용하면이 작업을 간소화 할 수 있습니다. 이렇게하면 그림을 훨씬 쉽게 생성 할 수 있습니다.

관련 문제