Shells
The Shells tool analyzes disconnected components (shells) within a surface object, computing statistics for each shell and providing visualization options to differentiate and identify individual components. This analysis is valuable for understanding multi-component surfaces and assessing shell characteristics.
Overview
A surface may contain multiple disconnected shells—separate, independent mesh regions that don't share vertices or edges. The Shells tool:
- Identifies all distinct shells within the active surface
- Computes geometric statistics for each shell
- Visualizes shells using color mapping
- Exports statistical data for further analysis
This information helps with:
- Component identification: Understanding how many separate parts exist
- Quality assessment: Identifying unusually small or large shells
- Filtering decisions: Informing which shells to keep or remove
- Surface characterization: Understanding the composition of complex models
Accessing the Tool
Navigate to the Surface ribbon tab and locate Shells in the Analyze section. Select a surface object before activating the tool.
Visualization Methods
Four visualization methods are available, each colorizing shells based on different criteria:
Shell IDs
Visualize a color map representing shell IDs
Each shell is assigned a unique color based on its identification number. This visualization:
- Provides clear differentiation between all shells
- Makes it easy to count and identify separate components
- Uses a categorical color scheme for maximum distinction
This is the default method and is most useful for general shell identification.
Shell Volumes
Visualize a color map representing shell volumes
Shells are colorized based on their enclosed volume (for closed shells):
- Larger volumes appear as warmer colors
- Smaller volumes appear as cooler colors
- Open shells may display zero or undefined volume
This visualization helps identify the primary (largest) components versus smaller fragments or debris.
Shell Surface Areas
Visualize a color map representing shell surface areas
Shells are colorized based on their total surface area:
- Larger surface areas appear as warmer colors
- Smaller surface areas appear as cooler colors
Surface area provides a measure of shell size that works for both open and closed surfaces.
Triangle Counts
Visualize a color map representing the number of triangles in each shell
Shells are colorized based on their triangle count:
- More triangles appear as warmer colors
- Fewer triangles appear as cooler colors
This visualization reveals mesh density distribution and can help identify over- or under-tessellated regions.
Statistics Table
The statistics table displays computed metrics for each shell:
| Column | Description |
|---|---|
| Shell ID | Unique identifier for each shell |
| Triangles | Number of triangles in the shell |
| Surface area | Total surface area (mm²) |
| Volume | Enclosed volume for closed shells (mm³) |
The table allows you to:
- Sort shells by any metric
- Identify the largest or smallest shells
- Find shells matching specific criteria
- Select shells for further operations
Actions
Update
Click Update to recalculate shell statistics and update the visualization. Use this after:
- Selecting a different surface
- Modifying the surface geometry
- Changing the visualization method
Export Statistics
Click Export Statistics... to save the shell analysis data to a file. The export includes:
- All computed statistics for each shell
- Summary information
- Data suitable for spreadsheet analysis
Practical Applications
Model Validation
Before processing or exporting a model:
- Run shell analysis
- Verify the expected number of shells
- Check for unexpected small shells (potential artifacts)
- Confirm major components have appropriate volumes
Pre-Processing Assessment
Before mesh operations:
- Analyze shell composition
- Identify shells that should be removed (using Filter Shells)
- Note shell volumes for verification after operations
- Document original shell statistics
Multi-Component Analysis
For models with intentionally separate parts:
- Visualize shells to confirm separation
- Review volumes to verify each component
- Identify any merged or split components
- Use statistics for component verification
Quality Inspection
For incoming meshes or scan data:
- Analyze for unexpected shell count
- Identify very small shells (noise, artifacts)
- Check that main geometry is intact
- Export statistics for quality records
Technical Considerations
Shell Identification
Shells are identified through mesh connectivity:
- Vertices connected by edges belong to the same shell
- No path exists between vertices of different shells
- Each triangle belongs to exactly one shell
Volume Calculation
Volume is computed for closed (watertight) shells:
- Uses the signed volume method based on triangle orientations
- Requires consistent normal directions for accurate results
- Open shells or shells with inconsistent normals may show incorrect volumes
Performance
Shell analysis involves:
- Connectivity analysis: O(n) where n is triangle count
- Volume calculation: O(n) per shell
- Overall: Efficient for typical mesh sizes
Very complex meshes with thousands of shells may take longer to analyze.
Relationship to Other Tools
The Shells analysis tool complements:
- Filter Shells: Use analysis results to decide filtering criteria
- Split: Separates shells into distinct surface objects
- Merge: Combines separate surfaces (creates single object with multiple shells)
- Diagnostics and Fixes: Identifies topological issues within shells
Interpretation Guidelines
Expected vs. Unexpected Shells
| Scenario | Interpretation |
|---|---|
| Single shell, expected | Normal solid object |
| Multiple shells, expected | Multi-component model (assembly) |
| Many small shells | Possible artifacts, noise, or fragments |
| Unexpected shell count | May indicate topology issues |
Shell Size Distribution
| Pattern | Typical Cause |
|---|---|
| One large, many tiny | Main geometry + artifacts |
| Several similar sizes | Multi-part assembly |
| Widely varying sizes | Mixed content (geometry + debris) |
| All similar sizes | Regular pattern or designed components |
Common Issues and Solutions
| Issue | Likely Cause | Solution |
|---|---|---|
| More shells than expected | Unintended disconnections | Check model for gaps; use Merge tool |
| Fewer shells than expected | Unintended connections | Check for bridging geometry; use Split |
| Zero volume for some shells | Open or inconsistent shells | Check shell closure; fix normals |
| Negative volumes | Inverted normals | Use Diagnostics and Fixes to correct normals |
| Visualization not updating | Analysis not refreshed | Click Update after changes |