• HOOPS学习笔记


    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组件完美集成。

    3.1HOOPS/MVO技术概述

    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设备接口。

  • 相关阅读:
    软件测试周刊(第84期):这个世界根本不存在“不会做”、“不能做”,只有“不想做”和“不敢做”,当你失去所有依靠的时候,你自然就什么都会了。
    【Swift 60秒】08 - Simple types:Summary
    Android Studio导入aosp源码
    SSH Tunneling隧道 - 探究与实践
    《STM32 HAL库》RCC 相关系列函数详尽解析—— HAL_RCC_OscConfig()
    C++ - 开放地址法的哈希介绍 - 哈希表的仿函数例子
    如何利用谷歌SEO服务帮助企业获客
    Vivado下PLL实验
    QT软件开发-基于FFMPEG设计录屏与rtsp、rtmp推流软件(支持桌面与摄像头)(二)
    印刷企业使用数字工厂管理系统前后有什么变化
  • 原文地址:https://blog.csdn.net/haimianjie2012/article/details/127898535