HOOPS学习笔记

news2024/9/20 20:44:18

Hoops简介

HOOPS Visualize由一套集成的组件组成,可快速开发高性能设计、可视化和工程应用程序。HOOPS 3DF在每个组件中保持平台独立性,在Windows、Linux和Mac OS X上提供跨平台解决方案。
HOOPS Visualize包含如下组件:

  • 1.HOOPS/3dGS - HOOPS 3D Graphics System
  • 2.HOOPS/Stream - The HOOPS Stream Toolkit
  • 3.HOOPS/MVO- the Model/View/Operator Class Library
  • 4.HOOPS/GUI - Graphical User Interface Modules
  • 5.HOOPS/Parasolid - Geometric Modeler Bridge
  • 6.The HOOPS 3DF Reference Applications - Geometric-Kernel & Non-Geometric-Kernel-Based Cross Platform Applications

1.HOOPS/3dGS - HOOPS 3D Graphics System

HOOPS/3dGS为开发人员提供了一个面向对象的高级场景图API,它封装了图形数据库和优化算法,用于存储、创建、编辑、操作、查询、渲染和打印3D和2D图形信息。

2.HOOPS/Stream - The HOOPS Stream Toolkit

HOOPS/Stream是一个用于HSF文件格式的FileIO工具包。它允许开发人员将定制的HSF文件或数据流导入(导出)HOOPS/3dGS场景图、专有或第三方图形系统。

3.HOOPS/MVO- the Model/View/Operator Class Library

HOOPS/MVO是一组独立于平台和GUI的C++类,实现了CAD/CAM/CAE应用程序中的许多常见功能,如模型查看、创建、注释、操作、选择和硬拷贝。这些类可以直接嵌入到应用程序中,并且可以轻松地扩展开放源代码以构建定制特定逻辑的应用程序。HOOPS/MVO的设计旨在与各种HOOPS/3dAF组件完美集成。

4.HOOPS/GUI - Graphical User Interface Modules

HOOPS/GUI模块封装了将HOOPS3DF连接到几个不同的图形用户界面(GUI)工具包所需的工作。HOOPS/GUI提供以下集成:

5.HOOPS/Parasolid - Geometric Modeler Bridge

HOOPS/Parasolid将Parasolid建模内核连接到HOOPS 3D图形系统。HOOPS/Parasolid为开发人员节省了设计和实现图形输出界面的任务,这些任务是复杂建模包所需的。有关HOOPS/Parasolid的更多信息,请参见以下链接:

5.1 HOOPS/QT集成指南

6.The HOOPS 3DF Reference Applications - Geometric-Kernel & Non-Geometric-Kernel-Based Cross Platform Applications

参考应用程序使用HOOPS 3D框架的各种组件构建,并在所有支持的平台上演示其功能。此外,它们还为新应用程序的基础架构提供了一个模型。开发系统提供参考应用程序的可读源代码,开发人员可以在其应用程序中自由使用代码的任何部分。以下是可用参考应用程序列表:

6.1HOOPS 3D PART VIEWER

HOOPS 3D Part Viewer是基于HOOPS 3D应用程序框架(HOOPS/3DAF)的HOOPS/3dGS和HOOPS/MVO组件构建的Windows MFC应用程序。

应用程序源代码位于[HOOPS install dir]/demo/mfc/hoopspartviewer目录中,可执行文件hoops3dpartviewer.exe位于/bin目录中。

Part Viewer允许用户调用HOOPS/MVO运算符,采用以下方式操作应用程序:

  • 读取HOOPS流文件(hsf)、HOOPS元文件(hmf)、标准光刻(stl)文件和OBJ文件。
  • 创建简单的几何体(圆锥体、球体、圆柱体和切割平面)。
  • 创建实体的选择集。
  • 注释对象。
  • 在渲染模式之间切换。
  • 在不同的相机操作操作员之间切换。
  • 查询场景中的几何体。
  • 打印、打印预览和复制到剪贴板。
  • 多个用户之间的实时、同步协作。
  • 播放HSF动画。

