Implement selector filtering and JSON clash set configuration#40
Merged
Conversation
- 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.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This pull request introduces multiple new features and enhancements:
Selectorfor flexible filtering of IFC elements by type, GUID, or exclusion.clash_detect_with_config.--clashSetoption for providing JSON configurations.Cargo.tomlto includeserdeandserde_jsondependencies.Checklist