Merge branch 'dev' of https://github.com/dimforge/nalgebra into swap-unchecked-ub

This commit is contained in:
Yotam Ofek 2024-03-20 16:37:44 +00:00
commit d1b5df480f
8 changed files with 42 additions and 2 deletions

View File

@ -22,6 +22,7 @@ This project adheres to [Semantic Versioning](https://semver.org/).
- Add the methods `Matrix1::as_scalar`, `::as_scalar_mut`, `::to_scalar`, `::into_scalar`. - Add the methods `Matrix1::as_scalar`, `::as_scalar_mut`, `::to_scalar`, `::into_scalar`.
- Add `Rotation3::euler_angles_ordered`, a generalized euler angles calculation. - Add `Rotation3::euler_angles_ordered`, a generalized euler angles calculation.
- Add the `glam-0.24` feature to enable conversion from/to types from `glam` v0.24. - Add the `glam-0.24` feature to enable conversion from/to types from `glam` v0.24.
- Add the `glam-0.25` feature to enable conversion from/to types from `glam` v0.25.
- Add the `lerp` method to points. - Add the `lerp` method to points.
- Implement `Clone` for `MatrixIter`. - Implement `Clone` for `MatrixIter`.

View File

@ -48,6 +48,7 @@ convert-glam021 = [ "glam021" ]
convert-glam022 = [ "glam022" ] convert-glam022 = [ "glam022" ]
convert-glam023 = [ "glam023" ] convert-glam023 = [ "glam023" ]
convert-glam024 = [ "glam024" ] convert-glam024 = [ "glam024" ]
convert-glam025 = [ "glam025" ]
# Serialization # Serialization
## To use serde in a #[no-std] environment, enable the ## To use serde in a #[no-std] environment, enable the
@ -103,6 +104,7 @@ glam021 = { package = "glam", version = "0.21", optional = true }
glam022 = { package = "glam", version = "0.22", optional = true } glam022 = { package = "glam", version = "0.22", optional = true }
glam023 = { package = "glam", version = "0.23", optional = true } glam023 = { package = "glam", version = "0.23", optional = true }
glam024 = { package = "glam", version = "0.24", optional = true } glam024 = { package = "glam", version = "0.24", optional = true }
glam025 = { package = "glam", version = "0.25", optional = true }
rayon = { version = "1.6", optional = true } rayon = { version = "1.6", optional = true }
[dev-dependencies] [dev-dependencies]

View File

@ -1,4 +1,4 @@
use na::{self, Unit}; use na::Unit;
use crate::aliases::Qua; use crate::aliases::Qua;
use crate::RealNumber; use crate::RealNumber;

View File

@ -1,7 +1,6 @@
use approx::AbsDiffEq; use approx::AbsDiffEq;
use num::{Bounded, Signed}; use num::{Bounded, Signed};
use core::cmp::PartialOrd;
use na::Scalar; use na::Scalar;
use simba::scalar::{ClosedAdd, ClosedMul, ClosedSub, RealField}; use simba::scalar::{ClosedAdd, ClosedMul, ClosedSub, RealField};

View File

@ -625,6 +625,15 @@ pub struct CscTripletIter<'a, T> {
values_iter: Iter<'a, T>, values_iter: Iter<'a, T>,
} }
impl<'a, T> Clone for CscTripletIter<'a, T> {
fn clone(&self) -> Self {
CscTripletIter {
pattern_iter: self.pattern_iter.clone(),
values_iter: self.values_iter.clone(),
}
}
}
impl<'a, T: Clone> CscTripletIter<'a, T> { impl<'a, T: Clone> CscTripletIter<'a, T> {
/// Adapts the triplet iterator to return owned values. /// Adapts the triplet iterator to return owned values.
/// ///

View File

@ -626,6 +626,15 @@ pub struct CsrTripletIter<'a, T> {
values_iter: Iter<'a, T>, values_iter: Iter<'a, T>,
} }
impl<'a, T> Clone for CsrTripletIter<'a, T> {
fn clone(&self) -> Self {
CsrTripletIter {
pattern_iter: self.pattern_iter.clone(),
values_iter: self.values_iter.clone(),
}
}
}
impl<'a, T: Clone> CsrTripletIter<'a, T> { impl<'a, T: Clone> CsrTripletIter<'a, T> {
/// Adapts the triplet iterator to return owned values. /// Adapts the triplet iterator to return owned values.
/// ///

View File

@ -20,3 +20,5 @@ mod v022;
mod v023; mod v023;
#[cfg(feature = "glam024")] #[cfg(feature = "glam024")]
mod v024; mod v024;
#[cfg(feature = "glam025")]
mod v025;

18
src/third_party/glam/v025/mod.rs vendored Normal file
View File

@ -0,0 +1,18 @@
#[path = "../common/glam_isometry.rs"]
mod glam_isometry;
#[path = "../common/glam_matrix.rs"]
mod glam_matrix;
#[path = "../common/glam_point.rs"]
mod glam_point;
#[path = "../common/glam_quaternion.rs"]
mod glam_quaternion;
#[path = "../common/glam_rotation.rs"]
mod glam_rotation;
#[path = "../common/glam_similarity.rs"]
mod glam_similarity;
#[path = "../common/glam_translation.rs"]
mod glam_translation;
#[path = "../common/glam_unit_complex.rs"]
mod glam_unit_complex;
pub(self) use glam025 as glam;