三维空间建模方法之LOD模型算法
什么是LOD
LOD也称为层次细节模型,是一种实时三维计算机图形技术,最先由Clark于1976年提出,其工作原理是:
视点离物体近时,能观察到的模型细节丰富;视点远离模型时,观察到的细节逐渐模糊。系统绘图程序根据一定的判断条件,选择相应的细节进行显示,从而避免了因绘制那些意义相对不大的细节而造成的时间浪费,同时有效地协调了画面连续性与模型分辨率的关系。
示例图:
地形LOD模型算法
地形里面的LOD算法可以分为:非连续LOD模型、连续LOD模型以及节点LOD模型。
非连续LOD模型:它实质上保存了原始模型的多个副本,每个副本对应某一特定的分辨率,所有副本构成一个金字塔模型。该模型的优点是不必在线生成模型,可视速度快;缺点是数据冗余大,容易引起几何数据的不一致性,而且由于不同分辨率之间没有任何关联,不同分辨率间的转换易引起视觉上的间跳现象。
连续LOD模型:它是在某一时间只保留某一分辨率的模型,在实际应用中根据需要,采用一定的算法实时生成另一分辨率的模型。该模型优缺点正好与不连续LOD模型相反,即优点是没有数据冗余,能够保证几何数据的一致性和视觉连续性;缺点是需要在线生成不同分辨率的模型,算法设计复杂,可视速度慢。
节点LOD模型:本身是一个分辨率结构。不同分辨率模型之间用节点相连,通过对节点的激活来操作相应的部件。所有节点均被激活时,实质就是一个全分辨率结构,优点是结构简单、操作方便,适合表达复杂的不连续的体模型对象。
https://www.cnblogs.com/jiayongzhi/archive/2011/06/01/2067430.html 模型lod算法实现
http://www.cnblogs.com/fuckgiser/p/6500641.html cesiumLOD渲染原理篇
三维空间建模方法之LOD模型算法的更多相关文章
- 基于点云的3ds Max快速精细三维建模方法及系统的制作方法 插件开发
		
基于点云的3ds Max快速精细三维建模方法及系统的制作方法[技术领域][0001]本发明涉及数字城市三维建模领域,尤其涉及一种基于点云的3d ...
 - Python小白的数学建模课-09 微分方程模型
		
小白往往听到微分方程就觉得害怕,其实数学建模中的微分方程模型不仅没那么复杂,而且很容易写出高水平的数模论文. 本文介绍微分方程模型的建模与求解,通过常微分方程.常微分方程组.高阶常微分方程 3个案例手 ...
 - [综] Latent Dirichlet Allocation(LDA)主题模型算法
		
多项分布 http://szjc.math168.com/book/ebookdetail.aspx?cateid=1&§ionid=983 二项分布和多项分布 http:// ...
 - Spark:聚类算法之LDA主题模型算法
		
http://blog.csdn.net/pipisorry/article/details/52912179 Spark上实现LDA原理 LDA主题模型算法 [主题模型TopicModel:隐含狄利 ...
 - 一步步教你轻松学朴素贝叶斯模型算法Sklearn深度篇3
		
一步步教你轻松学朴素贝叶斯深度篇3(白宁超 2018年9月4日14:18:14) 导读:朴素贝叶斯模型是机器学习常用的模型算法之一,其在文本分类方面简单易行,且取得不错的分类效果.所以很受欢迎,对 ...
 - 一步步教你轻松学KNN模型算法
		
一步步教你轻松学KNN模型算法( 白宁超 2018年7月24日08:52:16 ) 导读:机器学习算法中KNN属于比较简单的典型算法,既可以做聚类又可以做分类使用.本文通过一个模拟的实际案例进行讲解. ...
 - uvm_tlm——TLM1事务级建模方法(一)
		
TLM(事务级建模方法,Transaction-level modeling)是一种高级的数字系统模型化方法,它将模型间的通信细节与函数单元或通信架构的细节分离开来.通信机制(如总线或者FIFO)被建 ...
 - hive建模方法
		
转自:https://www.jianshu.com/p/8378b80e4b21 概述数据仓库这个概念是由 Bill Inmon 所提出的,其功能是将组织通过联机事务处理(OLTP)所积累的大量的资 ...
 - EGADS介绍(二)--时序模型和异常检测模型算法的核心思想
		
EDADS系统包含了众多的时序模型和异常检测模型,这些模型的处理会输入很多参数,若仅使用默认的参数,那么时序模型预测的准确率将无法提高,异常检测模型的误报率也无法降低,甚至针对某些时间序列这些模型将无 ...
 
随机推荐
- Asteroids POJ - 3041 【最小点覆盖集】
			
Bessie wants to navigate her spaceship through a dangerous asteroid field in the shape of an N x N g ...
 - checkbox选中的行数
			
$('[name=roomcheck]').each(function(){ if($(this).prop("checked")==true){ alert(this.id);/ ...
 - 测试的Python、 Java语言之争
			
现在测试行业如果不会开发语言的话是很难找到工作的,即使是一些功能测试的岗位也会要求代码语言作为技术储备,因为如果做自动化测试或者测试工具脚本开发或者接口测试等都离不开开发语言,那作为测试如果没有代码经 ...
 - 查看Oracle表空间使用情况
			
1.查询表空间的总容量 as MB from sys.dba_data_files a group by a.TABLESPACE_NAME 2.查询表空间的空闲容量 select b.TABLESP ...
 - overflow妙用--去除默认滚动条,内容仍可滚动
			
在开发中我们往往要去除默认滚动条,但是其在竖直方向的滚动效果仍然需要. <div id="parent"> <div id="child"&g ...
 - python数据分析与应用
			
python数据分析与应用笔记 使用sklearn构建模型 1.使用sklearn转换器处理数据 import numpy as np from sklearn.datasets import loa ...
 - 为什么使用Spring Boot
			
原文:https://dzone.com/articles/why-springboot 作者:Siva Prasad Reddy Katamreddy 译者:Oopsguy 本文将介绍各种 Spri ...
 - 重读APUE(14)-主线程终止对子线程的影响
			
在main中创建线程,我们称main线程为主线程,新建线程为子线程(其实没有什么主线程和子线程的父子概念,它们是平行的,为了好理解这样称呼),如果子线程内部执行相对比较耗时的操作,主线程执行的快,而且 ...
 - 讨论SQLite数据库损坏与修复
			
版权声明:博客将逐步迁移到 http://cwqqq.com https://blog.csdn.net/cwqcwk1/article/details/45541409 昨晚,朋友和我反馈SQL ...
 - 如何配置WAMP环境(主要是Apache与PHP)
			
1.配置Apache 1.编辑Apache配置文件---http.conf(位于安装目录下的conf子目录内): 2.修改Document Root 和 Directory选项,这是修改Apache的 ...