HOOPS 3D Application Framework (HOOPS/3dAF)

With HOOPS Visualize, you can rapidly produce eye-popping graphics across both mobile and desktop platforms.

At its core, HOOPS Visualize provides a flexible, hierarchical scene management engine capable of handling a range of graphics entities, together with a sophisticated graphics pipeline and high-performance graphics and interaction handling algorithms. It also delivers advanced capabilities to accelerate your application development, including an animation engine, clash detection, multi-plane sectioning, and large model visualization.

HOOPS 基本图元和属性支持

几 何

  • Images, Unicode Text, Points, Lines, Polygons, Polylines, Polycylinders, NURBS curves, NURBS surfaces, Arcs, Ellipses, Circles, Tristrips, Trifans, Indexed Facesets, Cutting Planes, Capping Geometry
    Color, Transparency, Textures, Visibility, Patterns (Facet,edge 和 Line), Color Ramps, Lighting Interpolation, Selectability
    Shaded, Analytic Hidden Line, Wireframe,Color Maps, Various Color Ramping Algorithms, Window Background Coloring

markers 单独的点.



  • 当放大和缩小时标记的大小是不变的
  • 标记的大小是朝向相机的,它并不旋转

HOOPS MVO (MVO分别是Model、View、Operator的缩写)


  • HDB
  • HBaseModel:处理在包含库下的段
  • HBaseView:处理在驱动段下的段和实例
  • HbaseOperator:处理图形用户界面/事件循环
    · 相机操作
    · 几何对象操作
    · 选择


  • 保存应用程序数据
  • 绘制应用程序数据
  • 管理应用程序数据
  • 相机
  • 选择
  • 坐标
  • 查询
  • 驱动器设置


3D applications typically represent 3D objects with an “indexed face set” or “polygon-point mesh”. In Visualize, such primitives are called ‘shells’. A shell defines the boundary surface of an object in 3D using a set of planar polygons. Polygons can be multi-sided and can include holes. A shell is defined as an array of vertices (3D points) and an array of indices into the vertex array that define each polygonal face.

HOOPS Visualize supports a wide range of advanced functionality relating to shells, including the ability to select, highlight, and modify individual sub-entities (faces, edges, and vertices). Attributes such as normals, colors, and texture coordinates can also be set at the sub-entity level to enable a variety of complex shading and display.

Shell 一系列连通的Face / Wire的集合。线、面的集合,能位于实体外,也能在内部形成空洞。一个体含一个悬挂面,一个体内嵌许多和外表面相连的面都称为shell。

shell attributes属性

1.Vertex markers
2.Silhouette(外表面)/perimeter/hard/adjacent edges
3.Cut edges/faces
4.Attributes on subparts
5.Smooth shading
6.Advanced rendering


The Visualize libraries provide multiple operations for selection and several advanced highlighting techniques.


Control over what is targeted for selection is configurable:

Segments in the scene graph can be marked as available for selection
The selection level can be specified – entity, geometry, segment, or segment tree. Selection of individual vertices, edges and faces can be configured
The number of selected items to search for is configurable
The selection proximity can be used to select the nearest item on screen within a screen-based tolerance
Selections can be made of all items inside and outside a drag box, inside arbitrary screen regions defined by polylines or polygons, by a volume of 3D space, and by an arbitrary triangle mesh in 3D for clash/collision detection.

坐标系(Coordinate Systems)

对象(Object)->世界(World)->(->视点ViewPoint)->外窗口(Outer Window)->像素(Pixel)