OpenCASCADE动画功能2

eryar@163.com

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

OCCT从7.1.0版本引入了类AIS_Animation等用于实现动画功能的类。

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

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

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

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

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

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

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

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

OpenCASCADE动画功能2的更多相关文章

  1. OpenCASCADE动画功能

    OpenCASCADE动画功能 eryar@163.com 1.Introduction OpenCASCADE提供了类AIS_Animation等来实现简单的动画功能. 从其类图可以看出,动画功能有 ...

  2. CSS3中的动画功能(一)

    css3中的动画功能分为transitions功能和animations功能,这两种功能都可以通过改变css属性值来产生动画效果.今天带大家一起来看看css3动画功能中的transitions的用法. ...

  3. CSS3基础(2)—— 文字与字体相关样式、盒子类型、背景与边框相关样式、变形处理、动画功能

    一. CSS3 文字与字体相关样式 1. 给文字添加阴影 text-shadow: length length length ccolor; 属性适用于文本阴影,指定了水平阴影,垂直阴影,模糊的距离, ...

  4. css3动画功能介绍

    一:过渡动画---Transitions 含义:在css3中,Transitions功能通过将元素的某个属性从一个属性值在指定的时间内平滑过渡到另一个属性值来实现动画功能. Transitions属性 ...

  5. UE4动画功能整理

    转自:http://blog.ch-wind.com/ue4%E5%8A%A8%E7%94%BB%E5%8A%9F%E8%83%BD%E6%95%B4%E7%90%86/ 工欲善其事必先利其器,最近一 ...

  6. (六)Unity5.0新特性------新动画功能

     unity 5.0 中的新动画功能 这里是你能够期待的新动画功能高速概述 ! State Machine Behaviours状态机行为 在Unity 5 中,你会能够将StateMachine ...

  7. CSS3的transition动画功能

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  8. iOS:Gif动画功能(显示gif动画、获取gif动画时长、获取gif动画执行次数)

    一.简单介绍 gif动画是iOS开发中很常用的一个功能,有的是为了显示加载视频的过程,更多的是为了显示一个结果状态(动画更直观). 那么如何执行gif动画,方法有很多.(这里只写一下方法三,前两种之前 ...

  9. CSS3动画功能

    1.transition功能 transition属性的使用方法:transition:property duration timing-function; 其中property表示对哪个属性进行平滑 ...

随机推荐

  1. vue 配置微信分享

    参考:https://www.cnblogs.com/goloving/p/9256212.html 1. main.js import WXConfig from '../../assets/js/ ...

  2. PostGIS 通过SQL语句实现空间分析【入门级】

    PostGIS是对象关系型数据库系统PostgreSQL的一个扩展,PostGIS提供如下空间信息服务功能:空间对象.空间索引.空间操作函数和空间操作符.同时,PostGIS遵循OpenGIS的规范. ...

  3. Hadoop的局限与不足

  4. Win和Linux定时备份数据库

    项目的数据库需要每天备份,但是手动备份太麻烦而且容易忘,所以通过定时任务执行脚本备份数据库,服务器有Windows和Linux,所以两种都记录一下. 一.Windows 首先写好脚本,这里不多说,因为 ...

  5. 【笔记篇】斜率优化dp(一) HNOI2008玩具装箱

    斜率优化dp 本来想直接肝这玩意的结果还是被忽悠着做了两道数论 现在整天浑浑噩噩无心学习甚至都不是太想颓废是不是药丸的表现 各位要知道我就是故意要打删除线并不是因为排版错乱 反正就是一个del标签嘛并 ...

  6. html5 js 监听网络在线与离线

    <!doctype html> <html> <head> <meta http-equiv="content-type" content ...

  7. 第一个servlet小程序

    第一个servlet小程序 com.fry.servlet.HelloServlet package com.fry.servlet; import javax.servlet.ServletExce ...

  8. cookie的设置与销毁

    <?php /* 2个参数设置cookie cookie随着浏览器的关闭,就失效了 ); /* 下面我们让cookir多活一会 3个参数来设置cookie,第3个参数指的就是cookie的声明周 ...

  9. Mac 解决硬盘插入不能写的问题

    软件解决 链接:https://pan.baidu.com/s/1H_zvPPpW0dp7aRUvjDnkQA  密码:8fit 有个NTFS的移动硬盘,默认Mac系统是不能写入,只能读取的,我们可以 ...

  10. 像bootstrap一样的去做web编程

    1: 闭包 boot的闭包方式有点特别,普通的闭包是这样的: (function ($) { })(jQuery) 这种写法是怕全局污染,把$封闭在自己的空间里,暴露在外面的只有jQuery,这样,如 ...