vtk를 사용하여 창 좌표를 객체 좌표에 매핑하는 방법

user11100830

나는 vtk progarm을 수행하고 있는데, vtk를 사용하여 창 좌표를 객체 좌표로 매핑해야한다는 점에서

OpenGL 코드는 다음과 같습니다.

  winX = 0.2;//some float values
  winY = 0.43;//some float values
  double posX, posY, posZ;

glGetDoublev( GL_MODELVIEW_MATRIX, modelview );
glGetDoublev( GL_PROJECTION_MATRIX, projection );
glGetIntegerv( GL_VIEWPORT, viewport );
glReadPixels(winX, winY, 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &winZ)
gluUnProject(winX, winY, winZ, modelview, projection, viewport, &posX, &posY, &posZ);

vtk를 사용하여이 작업을 수행하는 방법을 모르겠습니까? 어떤 도움을 주시면 감사하겠습니다. 또한 이와 같은 모델보기 매트릭스를 얻기위한 솔루션을 봤습니다.

      renderWindow->GetRenderers()->GetFirstRenderer()->GetActiveCamera()->GetViewTransformMatrix();

하지만 vtk에서 창 좌표를 객체 좌표로 매핑하는 방법을 모릅니다.

토마스 랭

예, VTK는 화면 좌표를 세계 좌표로 매핑 할 수 있습니다. 다음 코드를 필요에 맞게 조정할 수 있습니다 (2D 경우에만 해당).

// 1. Get the position in the widget.
int* clickPosition = this->GetInteractor()->GetEventPosition();
const int x = clickPosition[0];
const int y = clickPosition[1];

// 2. Transform screen coordinates to "world coordinates" i.e. into real coordinates.
vtkSmartPointer<vtkCoordinate> coordinate = vtkSmartPointer<vtkCoordinate>::New();
coordinate->SetCoordinateSystemToDisplay();
coordinate->SetValue(x, y, 0);
double* worldCoordinates = coordinate->GetComputedWorldValue(widget->GetRenderWindow()->GetRenderers()->GetFirstRenderer());

double worldX(worldCoordinates[0]), worldY(worldCoordinates[1]);

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

창 좌표를 제어 좌표로 변환하는 방법

분류에서Dev

<< 연산자를 사용하여 경도 및 위도를 MapTile 좌표에 매핑하는 방법

분류에서Dev

fabricjs를 사용하여 줌 후 객체 좌표를 타겟팅하는 방법은 무엇입니까?

분류에서Dev

Java에서 Shape 객체의 x 좌표를 얻는 방법

분류에서Dev

JavaScript에서 X 및 Y 좌표를 사용하여 개체를 이동하는 방법

분류에서Dev

Cocoa에서 화면 좌표를 창 좌표로 변환 하시겠습니까?

분류에서Dev

배열 요소를 좌표로 사용하여 객체에 액세스

분류에서Dev

API를 사용하여 SolidWorks에서 개체의 좌표 데이터를 얻는 방법

분류에서Dev

Visio에서 전체 시간 동안 좌표를 사용하여 차트를 만드는 방법

분류에서Dev

OpenLayers에서 "일반"좌표를 OSM 좌표로 변환하는 방법

분류에서Dev

TensorFlow에서 객체 감지를 위해 경계 상자의 좌표를 선택하는 방법

분류에서Dev

QGraphicsItem에 로컬 좌표를 사용하는 방법

분류에서Dev

OpenCV : 좌표로 객체의 각도 (각도)를 계산하는 방법

분류에서Dev

Sikulix에서 좌표를 위치 객체로 변환하는 방법이 있습니까?

분류에서Dev

plabels Netlogo에서 패치 좌표를 표시하는 방법

분류에서Dev

OpenGL 카메라가 낮은 고도 (낮은 Z 좌표)에있을 때 창 좌표를 구에 매핑하기가 어려운 이유는 무엇입니까?

분류에서Dev

텍스처의 UV 좌표를 하위 직사각형의 "내부"UV 좌표에 매핑하는 방법은 무엇입니까?

분류에서Dev

glViewport가 정상 좌표를 창 좌표에 잘못 매핑합니까?

분류에서Dev

