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.
- 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
HOOPS MVO （MVO分别是Model、View、Operator的缩写）
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。
4.Attributes on subparts
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.