OpenCASCADE动画功能2

摘要:
OpenCASCADE动画功能2eryar@163.comOpenCASCADE是一个开发平台,主要提供三维曲面和实体建模、CAD数据交换及可视化等功能。本文主要就来说说OCCT的动画功能。OCCT从7.1.0版本引入了类AIS_Animation等用于实现动画功能的类。其类图如下所示:根据类图可知,OCCT中的动画分两种形式:模型动画和视图动画。本文主要关注的是DrawTestHarness中的命令vanimation的一些参数设置对动画功能的影响。这两个参数的设置可以实现类似于OpenSceneGraph中的动画仿真功能,感觉像是多线程的动画。
OpenCASCADE动画功能2

eryar@163.com

OpenCASCADE是一个开发平台,主要提供三维曲面和实体建模、CAD数据交换及可视化等功能。OCCT最适用于开发三维建模CAD软件、加工制造或测量(CAM)软件及数值仿真软件。对于一些加工制造软件,需要简单的动画仿真功能。本文主要就来说说OCCT的动画功能。

OCCT7.1.0版本引入了类AIS_Animation等用于实现动画功能的类。

https://www.opencascade.com/sites/default/files/documents/release_notes_7.1.0.pdf

OpenCASCADE动画功能2第1张

并在Draw Test Harness中增加命令vanimation来测试动画功能。其类图如下所示:

OpenCASCADE动画功能2第2张

根据类图可知,OCCT中的动画分两种形式:模型动画和视图动画。本文主要关注的是Draw Test Harness中的命令vanimation的一些参数设置对动画功能的影响。下图为Draw Test Harness中命令vanimation的帮助信息:

OpenCASCADE动画功能2第3张

在命令的帮助信息中给了动画功能命令的详细说明。如动画的定义、视图(相机)动画、模型动画、增加回调函数及视频录制功能等。其中有两个参数会影响动画过程中视图的交互。这两个参数是:

l-freeLook:跳过视图动画,字面意思是动画的时候还可以对视图进行缩放、旋转等操作;

l-lockLoop:禁用交互,字面意思是锁定动画循环,动画过程中不能有交互,需要等待动画循环结束。

这两个参数的设置可以实现类似于OpenSceneGraph中的动画仿真功能,感觉像是多线程的动画。即模型动画过程中还可以对视图进行交互操作。

OpenCASCADE动画功能2第4张

从上面的动画可以看出,当模型动画的过程中,还可以对视图进行交互操作,如缩放和旋转等。对于有这种功能需求的,可以参考Draw Test Harness中命令vanimation的具体代码实现。

免责声明:文章转载自《OpenCASCADE动画功能2》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇速度之王 — LZ4压缩算法(一)GWAS 手册 A tutorial on conducting genome!wide association studies: Quality control and statistical analysis下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Shader笔记——6.Shader动画

Shader动画 在Unity Shader中引入时间变量_Time,_SinTime,_CosTime,unity_DeltaTime等内置变量来获取在Shader中获取运行时间,就可以来实现各种动画效果 纹理动画 我们可以使用纹理动画来代替复杂的粒子系统等来模拟各种动画效果。 序列帧动画Image Sequence Animation 最常见的纹理动画...

Unity3D使用碰撞体做触发器实现简单的自己主动开门

 在游戏制作中触发器的使用很的方便也很有用。 这一张我们简介一下怎样使用一个简单的触发器来实现自己主动开门关门的效果。 首先确保你已经对门进行了动画的设置。 详细流程例如以下。 选择Window->Animation打开动画窗体,选中须要加入动画的门之后点击红色button创建新动画。 选中一个须要加入动画的要素之后(比方Postion...

Blend基础动画

Blend基础-动画 基础动画 在动画中最简单的就是逐帧动画了,现在常见的gif动画就是逐帧动画。 他是由一系列的序列图片组成再逐一播放的。在Blend中他提供了一个关键帧动画,你不必去制作、指定每一帧的动画图片,只要设置好关键的几个位置,Blend会自动帮你实现动画效果。 具体做法把要制作动画的图片放入舞台中。 点击“对象和时间线”面板右...

UE4_攻击伤害2_AI受击动画

新建一个简单的Ai, 给他添加上模型并调整至正确,修改碰撞设置。 visibility默认是忽略的,可以调整到阻挡,这样就能阻挡我们发出的射线。 这是一种阻挡射线的方法,但并不打算用这种。所以把visibility调回去。 在项目设置的collision里找到射线,新建一个射线命名为attack,并且默认相应改成 ignore 找到SimpleAI...

iOS开发UI篇—核心动画(关键帧动画)

iOS开发UI篇—核心动画(关键帧动画) 一、简单介绍 是CApropertyAnimation的子类,跟CABasicAnimation的区别是:CABasicAnimation只能从一个数值(fromValue)变到另一个数值(toValue),而CAKeyframeAnimation会使用一个NSArray保存这些数值 属性解析: values:就是...

Unity创建动画的步骤

创建动画的步骤: 1.导入模型和动画进行设置2.创建Animator组件 3.创建并设置Animator Controller   进行设置上面的设置见下面AnimatorController设置4.设置脚本进行动画的控制添加脚本代码的时候,其中首先要做的是获取本身物体上的Animator组件获取方法:首先设置private Animator _ani...