-
Notifications
You must be signed in to change notification settings - Fork 1
Add workspace analyzer and user docs #14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a comprehensive Workspace Analyzer module for robotic workspace analysis in EmbodiChain. The module provides both joint space and Cartesian space analysis capabilities with extensive configuration options, multiple sampling strategies, visualization tools, caching mechanisms, and performance metrics.
Key Changes:
- Added modular workspace analyzer with joint/Cartesian space analysis modes
- Implemented 7 sampling strategies (Uniform, Random, Halton, Sobol, LHS, Importance, Gaussian)
- Created visualization system with point cloud, voxel, and sphere renderers
- Added caching, constraint handling, and metrics computation modules
- Provided comprehensive documentation and example scripts
Reviewed changes
Copilot reviewed 50 out of 52 changed files in this pull request and generated 29 comments.
Show a summary per file
| File | Description |
|---|---|
workspace_analyzer.py |
Core analyzer with FK/IK computation and analysis modes |
samplers/iniform_sampler.py |
File name typo: should be "uniform_sampler.py" |
samplers/sobol_sampler.py |
Sobol sampler with missing import for SamplingStrategy |
samplers/sampler_factory.py |
Factory pattern for sampler creation |
visualizers/*.py |
Point cloud, voxel, and sphere visualizers with multiple backends |
configs/*.py |
Type-safe configuration classes for all components |
caches/*.py |
Memory and disk caching implementations |
constraints/*.py |
Workspace constraint checking system |
metrics/*.py |
Reachability, manipulability, and density metrics |
examples/*.py |
Working examples for joint and Cartesian analysis |
docs/*.md |
Comprehensive user documentation |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
embodichain/lab/sim/utility/workspace_analyzer/visualizers/voxel_visualizer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/constraints/base_constraint.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/caches/cache_utils.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/caches/cache_utils.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
embodichain/lab/sim/utility/workspace_analyzer/workspace_analyzer.py
Outdated
Show resolved
Hide resolved
|
@chase6305 I've opened a new pull request, #21, to work on those changes. Once the pull request is ready, I'll request review from you. |
|
@copilot open a new pull request to apply changes based on the comments in this thread |
|
@chase6305 I've opened a new pull request, #22, to work on those changes. Once the pull request is ready, I'll request review from you. |
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: chase6305 <61959467+chase6305@users.noreply.github.com>
…22) Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: chase6305 <61959467+chase6305@users.noreply.github.com>
Description
This PR introduces a comprehensive Workspace Analyzer module for robotic workspace analysis in EmbodiChain. The module provides both joint space and Cartesian space analysis capabilities to help understand robot reachability, workspace volume, and performance metrics.
Key Features Added:
Components Implemented:
Core Workspace Analyzer (
workspace_analyzer.py)Configuration System (
configs/)WorkspaceAnalyzerConfig: Main configuration dataclassSamplingConfig: Sampling strategy configurationCacheConfig: Result caching configurationVisualizationConfig: Visualization settingsMetricConfig: Metric computation settingsDimensionConstraint: Workspace constraintsSampling Strategies (
samplers/)Supporting Modules
Documentation Added:
workspace_analyzer.md): Comprehensive usage guide with examplesconfigs.md): Detailed configuration system documentationsamplers.md): In-depth sampling method descriptionsvisualizers.md): Visualization configuration guidecaches.md): Performance optimization documentationconstraints.md): Constraint system documentationmetrics.md): Analysis metrics documentationdexsim.tar.gz
Type of change
Checklist
black .command to format the code base.