该应用程序旨在演示HOOPS与MFC的集成,展示HOOPS/MVO类库中的所有可用功能,最重要的是,作为开发人员可以扩展自己代码的参考架构。因此,选择应用程序中实现的一组运算符,是因为它们是实现3D建模应用程序的许多常见操作,是因为它们在演示如何实现3D建模应用程序方面非常有用。应用程序开发人员可以使用Partviewer,通过派生Operator派生Operator类创建新的HOOPS/MVO来轻松定制和扩展其功能。

有关Partviewer体系结构的更多信息,请参阅构建应用程序Building Applications一节。

Hoops 3D 框架

下面的流程图说明这些组件是如何相互连接的,以及用户如何从GUI toolkit生成事件并可视化。
在这里插入图片描述
在HOOPS Visualize中,用户生成的事件由GUI框架的事件队列收集。HOOPS/GUI集成模块监控事件队列,并将适当的事件分派给HOOPS/MVO对象或直接分派给HOUPS/3dGS。

参考文献

HOOPS Visualize 3DF Documentation
Hoops引擎培训教程(附代码)
利用ACIS、HOOPS开发三维软件

图像驱动器:OpenGL,Direct3D,X11,Win GDI
HOOPS可以在图形驱动器下生成可见的视图,各种各样的图形驱动器保存如下:
OpenGL:“opengl”
direct3D:“direct3d”
Windows GDI:“msw”

===》先学习OpenGL,Windows GDI

Autodesk是什么?AutodeskDE Heidi技术又是什么?
Autodesk的Heidi技术是从HDI派生的,HDI就是HOOPS设备接口。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/13272.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue+express+mysql+elementUI实现前后端交互增删改查

简介:使用 Vue koa koa2-router mySql elementUI实现前后端交互 页面整体效果图: 编辑页面: 添加页面: 删除操作: 数据库客户端使用Navicat for mysql 当然你需要下载安装 在数据库新建 stuInfo 表和表结构 st…

Github点赞接近 100k 的Spring Boot学习教程+实战项目推荐

很明显的一个现象,除了一些老项目,现在 Java 后端项目基本都是基于 Spring Boot 进行开发,毕竟它这么好用以及天然微服务友好。不夸张的说,Spring Boot 是 Java 后端领域最最最重要的技术之一,熟练掌握它对于 Java 程序…

SpringBoot-快速入门

目录 SpringBoot 概念 Spring缺点 SpringBoot 功能 快速入门案例:需求 案例:实现步骤 示例 小结 快速构建SpringBoot工程 SpringBoot 概念 SpringBoot提供了一种快速使用Spring的方式基于约定优于配置的思想,可以让开发人员不必在配置…

QML地图Map中使用QPainterPath,并显示任意点经纬度位置

QML地图Map中提供了供绘制图形的组件,例如MapPolyline,MapCircle等,但是这些组件在绘制复杂轨迹时就显得功能不够全面,因此我将QPainterPath在Map中进行使用并进行绘制,并使用C和Qml中的函数进行相互调用计算获取点屏幕…

macOS 的「预览」有几种用法

如果要评选 macOS 最低调的 App ,「预览」可能就会位列其中之一。「预览」和 macOS 结合异常紧密,甚至让人都会遗忘它还是个 App。毕竟大多数的时候,提到「预览」就会想到操作系统的一部分。而实际上,「预览」那「瘦小」的身躯之内…

Unity3D赛车游戏+脚本基础

前言 游戏对象实例化 Scenes游戏场景 GameObject游戏对象 Component组件 Component使用方法 预制体 Unity事件函数 Instantiate():实例化对象 什么是Time.deltaTime Transform的移动,旋转和缩放 实战:赛车游戏 运行演示 具体步骤 游戏打包流程 前言 …

智慧教育解决方案-最新全套文件

智慧教育解决方案-最新全套文件一、建设背景二、思路架构三、建设方案四、获取 - 智慧教育全套最新解决方案合集一、建设背景 目前数字化校园现状: 各自为政 分散建设 各个学校组成的业务系统、网站五花八门,形式多样。形式单一 功能简单 学校网站主要…

为什么同一表情‘‘.length==5但‘‘.length==4?本文带你深入理解 String Unicode UTF8 UTF16

