-
Notifications
You must be signed in to change notification settings - Fork 0
Merge working #37
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
Merged
Merged
Merge working #37
Conversation
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
- Documented DEFAULT_SCALE and DEFAULT_AMOUNT constants to clarify their purpose and default values. - Added explanations for the removeFaces, scale, and amount fields to improve code readability and maintainability.
- Documented all fields, including `DEFAULT_HOLE_PERCENTAGE`, `DEFAULT_THICKNESS`, `holePercentage`, `thickness`, and `mesh`.
- Enhanced SolidifyModifier class to streamline the workflow and ensure better modularity. - Introduced the use of parallel streams for efficient vertex transformations. - Added comprehensive Javadoc for all methods and fields to improve code readability and maintainability. - Reorganized initialization steps into smaller methods for better clarity. - Improved edge mapping and hole bridging logic for robustness. - Replaced the old result handling mechanism with an in-place modification approach.
- Enhanced the `RandomHolesModifier` class with detailed Javadoc for better readability and maintainability. - Improved field validations and added safeguards to handle edge cases: - Added null checks for mesh and face collections. - Validated the percentage range for hole sizes (`minAmount` and `maxAmount`). - Updated constructors to ensure proper initialization and validation. - Replaced direct removal of faces in the `modify` methods with a safer and more consistent approach. - Introduced default constants (`DEFAULT_MIN_AMOUNT` and `DEFAULT_MAX_AMOUNT`) for better reusability. - Used `ExtrudeModifier` to consistently apply hole creation logic. - Added Javadoc to explain method functionality and parameter requirements.
ro avoid null pointer exception.
- Updated JavaDoc for improved clarity and consistency across the `InsetModifier` class. - Renamed `processFaceEdges` to `insetFace` to better reflect its functionality. - Enhanced validation checks and exception messages for better error handling. - Improved overall readability of the code with clearer comments and formatting. - Added detailed descriptions for all fields, methods, and parameters to align with best practices.
documentation - Enhanced the `modify` method to prevent modification of the original face collection when the entire mesh is targeted, ensuring thread safety and preserving mesh integrity. - Improved validation logic and early exit checks for performance optimization. - Updated `createExtrudeModifier` for consistent configuration of the extrude process. - Refactored and expanded JavaDoc comments for better clarity and coverage. - Preserved backward compatibility with the core functionality.
- Implements a `ShearModifier` class that applies a skewing transformation to a mesh along a specified axis and factor. - Supports six shear axes: XY, XZ, YX, YZ, ZX, and ZY, enabling flexibility for different transformations. - Includes: - Parameter validation to prevent null or invalid inputs. - A parallelized vertex processing pipeline for improved performance on large meshes. - Getter and setter methods for shear factor and axis to allow dynamic reconfiguration. - Provides comprehensive JavaDoc comments for all methods, improving usability and clarity for developers.
- Added a unit test to validate the fix for incorrect index order in pentagonal faces generated by BevelEdgesModifier when applied to an icosphere. - Ensures proper functionality of the `toReverseArray` method after simplifying the logic. - Verifies generated face indices against expected values to prevent regressions.
processing - Introduced `EdgeProcessor` as a dedicated utility class to manage edge mapping and processing, improving modularity and encapsulation. - Replaced redundant logic in old edge processing with a cleaner, reusable approach. - Simplified the `toReverseArray` method and corrected its behavior to properly reverse the list order. - Improved readability by adding clear method-level documentation for inset face and edge processing steps. - Optimized `createFacesVertex` with enhanced traversal logic using `EdgeProcessor`. - Streamlined vertex inset calculation to handle width types consistently, adhering to geometric principles. - Consolidated internal collections (e.g., `processed`, `oldEdgeToNewEdge`) into `EdgeProcessor` for better abstraction and easier maintenance. - Maintained functionality for inset and bevel edge creation while improving code structure, efficiency, and maintainability.
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.
No description provided.