`
wjlgryx
  • 浏览: 307213 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

o3d 简单介绍

阅读更多

调用O3D库可以直接在应用程序上绘制基本形状(如点,线,三角形,三角面,三角柱形(triangle fan??)) 。如下所示O3D提供的示例显示如何从一个COLLADA文件导入内容,COLLADA转换器从3D内容创建应用程序导入内容,如Autodesk 3ds Max, Maya和Google SketchUp。


  如上图所示, 最初的从3ds Max,Maya和SketchUp导入的COLLADA文件被COLLADA转换器(上方绿色方块)转换 ,然后供O3D场景图的API使用 。编写转换器和加载机时可以参阅开发人员指南导入场景部分获得更多信息。
什么是场景API?

     O3D场景API被用来创建一个转换图和一个渲染图,转换图保存对象的位置,尺寸,阴影,材质和3D程序最基础的着色信息。渲染图存储这些3D对象是如何转变为实际的像素并显示在用户的屏幕上的信息,渲染图作用于以下几个方面:
    1.渲染图包含视图中隐藏的3D形状。
    2.渲染图可以穿过转换图来绘制原始图元。
    3.渲染图可以通过处理复杂的计算来达到特殊的渲染效果,如透明,多视角和模糊
编写的应用程序首先应该为3D世界构建一个转换图和一个为绘图细节准备的基础渲染图。然后O3D将穿过渲染图去显示3D内容,当然渲染图的信息是来之于转换图的。这种方法与那些发出绘制命令并立即执行的快速模式截然不同。
转换图
    转换包含一个矩阵,其详述了在三维空间中如何关联已经定义位置和尺寸的形状。转换图是一个已安排在父/子层中的转变的有序集合。应用程序的变换图在树形目录的顶端有一个根本转变,任何其他的子变换排列都将排在根目录的分支上。转换有一个累计效应,也就是说高一级的变换可以作用于此低一级的分支上。
形状
     转换可以有一个或多个形状与它相关。一个形状可以定义一块已经定义位置和尺寸的几何图像作为一个图元。反过来,形状是每一个都有不同材质的原始图元组成。形状被独立定义,然后与一个定义在局部坐标空间的转换交互。例如,如果你想建一个具有四条腿桌子的模型,您将先创建桌子腿的模型,然后你在四个定义好的位置对桌腿进行转换。接着,您将创建桌面并在四条腿的上方进行一次转换。最后,您将为整个桌子模型创建一个根转换,然后移动到合适的位置。

 

分享到:
评论

相关推荐

    O3D 物体 编辑器

    在3D图形编程领域,O3D是一种开源的JavaScript库,它允许开发者在Web浏览器中创建和展示复杂的3D场景。"O3D 物体编辑器"是基于O3D库开发的一个工具,用于帮助用户在网页环境中设计、编辑和操作3D物体。这个编辑器...

    reverse-engineering-darkstone:逆向工程黑暗石游戏文件格式的简单工具

    o3d_viewer :游戏使用的O3D模型的基于OpenGL的简单查看器。 解压缩MTF存档后,您可以使用此查看器呈现静态模型。 目录结构/依赖关系 src/目录包含工具的源代码和必要的依赖关系,包括第三方代码。 感兴趣的文件是...

    WPS表格简单公式完成复杂任务.docx

    WPS表格简单公式完成复杂任务 在WPS表格中,公式是一个非常强大的工具,可以帮助用户快速完成复杂的任务。在本文档中,我们将学习如何使用WPS表格的简单公式来完成复杂任务。 首先,让我们了解一下“常用公式”的...

    基于open3d读取点云数据-python源码.zip

    point_cloud = o3d.io.read_point_cloud("path_to_your_file.pcd") ``` 这里,“path_to_your_file.pcd”应替换为实际的文件路径。 4. **数据预处理**:在读取点云后,可能需要对其进行预处理,例如去除噪声、...

    QT Canvas 3D 介绍

    WebGL的应用场景十分广泛,许多基于WebGL的场景图库可以帮助开发者快速搭建三维场景,例如three.js、SceneJS、O3D和OSG.js等。这些场景图库提供了大量的基础功能,使得开发者不必直接与底层API打交道,从而简化了三...

    Open_3D_GIS

    为了弥补这一空白,**Open_3D_GIS**(简称O3DG)应运而生,它旨在通过整合2D GIS系统与3D可视化功能,为用户提供一种基于网络的、开放标准下的简单解决方案。 #### 二、目标与概念 O3DG的核心理念是利用现有的自由...

    orientedboundingbox 基于OBB包围盒的碰撞检测模型 opengl

    在3D环境中,包围盒(Bounding Box)是一种常见的碰撞检测方法,其中Oriented Bounding Box(OBB,有向包围盒)比简单的轴对齐包围盒(AABB)提供了更精确的表示和检测能力。本资源基于OpenGL实现,适用于游戏开发、...

    python练习9 Open3D处理(csdn)————程序.pdf

    - 单个角度的点云:通过 `o3d.io.read_point_cloud` 函数读取 ply 格式的点云数据,例如 `bun000.ply`,会得到一个 `o3d.geometry.PointCloud` 对象,然后使用 `draw_geometries` 函数进行可视化。 - 多角度点云...

    基于单片机的酒精检测仪课程设计样本.doc

    MQ3型气敏传感器由微型Al2O3、陶瓷管和测量电极、SnO2敏感层和加热器构成的敏感元件固定在塑料或不锈钢的腔体内,加热器为气敏元件的工作提供了必要的工作条件。 A/D转换电路 在单片机应用系统中,被测量对象的...

    Open3d_Tutorial

    然后,在代码中导入Open3D库:`import open3d as o3d`。 2. 数据类型:Open3D主要处理两种基本数据类型——点云(Point Cloud)和三维网格(Triangle Mesh)。点云是3D空间中离散点的集合,而三维网格则是由多个...

    cmake语法简单教程

    以上是CMake的一些基本语法介绍,通过这些基本指令,可以灵活地管理项目的构建过程。CMake的强大之处不仅限于这些基本功能,还包括高级特性如条件语句、循环结构等,这些特性可以帮助开发者更好地组织和维护复杂的...

    WPS 2021表格实用技巧:用“常用公式”完成复杂任务.docx

    第一个条件为 B 列($B:$B)等于“1”班,第二个条件为 D 列($D:$D)不小于“60”,如图 4 所示。点击“插入公式”就 OK 了。 不知道你吓一跳没有,反正我是吓了一跳。利用“常用公式”还可以完成个人所得税的计算(新...

    江西省赣州市寻乌中学2019_2020学年高一化学上学期第一次段考试题201912300164

    1. 氧化还原反应:在题目中的四个选项中,A、C、D描述的化学反应都涉及到元素的氧化态变化,属于氧化还原反应,而B选项中石灰石分解(CaCO3 → CaO + CO2)是简单的分解反应,没有电子转移,不属于氧化还原反应。...

    文华财经指标公式源码最好的趋势指标公式源码.doc

    K线是快速线,计算公式为RSV的三日简单移动平均,而D线则是K线的三日简单移动平均,J线则为3K-2D。源码中,当K线低于D线时,用绿色线条表示;反之,当K线高于D线时,用黄色线条表示;J线则在K线与D线之间,用青色...

    江苏省扬州市江都区大桥高级中学2019_2020学年高二化学下学期期中试题

    D选项Al2O3因其高熔点而常用作耐高温材料。 4. 元素周期律:短周期主族元素X、Y、Z、W的性质推断。Y是非金属性最强的元素,可能是氟(F);Z位于IA族,可能是钠(Na);W与X同主族且原子序数增大,X可能是O,W则为S...

    粘合代码生成框架Nixysa.zip

    Nixysa 是使用 Python 编写的,为 NPAPI 插件(浏览器插件)自动生成粘合代码的框架,可以帮助用户从简单的 IDL 表示中发现 ...Nixysa 最初需要依赖 O3D,但是足够灵活,可以支持广泛的使用示例。 标签:Nixysa

    学年度化学[精选].doc

    D选项中氧气转化为臭氧是吸热反应,升高温度有利于反应正向进行,但氧化性O2与O3无法直接比较,因为氧化性取决于具体反应条件。 10. 硫酸工业制备:A选项中大块硫铁矿不能充分燃烧;B选项热交换器能提高热效率;C...

    利用化学方程式的简单计算练习(含答案).pdf

    这些题目涉及的是初中化学中的基本概念,主要集中在化学方程式及其应用上,...以上内容详细阐述了每个题目中涉及的化学反应原理、质量守恒定律的应用以及如何通过化学方程式进行计算,涵盖了化学方程式的简单计算练习。

    微软活动目录管理管理简明手册

    w* d# O4 d' Y* E( v(1)活动目录的功能: 6 Y4 }' M# y) {5 K. V3 m! R7 S; v 活动目录提供的服务功能,包括一种集中组织、管理和控制网络资源访问的方法。它使物理网络拓朴和协议透明化,这样网络上的用户可以访问...

Global site tag (gtag.js) - Google Analytics