뷰와 모델을 분리하면서 세계 좌표를 화면 좌표에 매핑하는 방법은 무엇입니까?

분류에서Dev

창 높이 / 너비 제한 내에서 마우스 좌표를 유지하는 방법

분류에서Dev

목록에서 원의 좌표를 생성하는 방법

분류에서Dev

Godot에서 두 노드 좌표를 비교하는 방법

분류에서Dev

중앙에서 OpenGL의 점 좌표를 변경하는 방법

분류에서Dev

CAShapeLayer에서 좌표를 얻는 방법

분류에서Dev

onmouseup에서 좌표를 얻는 방법?

분류에서Dev

극좌표에서 데카르트 좌표를 계산할 때 오류를 상쇄하는 방법

분류에서Dev

graphviz를 사용하여 노드의 좌표를 유지하는 방법

분류에서Dev

좌표를 사용하여 지리적 위치까지의 거리별로 객체 배열을 정렬하는 효율적인 방법이 있습니까?

분류에서Dev

Javascript Hashmap에서 좌표를 키로 사용하는 가장 빠른 방법

Related 관련 기사

  1. 1

    창 좌표를 제어 좌표로 변환하는 방법

  2. 2

    << 연산자를 사용하여 경도 및 위도를 MapTile 좌표에 매핑하는 방법

  3. 3

    fabricjs를 사용하여 줌 후 객체 좌표를 타겟팅하는 방법은 무엇입니까?

  4. 4

    Java에서 Shape 객체의 x 좌표를 얻는 방법

  5. 5

    JavaScript에서 X 및 Y 좌표를 사용하여 개체를 이동하는 방법

  6. 6

    Cocoa에서 화면 좌표를 창 좌표로 변환 하시겠습니까?

  7. 7

    배열 요소를 좌표로 사용하여 객체에 액세스

  8. 8

    API를 사용하여 SolidWorks에서 개체의 좌표 데이터를 얻는 방법

  9. 9

    Visio에서 전체 시간 동안 좌표를 사용하여 차트를 만드는 방법

  10. 10

    OpenLayers에서 "일반"좌표를 OSM 좌표로 변환하는 방법

  11. 11

    TensorFlow에서 객체 감지를 위해 경계 상자의 좌표를 선택하는 방법

  12. 12

    QGraphicsItem에 로컬 좌표를 사용하는 방법

  13. 13

    OpenCV : 좌표로 객체의 각도 (각도)를 계산하는 방법

  14. 14

    Sikulix에서 좌표를 위치 객체로 변환하는 방법이 있습니까?

  15. 15

    plabels Netlogo에서 패치 좌표를 표시하는 방법

  16. 16

    OpenGL 카메라가 낮은 고도 (낮은 Z 좌표)에있을 때 창 좌표를 구에 매핑하기가 어려운 이유는 무엇입니까?

  17. 17

    텍스처의 UV 좌표를 하위 직사각형의 "내부"UV 좌표에 매핑하는 방법은 무엇입니까?

  18. 18

    glViewport가 정상 좌표를 창 좌표에 잘못 매핑합니까?

  19. 19

    뷰와 모델을 분리하면서 세계 좌표를 화면 좌표에 매핑하는 방법은 무엇입니까?

  20. 20

    창 높이 / 너비 제한 내에서 마우스 좌표를 유지하는 방법

  21. 21

    목록에서 원의 좌표를 생성하는 방법

  22. 22

    Godot에서 두 노드 좌표를 비교하는 방법

  23. 23

    중앙에서 OpenGL의 점 좌표를 변경하는 방법

  24. 24

    CAShapeLayer에서 좌표를 얻는 방법

  25. 25

    onmouseup에서 좌표를 얻는 방법?

  26. 26

    극좌표에서 데카르트 좌표를 계산할 때 오류를 상쇄하는 방법

  27. 27

    graphviz를 사용하여 노드의 좌표를 유지하는 방법

  28. 28

    좌표를 사용하여 지리적 위치까지의 거리별로 객체 배열을 정렬하는 효율적인 방법이 있습니까?

  29. 29

    Javascript Hashmap에서 좌표를 키로 사용하는 가장 빠른 방법

뜨겁다태그

보관