projection相关内容

pygame 中的 3D 投影

我正在尝试创建一个简单的立方体 3d 渲染.正如 Coding Train 中的这段视频:https://www.youtube.com/watch?v=p4Iz0XJY-Qk 在第 14 分钟.我有一点被卡住了.由于我对这一切都很陌生,我不确定是什么导致了我的问题.当我开始项目时,立方体按照我想要的方式旋转,但从屏幕向左移动,看起来像是在做一个圆圈. 导入pygame将 numpy 导入为 n ..
发布时间:2021-11-25 04:28:51 Python

如何找到在三角形上投影点以在网格上画线的正确方法?

我有网格和 2 个点 - A 和 B.每个点都位于网格的某个三角形上.主要目标是 - 使用 2 个点在网格上绘制 正确 线.当点位于具有不同平面的三角形上时 - 我在画线时遇到问题. 我做什么: CurrentTriangle = A 点所在的三角形. 虽然 CurrentTriangle != 有 B 点的三角形: 将 B 投影 (Bp) 投影到 CurrentTrian ..
发布时间:2021-11-25 04:24:45 C#

坐标变换和投影问题

我一直在尝试将鼠标坐标转换为 OpenGL 场景中的 3D 空间坐标. 目前,我的投影有点乱(我认为),当我在场景中移动时,它似乎没有完全考虑到我的“相机".为了检查这一点,我画了一条线. 我的调整大小功能: void oglWidget::resizeGL(int width, int height){如果(高度== 0){高度 = 1;}pMatrix.setToIdentit ..
发布时间:2021-11-25 04:22:42 C/C++开发

坐标变换和投影问题

我一直在尝试将鼠标坐标转换为 OpenGL 场景中的 3D 空间坐标. 目前,我的投影有点乱(我认为),当我在场景中移动时,它似乎没有完全考虑到我的“相机".为了检查这一点,我画了一条线. 我的调整大小功能: void oglWidget::resizeGL(int width, int height){如果(高度== 0){高度 = 1;}pMatrix.setToIdentit ..
发布时间:2021-11-25 04:08:28 C/C++开发

Matlab 网格中的斜投影

在表示光学布局时,以倾斜(而不是正交或透视)投影表示光学系统,所有块都在光轴上,通常很方便且图形美观. 假设有人想在这样的布局上叠加一个 Matlab 网格或 oblique/cavalier 中的 3D 等高线图投影(具体来说:表示图像平面上点扩散函数的网格). Matlab 通常允许在 正交投影 或透视投影中绘制 3D 绘图.有没有办法在 Matlab 中配置相机视图,以便在骑士投 ..
发布时间:2021-11-25 03:43:39 C#

如何确定 matplotlib 轴对象的投影(2D 或 3D)?

在 Python 的 matplotlib 库中,很容易指定坐标轴对象在创建时的投影: 将 matplotlib.pyplot 导入为 plt从 mpl_toolkits.mplot3d 导入 Axes3Dax = plt.axes(projection='3d') 但是如何确定现有坐标区对象的投影?没有 ax.get_projection,ax.properties 不包含“投影"键,并且快 ..
发布时间:2021-11-25 03:35:40 Python

在three.js中平行于投影平面移动对象

我想用鼠标沿着平行于投影平面的平面移动对象.这意味着在移动过程中,任何拾取的对象和相机投影平面(不是相机位置)之间的距离必须保持不变.有人问过类似的问题:鼠标/画布 X,Y 到三.js World X, Y, Z ,但与那里不同的是,我需要一个适用于任意相机角度和相机/对象位置的解决方案,而不仅仅是 z=0 的平面.它还必须适用于正投影.现在我创建了一个小提琴 http://jsfiddle ..
发布时间:2021-11-25 03:33:36 前端开发

如何在 matlab 中计算 3D 网格的投影

我正在尝试使用 matlab 从不同视图计算 3d 网格的 2d 投影.我现在使用的解决方案是绘制 3d 网格,旋转它并制作屏幕截图. 我想知道是否有任何 matlab 内部函数或任何其他解决方案允许我在给定一组顶点和三角形的情况下计算投影而无需绘制 3D 网格 谢谢 解决方案 您可以使用 view 命令旋转轴和改变视点.方位角和仰角以度数给出(更多信息请参考文档).这是一个小 ..
发布时间:2021-11-25 03:12:26 C#

世界中给定 Z 的 2D 到 3D 投影

如果之前有人问过,我很抱歉,但我找不到我问题的正确答案. 为了更好地理解,让我简要解释一下我的问题的背景 背景 我有两个图像(A 和 B),上面有非平面物体.我希望能够从 A 中获取像素 pA 的坐标并将其投影到 B 中.由于我的场景不是平面的,我不能使用单应性.我想要做的是首先将我的像素 pA 投影到 3D 世界中,然后将结果投影到图像 B 中以获得 pB.pA (2D) -> ..
发布时间:2021-11-25 03:11:04 C#

将 3D 点投影到 2D 屏幕坐标 OpenTK

使用 Monotouch 和 OpenTK 我试图获得一个 3D 点的屏幕坐标.我设置了我的世界视图投影矩阵,OpenGL 理解它并完美地投影了我的 3D 模型,但是如何使用相同的矩阵将一个点从 2D 投影到 3D? 我以为我可以简单地使用: Vector3.Transform(ref input3Dpos, ref matWorldViewProjection, outprojected ..
发布时间:2021-11-25 03:06:08 C#

OpenGL移动对象并保持变换

我有一个物体,它是变形的(在 Y 轴上旋转 45 度).目标是在 x 和 y 轴上移动(平移)对象并保持变换效果不变.很难解释,所以我拍了一张: 我知道 opengl 中相机的概念,我知道我不能真正移动相机,但实际上一切都在相机周围移动.有人真的知道如何实现这一目标吗? 我的代码: //设置mvpmatrixProj = new PerspectiveProjectionMatrix ..
发布时间:2021-11-25 02:57:10 C#

为什么 OpenGL 有一个远剪裁平面,用什么习语来处理这个问题?

我一直在学习 OpenGL,一直困扰着我的一个话题是远剪裁平面.虽然我可以理解近剪裁平面和侧剪裁平面背后的推理(它们从来没有任何实际效果,因为无论如何都不会渲染它们之外的对象),但远剪裁平面似乎只是一个烦恼. 由于 OpenGL 背后的人显然已经考虑到了这一点,我知道一定有我遗漏的东西.为什么 OpenGL 有一个远剪切平面?更重要的是,因为您无法关闭它,所以在远距离绘制物体时(对于太空游戏 ..
发布时间:2021-11-25 02:47:42 C#

将 3D 模型投影到 2d 平面上

我有一个 3d 对象,并希望向各个方向导出它.假设我有家庭图片,如果我将它投影到 2d 平面上,它只会显示类似正方形的东西,但是如果我改变角度,它会给我不同的视图(在简而言之,我想要相同 3d 对象的不同 2d 投影以获得更好的可视化.我正在寻找能够做到这一点的 python 库或算法.请参考图表以清楚地了解我想要什么.在此处输入图片描述 解决方案 这可以通过投影变换来完成.这实际上只是两 ..
发布时间:2021-11-25 02:46:35 Python

如何在3d中获得点到平面的距离?

我有一个三角形,其中包含点 A、B、C 和空间中的点 (P).如何获得点到平面的距离?我需要计算从 P 到平面的距离,即使我的三角形离得很远(或不在点上方,如图所示). 点和三角形: 解决方案 我假设你想计算点和平面之间的垂直距离,给定 3 个点形成一个三角形.这里是矢量数学方法: 定义 设三角形点为p0,p1,p2和测试点p. 平面法线 首先我们需要获得平面 ..
发布时间:2021-11-25 02:40:43 C#

透视变换矩阵的计算

给定 3D 空间中的一个点,我如何计算齐次坐标中的矩阵,该矩阵将该点投影到平面 z == d,其中原点是投影中心.> 解决方案 好的,让我们试着解决这个问题,扩展 Emmanuel 的答案. 假设你的视图向量直接沿着Z轴,所有的维度都必须按视图平面距离d与原始z的比例缩放 坐标.这个比率是微不足道的d/z,给出: x' = x * (d/z)y' = y * (d/z)z' = z * ..
发布时间:2021-11-25 02:38:37 C#

从 2D 投影映射回 3D 点云

我有一个由点顶点 (XYZ) 和最终三角形面组成的 3D 模型.使用 OpenGL 或相机视图矩阵投影,我可以将 3D 模型投影到 2D 平面,即具有 m*n 分辨率的视图窗口或图像. 问题是如何确定 2D 投影计划中的像素与其对应的原始 3D 模型中的顶点(或面)之间的对应关系. 也就是说, 对于来自 2D 投影的给定像素,3D 模型中最近的顶点是什么? 这听起来像是在选择 op ..
发布时间:2021-11-25 02:33:07 C#

屏幕空间中投影球体的半径

在投影到屏幕空间后,我试图找到球体的可见大小(以像素为单位).球体以原点为中心,相机正对着它.因此,投影球体应该是二维的完美圆.我知道这个 1 现有问题.但是,那里给出的公式似乎没有产生我想要的结果.它太小了几个百分点.我认为这是因为它没有正确考虑视角.投影到屏幕空间后,您看不到一半的球体,但由于透视缩短(您只看到球体的一个盖子而不是整个半球 2). 如何推导出精确的二维边界圆? 解决 ..
发布时间:2021-11-25 02:10:53 C#

3d 到 2d 点转换

我正在尝试将 3D 点绘制到 2D 表面上(我目前正在使用 SDL.NET 作为我的“游戏引擎").表面的大小为 800x400 像素,3d 坐标范围为 -4000 到 4000.我的视图将始终是自上而下的视图,并且不会有任何相机移动.有人可以提供一些本机 c#、伪代码或将 3-D 空间中的坐标转换为 2-D 表面的简单解释吗? 同时我在订购这本书告诉我它会解决我的很多数学缺陷......希 ..
发布时间:2021-11-25 02:10:08 C#/.NET

投影 3D 网格的 2D 轮廓算法

给定:由一组顶点和三角形定义的 3D 网格,这些顶点和三角形使用这些点构建网格. 问题:在任意平面上找到投影任意旋转网格的二维轮廓. 投影很容易.挑战在于找到平面中投影三角形边的“外壳".我需要一些有关研究此算法的输入/指针的帮助.为简单起见,我们可以假设 3D 边缘直接向下投影到 xy 平面上. 解决方案 从最右边的点(x 坐标最大的点)开始 从该点获取所有边 沿着x轴正 ..
发布时间:2021-11-25 02:02:41 C#