SDLib - The subdivision surface source code library1 |
|
| Product Overview |
|
The subdivision surface source code library provided by SMS gives the ability to easily model complex shapes with hierarchical Catmull-Clark surfaces. Click to see graphic examples. |
- SDLib offers:
- Portable C++ libraries
- Affordability and royalty-free use
- Full source code
- Quick response – most bugs are fixed in just a few days
- SDLib input:
- SDLib output may be either:
- A NURBS representation of the subdivision surface fully compatible with SMLib
- Polygonal tessellation of the subdivision surface
- SDLib’s high-level class design:
- Fully object-oriented approach: dozens of classes targeted to Surface, Face, Edge, Vertex, Iterators, Tessellators, etc.
- Evaluation gives positions, normals, or derivatives at any point on the surface
- SDLib editing gives power over:
- Control points at any level of the hierarchy
- Crease information at any level, for selected discontinuity of edges or points
- SDLib subdivision surface features:
- Can convert an arbitrary topology polygonal mesh to a smooth surface.
- Surfaces are built to be everywhere smooth, and C2 most places.
- Surfaces may be edited using control points, just as with NURBS.
- Surfaces may be edited at different levels of detail: fine, coarse, medium.
- Surface is exactly equivalent to bicubic NURBS patches nearly everywhere.
- Surface easily converts to polygons or NURBS.
- Surface can be evaluated everywhere.
|
Key Benefits |
Back To Top |
|
Subdivision surface functionality available in SDLib includes: |
- Subdivision surface creation from a polygonal mesh:
- An input polygonal representation is read to give the basic topological layout of the subdivision surface.
- Any manifold mesh may be used, giving a wide range of shape possibilities.
- Resulting subdivision surface contains faces, edges, vertices at every level.
- Face, edge, and vertex operations. All faces, edges, and vertices in the subdivision surface are features at every level of the surface. These features all support:
- Adjacency queries: adjacent face, vertex, edge at the same level.
- Hierarchy: parent faces, finer-level feature access.
- Boundary queries.
- Ordering among features supports STL or other higher-level data structures.
- Additional vertex operations:
- Access CV position at this vertex.
- Set edit information at this vertex.
- Compute influence of all coarser-level vertices on this vertex, for convenience in recomputing position after edits.
- Compute position where this vertex maps on the surface.
- Compute normal at this vertex on the surface.
- Additional edge operations:
- Adjacency: adjacent face, vertex, edge.
- Hierarchy: sub edge access.
- Boundary queries.
- Crease management for the vertex: set and query crease information.
- Additional face operations:
- Compute position or normal at a (u,v) parameter within this face.
- Surface level operations. Each level of the subdivision surface can be set up as an object with:
- Provides iterators over all faces, edges, and vertices at this level.
- Counting of faces, edges and vertices at this level.
- Subdivide entire level to get a finer level.
- Compute coarser-level influence on all vertices at this level.
- Subdivision surface operations:
- Provides iterators over all base-level faces, edges, and vertices.
- Access to base-level faces, edges, and vertices.
- Access to vertices, faces, and edges at any level.
- Tessellation:
- Limit positions at any level may be output as a watertight polygonal mesh.
- Surface CVs at any level may be output as a connected polygonal mesh. This allows a means for topological modification at finer levels in the surface.
- Other tessellation varieties are planned.
- NURBS output:
- A closely approximating NURBS representation of the subdivision surface may be produced.
- The NURBS representation is compatible with SMLib.
|
| Back To Top |
|
Copyright © SMLib, TSNLib, GSNLib, NLib, SDLib, VSLib, and PolyMLib are trademarks of Solid Modeling Solutions. ACIS is a registered trademark of Spatial Corporation. All rights reserved. |
| |
|
|
|
|