vector-traits 0.6.2

Rust traits for 2D and 3D vector types.
Documentation
// SPDX-License-Identifier: MIT OR Apache-2.0
// Copyright (c) 2023, 2025 lacklustr@protonmail.com https://github.com/eadf

// This file is part of vector-traits.

#[test]
fn test_nalgebra_xy() {
    crate::tests::vector_2d::test_xy::<nalgebra::Vector2<f32>>(1.0, 2.0);
    crate::tests::vector_2d::test_xy::<nalgebra::Vector2<f64>>(1.0, 2.0);
    crate::tests::vector_2d::test_xy::<nalgebra::Point2<f32>>(1.0, 2.0);
    crate::tests::vector_2d::test_xy::<nalgebra::Point2<f64>>(1.0, 2.0);
}

#[test]
fn test_nalgebra_xyz() {
    crate::tests::vector_3d::test_xyz::<nalgebra::Vector3<f32>>(1.0, 2.0, 3.0);
    crate::tests::vector_3d::test_xyz::<nalgebra::Vector3<f64>>(1.0, 2.0, 3.0);
    crate::tests::vector_3d::test_xyz::<nalgebra::Point3<f32>>(1.0, 2.0, 3.0);
    crate::tests::vector_3d::test_xyz::<nalgebra::Point3<f64>>(1.0, 2.0, 3.0);
}

#[test]
fn test_nalgebra_gxy() {
    crate::tests::vector_2d::test_gxy::<nalgebra::Vector2<f32>>(1.0, 2.0, 3.0);
    crate::tests::vector_2d::test_generic_xy::<nalgebra::Vector2<f32>>(1.0, 2.0, 3.0, 0.00000001);
    crate::tests::vector_2d::test_gxy::<nalgebra::Vector2<f64>>(1.0, 2.0, 3.0);
    crate::tests::vector_2d::test_generic_xy::<nalgebra::Vector2<f64>>(1.0, 2.0, 3.0, 0.00000001);
}

#[test]
fn test_nalgebra_gxyz() {
    crate::tests::vector_3d::test_gxyz::<nalgebra::Vector3<f32>>(1.0, 2.0, 3.0);
    crate::tests::vector_3d::test_generic_xyz::<nalgebra::Vector3<f32>>(1.0, 2.0, 3.0, 4.0, 0.0001);
    crate::tests::vector_3d::test_gxyz::<nalgebra::Vector3<f64>>(1.0, 2.0, 3.0);
    crate::tests::vector_3d::test_generic_xyz::<nalgebra::Vector3<f64>>(1.0, 2.0, 3.0, 4.0, 0.0001);
}

#[test]
fn test_nalgebra_matrix() {
    crate::tests::affine::test_affine2d_v1::<nalgebra::Vector2<f32>>();
    crate::tests::affine::test_affine2d_v1::<nalgebra::Vector2<f64>>();
    crate::tests::affine::test_affine2d_v2::<nalgebra::Vector2<f32>>();
    crate::tests::affine::test_affine2d_v2::<nalgebra::Vector2<f64>>();

    crate::tests::affine::test_affine3d_v1::<nalgebra::Vector3<f32>>("nalgebra32_3d");
    crate::tests::affine::test_affine3d_v1::<nalgebra::Vector3<f64>>("nalgebra64_3d");
}

#[test]
fn test_nalgebra_aabb2_f32() {
    crate::tests::aabb_2d::test_aabb2_comprehensive::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_from_corners::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_from_center_and_half_extents::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_from_center_and_size::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_from_points::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_pad::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_fast_pad::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_is_empty::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_from_point::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_extend_with::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_extend::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_aabb2_contains_point_inclusive::<nalgebra::Vector2<f32>>();
    crate::tests::aabb_2d::test_extents::<nalgebra::Vector2<f32>>();
}

#[test]
fn test_nalgebra_aabb2_f64() {
    crate::tests::aabb_2d::test_aabb2_comprehensive::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_from_corners::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_from_center_and_half_extents::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_from_center_and_size::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_from_points::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_pad::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_fast_pad::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_is_empty::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_from_point::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_extend_with::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_extend::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_aabb2_contains_point_inclusive::<nalgebra::Vector2<f64>>();
    crate::tests::aabb_2d::test_extents::<nalgebra::Vector2<f64>>();
}

#[test]
fn test_nalgebra_aabb3_f32() {
    crate::tests::aabb_3d::test_aabb3_comprehensive::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_from_corners::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_from_center_and_half_extents::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_from_center_and_size::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_from_points::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_pad::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_fast_pad::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_is_empty::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_from_point::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_extend_with::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_extend::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_aabb3_contains_point_inclusive::<nalgebra::Vector3<f32>>();
    crate::tests::aabb_3d::test_extents::<nalgebra::Vector3<f32>>();
}

#[test]
fn test_nalgebra_aabb3_f64() {
    crate::tests::aabb_3d::test_aabb3_comprehensive::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_from_corners::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_from_center_and_half_extents::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_from_center_and_size::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_from_points::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_pad::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_fast_pad::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_is_empty::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_from_point::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_extend_with::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_extend::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_aabb3_contains_point_inclusive::<nalgebra::Vector3<f64>>();
    crate::tests::aabb_3d::test_extents::<nalgebra::Vector3<f64>>();
}

#[test]
fn test_nalgebra_plane_f32() {
    crate::tests::plane::test_get_plane_xy::<nalgebra::Vector3<f32>>();
    crate::tests::plane::test_get_plane_xz::<nalgebra::Vector3<f32>>();
    crate::tests::plane::test_get_plane_yz::<nalgebra::Vector3<f32>>();
    crate::tests::plane::test_get_bad_plane::<nalgebra::Vector3<f32>>();
    crate::tests::plane::test_get_plane_relaxed::<nalgebra::Vector3<f32>>();

    crate::tests::affine::test_affine3d_plane_xy::<nalgebra::Vector3<f32>>();
    crate::tests::affine::test_affine3d_plane_xz::<nalgebra::Vector3<f32>>();
    crate::tests::affine::test_affine3d_plane_yz::<nalgebra::Vector3<f32>>();
}
#[test]
fn test_nalgebra_plane_f64() {
    crate::tests::plane::test_get_plane_xy::<nalgebra::Vector3<f64>>();
    crate::tests::plane::test_get_plane_xz::<nalgebra::Vector3<f64>>();
    crate::tests::plane::test_get_plane_yz::<nalgebra::Vector3<f64>>();
    crate::tests::plane::test_get_bad_plane::<nalgebra::Vector3<f64>>();
    crate::tests::plane::test_get_plane_relaxed::<nalgebra::Vector3<f64>>();

    crate::tests::affine::test_affine3d_plane_xy::<nalgebra::Vector3<f64>>();
    crate::tests::affine::test_affine3d_plane_xz::<nalgebra::Vector3<f64>>();
    crate::tests::affine::test_affine3d_plane_yz::<nalgebra::Vector3<f64>>();
}

#[test]
fn test_nalgebra_affine_f32() {
    crate::tests::affine::test_affine3d_scale_and_translation::<nalgebra::Vector3<f32>>();
}

#[test]
fn test_nalgebra_affine_f64() {
    crate::tests::affine::test_affine3d_scale_and_translation::<nalgebra::Vector3<f64>>();
}