Skip to content

Implement selector filtering and JSON clash set configuration#40

Merged
ocni-dtu merged 3 commits into
mainfrom
chrk/34_clash_sets
Mar 28, 2026
Merged

Implement selector filtering and JSON clash set configuration#40
ocni-dtu merged 3 commits into
mainfrom
chrk/34_clash_sets

Conversation

@ocni-dtu
Copy link
Copy Markdown
Collaborator

Description

This pull request introduces multiple new features and enhancements:

  • Introduced Selector for flexible filtering of IFC elements by type, GUID, or exclusion.
  • Added support for JSON-based clash set configuration to define custom clash detection scenarios using clash_detect_with_config.
  • Updated clash detection logic to handle clash sets and integrate selector functionality.
  • Enhanced CLI with a new --clashSet option for providing JSON configurations.
  • Added test cases for selector functionality and clash set configuration.
  • Updated Cargo.toml to include serde and serde_json dependencies.

Checklist

  • Tests added for new functionality
  • Documentation updated as needed
  • CI pipelines passing

- Added `Selector` for flexible filtering of IFC elements by type, GUID, or exclusion.
- Introduced JSON-based clash set configuration to define clash scenarios (`clash_detect_with_config`).
- Updated clash detection logic to handle clash sets and integrate selectors.
- Enhanced CLI to support `--clashSet` for providing JSON configurations.
- Added tests for selector functionality and JSON clash set handling.
- Modified `Cargo.toml` to add `serde` and `serde_json` dependencies.
- Reformatted multi-line function arguments for better clarity.
- Simplified collection and filtering logic in `selector.rs`.
- Adjusted nested `if` conditions to use more compact expressions.
- Minor cleanup of trailing whitespace and import ordering.
…tation

- Replaced `Point` with `Vector` for geometry-related calculations in `clash_engine` and tests.
- Updated from `Qbvh` to `Bvh` with `BvhBuildStrategy::Binned`.
- Adjusted broad-phase query logic in collision handling to match new BVH implementation.
- Added error handling for `TriMesh` construction and aligned tests accordingly.
- Updated dependencies in `Cargo.toml` to the latest versions.
@ocni-dtu ocni-dtu merged commit 7daf045 into main Mar 28, 2026
3 checks passed
@ocni-dtu ocni-dtu deleted the chrk/34_clash_sets branch March 28, 2026 19:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant