图形 - 将 3d 点转换为 2d 投影的方程

2023-12-15

我是一名图形新手,但正在使用 HTML5 Canvas、javascript 以及一些形状和图像。 如果我在点 C.x,C.y,C.z 处有一个相机,在 P.x,P.y,P.z 处有一个点,那么将该点转换为 2d 点的最简单方法是什么,以便我可以在该点处以正确的缩放比例渲染图像,以便我的观点正确吗?我追求的是方程式,而不是图书馆。

Thanks!


它称为透视投影,您寻求的公式就是此处找到的矩阵乘法:

http://en.wikipedia.org/wiki/3D_projection#Perspective_projection

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

图形 - 将 3d 点转换为 2d 投影的方程 的相关文章

  • 修改 GGplot2 对象

    然而 我很好奇 是否可以添加任何特定的图例或将哪个物种对应于观察到的预期绘图中 以分别知道它是哪个圆圈 我目前使用的是一个名为 finches 的假数据集 该包称为 cooccurr 它创建一个 ggplot 对象 我很好奇如何实际编辑它以
  • 如何用PHP进行有向图绘制?

    我正在寻找一种在 PHP 中绘制有向图的方法 如http upload wikimedia org wikipedia commons 0 08 Directed acirclic graph png http upload wikimed
  • 如何向 3D 表面添加文本

    我使用plot surface 创建了具有平行四边形底座的矩形棱柱 我需要向其中一个表面添加一些文本 我试过ax text 3 0 5 1 red 1 1 0 color red 但文本在表面上不可见 import matplotlib p
  • 图形未在 JLayeredPane 中显示(java swing)

    我正在尝试根据用户输入逐步构建图像 我想做的是创建一堆图形并将它们添加为图层 但是我遇到了一些问题 因为它们不会显示 这是我正在使用的代码 public class ClassA protected final static int dim
  • 如何使用 Java2D 创建硬件加速图像?

    我正在尝试创建一个快速图像生成器 它可以执行大量 2d 转换和形状渲染 因此我尝试使用 BufferedImage 然后获取 Graphics2D 对象来执行所有绘图 我现在主要关心的是 make 速度非常快 所以我创建一个像这样的 Buf
  • 使用faceting()时如何连接geom_point()和geom_line?

    我有一个问题 但我在互联网上没有找到任何相关信息 我很高兴得到一些提示 我有一个数据集 其中 x 轴是离散的 但我想将这些点相互连接 我可以做到 我的问题是当我添加分面选项时 我无法再将这些点相互链接起来 我找到了一个替代方案 但看起来不太
  • 在 iOS 上的 SceneKit 中导入 3d 模型

    从 URL 导入 obj 文件并将其转换为 SCNNode 时遇到问题 这是代码 swift3 let url URL init string https cloud box com shared static ock9d81kakj91d
  • 如何计算正切和副法线?

    谈谈OpenGL着色语言 GLSL 中的凹凸贴图 镜面高光之类的东西 I have 顶点数组 例如 0 2 0 5 0 1 0 2 0 4 0 5 法线数组 例如 0 0 0 0 1 0 0 0 1 0 0 0 世界空间中点光源的位置 例如
  • GL_COLOR_ATTACHMENT 有什么作用?

    我现在正在学习帧缓冲区 但我只是不明白颜色附件的作用 我了解帧缓冲区 第二个参数的意义是什么 glFramebufferTexture2D GL FRAMEBUFFER GL COLOR ATTACHMENT0 GL TEXTURE 2D
  • 为什么我的 3D 绘图没有显示在 R Studio 绘图查看器中?

    我通常在 RStudio 版本 1 0 44 中查看绘图时没有问题 但是当我尝试查看使用 rgl 包创建的 3D 绘图时 我的 RStudio 绘图查看器中什么也没有出现 我能够毫无问题地绘制图 汽车 散点图 这是我正在使用的代码 inst
  • 求截头棱锥体/截棱锥体横截面的边长

    如何找到横截面的边长 如图所示 下图 横截面 红色 截头锥体 截棱锥体 我知道顶部和底部的边长 以及底部的高度 截锥体和到横截面的距离 此外我还知道 顶部和底部底座平行 并且顶部和底部的中心 底部底座直接位于彼此之上 比例是线性的 因此只需
  • 避免 XferMode 替换画布上的颜色

    我正在尝试替换使用在画布上绘制的内容的颜色避免Xfer模式 http developer android com reference android graphics AvoidXfermode html 从 android 文档来看 它看
  • 检测哪些 Tilemap 单元与 Unity 中的 Collider2D 发生碰撞

    我有一个Tilemap 这有一个TilemapCollider2D成分 在其上绘制了几个图块 每个图块都有自己的精灵碰撞器形状 然而它们是精灵图块而不是预制件 它们不是使用预制画笔绘制的 我还有一个游戏对象Collider2D a Circ
  • Python 中漂亮的图形和图表 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 学习 SVG 的书籍/教程 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在 3d 网格中转发(绘制)线

    我需要类似 Bresenham 算法的东西 但是 对于 3d 网格空间来说不完全是这样 我需要 3d 单元网格 边缘尺寸 1 0 从 S 点开始 前进到 K 点 接触 该线接触的所有单元格 即使只有边缘 点被触摸我需要触摸所有 8 个单元
  • 定点数学比浮点运算快吗?

    多年前 即 20 世纪 90 年代初期 我构建了图形软件包 该软件包基于定点算术和预先计算的 cos sin 表格以及使用牛顿近似方法进行 sqrt 和对数近似的缩放方程来优化计算 这些先进技术似乎已经成为图形和内置数学处理器的一部分 大约
  • 如何光栅化旋转矩形(通过 setpixel 在 2d 中)

    我有四个 2d 顶点 A B C D 的旋转矩形 我需要在像素缓冲区中 有效地 光栅化 绘制它 使用 setpixel x y 颜色 怎么做 我正在尝试使用一些代码 例如 convertilg a b c d do up down left
  • Gtk/GtkD 在窗口调整大小时检测鼠标按钮的释放?

    我正在尝试改进我用 GtkD Gtk 的 D 绑定 编写的绘图库 具有很多点的散点图需要很长时间才能调整大小 我想重新缩放图像 允许像素化 同时用户拖动窗口边缘来调整大小 并且仅在释放鼠标按钮时重新渲染它 是否有 API 可以检测在调整窗口
  • 透视变换矩阵的计算

    给定 3D 空间中的一个点 如何计算齐次坐标中的矩阵 将该点投影到平面上z d 其中原点是投影中心 好吧 让我们尝试解决这个问题 扩展伊曼纽尔的答案 Assuming如果您的视图向量直接沿着 Z 轴 则所有尺寸都必须按视图平面距离的比例进行

