Package org.episteme.core.mathematics.geometry.boundaries
package org.episteme.core.mathematics.geometry.boundaries
Comprehensive boundary and region support for geometric modeling.
This package provides a complete framework for representing spatial boundaries in 2D and 3D, including support for complex territorial shapes with enclaves and exclaves.
Core Interfaces
Boundary- Base interface for all boundariesBoundary2D- 2D boundary interface (polygons)Boundary3D- 3D boundary interface (polyhedra)BoundingBox- Axis-aligned bounding box interface
2D Boundaries
ConvexPolygon2D- Convex polygonCompositeBoundary2D- Multiple regions with enclaves/exclavesFuzzyBoundary2D- Fuzzy membership boundariesBoundingBox2D- 2D axis-aligned box
3D Boundaries
ConvexPolyhedron3D- Convex polyhedronCompositeBoundary3D- Multiple volumes with cavitiesBoundingBox3D- 3D axis-aligned box
Special Boundaries
PointBoundary- Zero-dimensional point
Utilities
BoundaryConverter- 2D↔3D conversion
Enclave/Exclave Support
The composite boundary classes support complex territorial configurations:
- Exclaves - Multiple disjoint regions belonging to the same entity
- Enclaves - Holes/exclusions within a region
- Third-degree cases - Enclaves within enclaves (counter-enclaves)
Example: Modeling Baarle-Hertog/Baarle-Nassau (Belgium/Netherlands border):
CompositeBoundary2D belgium = new CompositeBoundary2D();
belgium.addInclusion(mainBelgiumTerritory);
belgium.addInclusion(baarleHertogExclave1);
// Dutch enclave within Belgian exclave
CompositeBoundary2D baarleWithEnclave = new CompositeBoundary2D(baarleHertogExclave2);
baarleWithEnclave.addExclusion(dutchCounterEnclave);
belgium.addInclusion(baarleWithEnclave);
- Since:
- 1.0
- Author:
- Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
-
ClassDescriptionBoundary<P>Base interface for all geometric boundaries.Interface for two-dimensional boundaries (regions in a plane).Interface for three-dimensional boundaries (volumes).Represents a face of the 3D boundary.Utility class for converting between boundary dimensions.BoundingBox<P>Axis-aligned bounding box for any boundary.Axis-aligned bounding box in 2D.Axis-aligned bounding box in 3D.A composite boundary supporting inclusions (exclaves) and exclusions (enclaves).A composite 2D boundary supporting exclaves and enclaves.Result of a containment check with detailed status.A composite 3D boundary supporting exclaves and enclaves.Containment result with detailed status.A convex polygon in 2D space.A convex polyhedron in 3D space.Represents a triangular face.A 2D boundary with fuzzy (graded) membership.A zero-dimensional boundary representing a single point.