2011-10-30 2 views
1

현재 여러 2D 레이어를 렌더링 할 수있는 탐색 가능한 3D 장면을 구현할 가능성을 평가 중입니다. 좀 더 정확하게하기 위해 3D 환경에 여러 그래프를 표시하여 그래프 사이의 유사성과 차이점을 찾아냅니다. 다음의 스크린 샷을 고려하면 두 개의 그래프 (하나는 검정, 하나는 회색)가 같을 것입니다. 서로 다른 그래프에서 다른 노드가 빨간색으로 강조 표시 될 수 있습니다.Qt - 하나의 3D 장면에서 QGraphicsView를 포함하는 다중 레이어 (QGLWidget)

two graphs in 3d

나는 Qt의 Graphic View Framework 작업 및 QGraphicsScene 여러 QGraphicsItem의를 사용하여 편집 가능한 그래프 편집기, I 별도로에서이 프로젝트를 설립하고있다.

Qt는 OpenGL support이고, 예를 들어, QGLWidget이고 제공된 예제를 살펴 보았습니다. 그렇다면 OpenGL을 사용하지 않았기 때문에 (Java3D로 몇 가지 작업을했지만) 사람들이 경험을 공유 할 수 있다면 좋겠다고 생각합니다.

  1. QPixmap에 모든 QGraphicsView 렌더링 및 그래프가 안내 가능한 만들 것이다, 3D로이를 표시하지만 동등한 만들기
  2. 등 요소의 수확을 금지하는 것 :

    몇 가지 솔루션은 내 마음에 와서 모든 2D 그래프 요소에 대한 3D 요소 및 각 QGraphicsView을 3D 표현으로 "변환"합니다. OpenGL을 사용하지 않았기 때문에 꽤 효과적 일 것이라고 생각합니다.

  3. QGLWidgetQGLWidgetQGraphicScene,보기 또는 QGraphicsItem을 "배치"하는 쉬운 방법이 있습니다. 보통 "mouseclickevents"등을 등록하십시오.

첫 번째 구현에서는 다른 계층에 여러 그래프를 표시하는 일반 탐색 가능한 "뷰어"로 충분합니다. 그러나 장래에 피킹 등을 추가 할 수 있도록 확장 가능하게하고 싶습니다.

답변

0

프로젝트는 QGraphicsEmbedScene이라는 클래스를 제공합니다.이 클래스는 사용자가 원하는 것을 정확히 수행합니다.

+0

매우 유망 해 보인다! 감사 –

관련 문제