随机推荐

  • 我是否误解了heredoc应该做什么?

    我对 PHP 很陌生 所以我知道我在这里遗漏了一些明显的东西 我认为heredoc函数应该保留格式 换行符等 但每当我测试它时 它解析时都没有格式化 我尝试了很多不同的脚本 包括来自 PHP net 和 W3schools 等来源的复制粘贴
  • Excel VBA 在函数中合并单元格

    我编写了一个粗略的函数来根据范围选择和连接单元格 Function GetSkills CellRef As String CellRefEnd As String Delimiter As String Dim CellStart As
  • 非整数的错误“整数输入语法无效”?

    我正在使用 Python 和 psycopg2 我正在尝试执行带有值列表的准备好的语句 如下所示 cur callproc prepared func prepared values psycopg2 DataError invalid i
  • 无法在 xcode 4.2 上构建我的项目

    我已将我的 xcode 升级到 4 2 使用雪豹 以前我使用的是 Xcode 3 2 6 我的项目使用它成功构建 现在我无法构建它 而是 Xcode 发出以下错误 ld warning option A is obsolete and be
  • 将生成的 img 嵌入 django 模板中

    我如何将生成的图像嵌入 django 模板中 就像是 return render to response graph html img get graph 我不想要这个 因为它只是发送图像 http HttpResponse get gra
  • FFmpeg从mp4创建m3u8,视频文件大小

    我正在使用 ffmpeg 将 mp4 转换为 m3u8 但首先我需要让 mp4 变小 我使用这段代码来缩小它 ffmpeg i big mp4 b 1000000 small mp4 然后我使用这段代码将其转换为m3u8 ffmpeg i
  • Vue 3 自定义复选框组件,带有 v-model 和项目数组

    迫切需要你们的帮助 所以基本上我有一个带有 v 模型的自定义复选框组件 我在组件上使用 v for 循环来显示带有数组中名称的复选框 在父组件中 我有两列 可用 和 选定 这个想法是 如果我选中其中一个框可用栏它应该出现在选定的列 问题是它
  • 设置 win32 控制台应用程序的库路径

    当我尝试执行简单的 HelloWorld win32 控制台应用程序时 出现 找不到 dll 重新启动应用程序可能会解决问题 错误 我知道 dll 的位置 从命令提示符执行 exe 时如何指定其位置 PS 将 dll复制到 exe的当前目录
  • Doctrine2:这些实体之间的关联有什么问题?

    我正在尝试通过简单的示例来了解 Doctrine2 中的所有更改 请查看以下实体片段 VCat php namespace Application Models Entity Table name v cat class VCat Id C
  • UITableViewCell 中加载 UIView 的 Nib 文件不会拉伸

    我有一个 UIView 可以通过 nib xib 文件重用 我想加载它并填充一个 UITableViewCell 它将在自动调整大小的 UITableView 中使用 全部带有自动布局 大多数工作都很好 但似乎加载的 UIView 使用周围
  • 如何升级Oracle 11g 11.2.0.1中的java版本[关闭]

    Closed 这个问题是无关 目前不接受答案 我的oracle数据库的java版本是1 5 0 10 如何将其升级到java 1 7 0 10 Thanks 这是不可能的 Oracle 为特定版本的 DBMS 提供了特定版本的 Java 并
  • Javascript cloneNode 不是一个函数[重复]

    这个问题在这里已经有答案了 我有几个跨度 span a span span b span span c span span d span I use getElementsByName获取跨度集合 var spans document ge
  • 修复 RegEx 中的 JSLint 擒纵机构不良警告

    我在名为的第三方 jQuery 控件中有以下代码jquery facebox js that JSLint不喜欢 这是正则表达式中的一个严重的擒纵错误 正则表达式对我来说就像 Romulan 所以我不知道如何修复错误 这是正则表达式中的句点
  • 如何使用 Devise 设置电子邮件确认?

    是否有教程解释如何从头开始设置 Devise 的注册确认电子邮件 在开发和生产中 即如果您没有设置 Action Mailer 谷歌搜索刚刚出现了一堆与此相关的单独片段 没有一篇文章能够解释得足够多 而且我不确定它们如何组合在一起 是否有分
  • 正则表达式替换除第一个和最后一个字符之外的内容

    什么是正则表达式 用于将字符串中的双引号 替换为转义反斜杠 后跟双引号 字符串的第一个和最后一个字符除外 示例 1 嵌入字符串中的双引号 Input This is a Test Expected Output This is a Test
  • WELD-001408 类型 [Validator] 的依赖关系不满足

    将项目从 Java EE 6 迁移到 Java EE 7 后 我无法部署该项目 我已经启用了 CDI beans xml 带有 bean discovery mode all 以实现向后兼容性 部署错误似乎与我的代码无关 因为它提到了一个尝
  • C# 将内部 XML 反序列化为字符串

    我有以下 XML
  • Mongodb 按索引字段搜索

    我将字段 search string 添加到我的文档中并为其建立索引 db my collection createIndex search string text Search string 包含以下内容 a ar are are are
  • 如何使用 BeautifulSoup 正确解析 UTF-8 编码的 HTML 为 Unicode 字符串? [复制]

    这个问题在这里已经有答案了 我正在运行一个 Python 程序 该程序获取 UTF 8 编码的网页 并使用 BeautifulSoup 从 HTML 中提取一些文本 但是 当我将此文本写入文件 或在控制台上打印 时 它会以意外的编码写入 示
  • 图形 - 将 3d 点转换为 2d 投影的方程

    我是一名图形新手 但正在使用 HTML5 Canvas javascript 以及一些形状和图像 如果我在点 C x C y C z 处有一个相机 在 P x P y P z 处有一个点 那么将该点转换为 2d 点的最简单方法是什么 以便我