图形-从世界坐标确定TRIANGLE_FAN圆的半径和局部坐标
Graphics - Determining the Radius of TRIANGLE_FAN Circle and Local Coordinates from World Coordinates
目前,我在openGL中有一个具有多个坐标系统的太阳系。也就是说,太阳有自己的轨道坐标系来表示围绕它运行的行星,也有自己的坐标系来表示代表太阳的圆。每个行星都有自己的轨道和形状。
我使用GL_TRIANGLE_FAN为行星制作球体。
然后,当我收到鼠标坐标时,我使用glUnProject将它们从窗口转换为世界坐标。然后,我尝试将这些世界坐标转换为本地坐标,以确定鼠标点击是否在行星形状内。如果是,它输出行星的名称-困难的部分是让行星点击识别工作。
我似乎不知道如何正确地做这件事。我使用的公式是true if ((pow(target_LCS[0],2) + pow(target_LCS[1],2))OpenGL对对象一无所知。当你用GL_TRIANGLE_FAN
创建一个球体时,你必须有代码告诉opengl在哪里绘制球体以及半径是多少。如果你想做相交测试,你需要自己跟踪行星半径和行星位置。因此,只需使用绘图代码中指定的位置和半径。
相关文章:
- QGraphicsPolygonItem在拖动时未更新QPolygonF坐标
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 使用的未初始化局部变量'Quick'
- 修复未初始化的局部变量错误
- OpenGL 4.3 错误地将第 4 个纹理坐标映射到与第 3 个纹理坐标相同的位置
- 局部变量保留函数中的值
- 为什么 'main' 函数中的局部 int 变量会自动初始化?
- 如何使用 C++ 中的继承函数访问派生类中的局部变量
- 将引用分配给局部变量,如果局部变量超出范围,它会超出范围吗?
- 比较两个节点坐标的最佳方法是什么?
- 在 OpenGL 中将笛卡尔世界坐标转换为球面局部坐标
- SDL2 调整窗口大小后如何缩放鼠标坐标?
- 如何在C++中获取坐标?
- 如何将 x.y 坐标的值存储在不同的数组中
- Gnuplot_i.hpp C++接口绘制局部变量而不是文件
- 如何在函数外部访问函数中局部变量的值?
- 图形-从世界坐标确定TRIANGLE_FAN圆的半径和局部坐标
- 在OpenGL 4.0中,是否有一种围绕局部坐标(即从模型视图矩阵)旋转的标准方法
- 我是否正确地将局部空间转换为世界空间坐标