* feat(geometry): add Bentley-Ottmann line segment intersection algorithm
- Implement sweep-line algorithm for finding all intersection points
- Time complexity: O((n + k) log n) where n is segments, k is intersections
- Uses event queue (PriorityQueue) and status structure (TreeSet)
- Handles vertical/horizontal segments, collinear overlaps, and touching endpoints
- Includes comprehensive Javadoc with examples and references
* test(geometry): add comprehensive tests for Bentley-Ottmann algorithm
- 19 test cases covering typical, edge, and degenerate cases
- Tests include: single/multiple intersections, parallel segments, grid patterns
- Performance test with 100 random segments
- All tests validate correctness of intersection detection
* style(geometry): fix code style
* test(geometry): Achieve 100% test coverage for BentleyOttmann
* style(geometry): fix code style again
* fix: correct import order in BentleyOttmann
* fix(geometry): Resolve SpotBugs and PMD static analysis warnings
* Reorder import statements in BentleyOttmannTest
---------
Co-authored-by: Deniz Altunkapan <deniz.altunkapan@outlook.com>
* Fix ConvexHull to return points in counter-clockwise order
- Add sortCounterClockwise method to ensure CCW ordering
- Start from bottom-most, left-most point for deterministic results
- Fix issue where unordered HashSet broke downstream algorithms
- Add comprehensive tests with CCW order verification
* test(geometry): Achieve 100% test coverage for ConvexHull
* test: added Tests for Point.java
* style: fixed formatting and comments
* style: formatted with clang-format and renamed variables
* style: fixed imports to not use the '.*' form
---------
Co-authored-by: Aaron <aaron@hochschule.de>
Co-authored-by: Deniz Altunkapan <93663085+DenizAltunkapan@users.noreply.github.com>