Apache Commons Geometry 1.0 正式发布
Apache Commons Geometry 是一个用于几何处理的通用 Java 库。该代码起源于 commons-math 项目的 org.apache.commons.math3.geometry 包, 但为了更好的可维护性被拉到一个单独的项目中。从那以后,它经历了许多改进,包括对核心接口和类的重大重构。
Apache Commons Geometry 1.0 正式发布,更新内容如下:
新特性:
- GEOMETRY-118: 添加特定坐标的转换方法到
AffineTransformMatrixXD类,例如 "applyX"、"applyY"、"applyZ"; - GEOMETRY-95: 增加实体几何学教程;
- GEOMETRY-120: 添加
SimpleTriangleMeshBuilder.addFace(int[])方法作为替代addFace(int, int, int); - GEOMETRY-117: 为 AffineTransformMatrix2D 添加
shear方法; - GEOMETRY-119: 添加
VectorXD.normalizeOrNull()方法,以便调用者能够 检测规范化的失败,而不需要捕捉异常; - GEOMETRY-115: 为 IO 功能添加模块:commons-geometry-io-core, commons-geometry-io-euclidean;
- GEOMETRY-108: 增加 BoundaryList 接口和实现类;
错误修复:
- GEOMETRY-116: 修复了不正确的 OSGi headers;
变化:
- GEOMETRY-138: 不要在 IO 模块中使用检查过的异常;
- GEOMETRY-13: 使用 Commons Numbers 的 Norms.EUCLIDEAN 来计算 3D Euclidean 规范值;
- GEOMETRY-126: 用
VectorXD.Sum类替换VectorXD.linearCombination方法,使用 Commons Numbers 的 Sum 类来计算内部线性组合; - GEOMETRY-124: 将 DoublePrecisionContext 替换成 Precision.DoubleEquivalence;
- GEOMETRY-109: 将
BoundarySourceXX.from()static factory 方法更名为"of",以更好地匹配 JDK 的 Stream.of() 方法; - GEOMETRY-103: 将单元测试迁移到 JUnit 5;
更多详情可查看:https://commons.apache.org/proper/commons-geometry/changes-report.html