背景 为什么同样是男人,但有的男人🧔‍♂️.length 5,有的男人🧔‍♂.length 4呢? 这二者都是JS中的字符串,要理解本质原因,你需要明白JS中字符串的本质,你需要理解 String Unic…

vlan trunk stp攻防

目录 一、VLAN、Trunk面临的安全风险 trunk干道攻击DTP攻击(思科特有) VLAN跳跃攻击 STP根桥攻击 二、攻击防护 一、VLAN、Trunk面临的安全风险 trunk干道攻击DTP攻击(思科特有) 在华为设备中trunk链路是手工指定的&#xf…

A-LEVEL Chemistry考点分析

A-LEVEL化学其实不是一门很难的科目,并没有太多的内容,虽说包含十几章的内容但其实每章都是相互关联,一通百通,掌握元素周期表的实质,基本上就没有什么问题了,重在理解!知识点多而不碎&#xff…

如何一站式管理固定资产的全生命周期?

目前很多企业还在沿用之前传统的Excel表格来管理和盘点固定资产,不但加大了企业固定资产管理员的工作量,而且在实际的操作过程中容易出现错登记、漏盘点、无法查询操作履历等各种小插曲。而且随着企业固定资产数量、种类、分支机构以及人员的不断增加&am…

juc之常用4大并发工具类 (四)

CountDownLatch: 减少计数CyclicBarrier: 循环栅栏Semaphore: 信号量ExChanger: 交换器 文章目录1.CountDownLatch2.CyclicBarrier3.Semaphore4.Exchanger1.CountDownLatch CountDownLatch,俗称闭锁,作用是类似加强版的 Join,是让一组线程等待其他的线程完成工作以后才执行 就…

数仓开发之DWD层(四)

目录 十一:工具域优惠券领取事务事实表 11.1 主要任务: 11.2 思路分析: 11.3 图解: 十二:工具域优惠券使用(下单)事务事实表 12.1 主要任务: 12.2 思路分析: 12.3…

[附源码]Python计算机毕业设计 社区老人健康服务跟踪系统

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

Java项目实战【超级详细】

软件开发流程 角色分工 开发环境搭建 创建普通Maven项目编写pom.xml导入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instanc…

【MQ简单模式】

14天阅读挑战赛 MQ简单模式 1、模式介绍 需求&#xff1a;使用简单模式完成消息传递 步骤&#xff1a; ① 创建工程&#xff08;生成者、消费者&#xff09; ② 分别添加依赖 ③ 编写生产者发送消息 ④ 编写消费者接收消息 在上图的模型中&#xff0c;有以下概念&#xff1a; ⚫…

数据库索引的基本操作(sql语句)

表索引的增删改查&#xff08;sql语句&#xff09; 概念&#xff1a; 索引由表中的一列或多列组合而成&#xff0c;目的是优化数据库的查询速度。向索引表中插入数据时&#xff0c;数据库系统需要按照索引进行排序。有时&#xff0c;可以先将索引删除&#xff0c;然后向表插入…

Docker学习(1)—— 安装Docker

一. 安装Docker 1. 查看CentOS是否是7以上的版本 cat /etc/redhat-release 2. 安装gcc yum -y install gcc yum -y install gcc-c 3. 安装需要的软件包 yum install -y yum-utils 4. 设置stable镜像仓库 yum-config-manager --add-repo http://mirrors.aliyun.com/doc…

p38 MAPK调控酶及转录因子

MAPK 与 p38 MAPK 作为对外界物理和化学性质变化的响应&#xff0c;哺乳动物细胞激活有丝分裂原激活蛋白激酶 (MAPK) 的四个特征性亚家族&#xff1a;ERK1/2、JNK、p38 和 ERK5。其中 p38 MAPKs 是一类保守的丝氨酸-苏氨酸蛋白激酶&#xff0c;可被多种细胞外炎症因子 (如TNF-α…

语义分割及DeeplabV3+模型

一、基本概念 将视觉输入分为不同的语义可解释类别&#xff1b;通俗点说就是区分不同部分。 分类&#xff1a; b)语义分割 c)实例分割 d)全景分割 语义分割一般以平均IOU(Intersection Over Union,并交比)来评价性能&#xff0c;其公式如下&#xff1a; 目的是使…