Commit graph

1061 commits

Author SHA1 Message Date
Alex Butler
a3965d414d
Update approx -> 0.2 2018-05-23 12:43:52 +01:00
Richard Dodd
2a7e2ebda3 Fix simd 2018-04-29 17:04:49 +01:00
Richard Dodd
f8e92ed327 Add is_finite to array and quaternion 2018-04-29 14:21:42 +01:00
Richard Dodd
f82e421e2c Fix for simd 2018-04-28 15:09:45 +01:00
Richard Dodd
4fede94df5 Add is_finite method to vectors and matrices.
This method is useful in debug to error early when some kind of
singularity is encountered.
2018-04-28 11:34:45 +01:00
Osspial
def53ca371 Fix some documentation 2018-03-16 16:32:46 -04:00
Osspial
34da833e39 Add map functions to points and vectors 2018-01-20 23:54:59 -05:00
Osspial
d1cd15a45b Implement ElementWise for PointN 2018-01-05 15:09:12 -05:00
Brendan Zabarauskas
574dd3b972 Run rustfmt on most files 2018-01-03 13:16:40 +11:00
Brendan Zabarauskas
68b9052be1 Remove experimantal must_use annotations 2018-01-03 12:41:43 +11:00
Aceeri
fe8ec2beb9 Fix docs for unit_z on Vector3 2017-12-03 17:57:37 -08:00
Martin Lindhe
2acb4a968a fix some typos 2017-11-19 13:30:15 +01:00
Brendan Zabarauskas
43a6b2be8c Merge pull request #426 from Osspial/point_ops
Add vector subtraction for all points
2017-10-23 23:11:41 +11:00
G. Endignoux
d1e6cc4a03 Add Matrix4::look_at_dir (fix #433). 2017-10-23 12:40:35 +02:00
Osspial
0a9c51da82 Fix incorrect operator in sub_assign impl 2017-10-06 00:20:38 -04:00
Brendan Zabarauskas
ccc81b4760 Merge pull request #432 from elrnv/swizzle
Swizzle Operators
2017-10-02 09:13:07 +11:00
Egor Larionov
76f00b7941 Extend swizzles to increase the dimension of a vector.
For example this is now valid:
```
let p2 = Point2::new(1.0, 2.0);
let p3 = p2.xyx(); // producing Point3 { x:1.0, y:2.0, z:1.0 }
```
2017-09-30 15:09:03 -07:00
Egor Larionov
cc7047555d Complete the list of generated swizzle operators. 2017-09-30 14:41:17 -07:00
Egor Larionov
985db6b604 Initial implementation of swizzle operators using a build script that generates
a macro, which is included in macros.rs and subsequently used to implement
swizzle operators in vectors and points
2017-09-30 01:38:03 -07:00
Simon Rönnberg
8343e40b48 Adding inverse transformation of a vector. 2017-09-28 22:32:23 +02:00
Brendan Zabarauskas
3543ac0274 Merge pull request #427 from Osspial/cast_option
Modify cast functions to return Option
2017-08-22 19:32:57 +10:00
Brendan Zabarauskas
bba6285f4d Merge pull request #420 from DataAnalysisCosby/master
Added project_on to InnerSpace
2017-08-22 19:31:07 +10:00
Matthew Plant
bc9c5b7f79 Added project_on to InnerSpace 2017-08-21 13:47:15 -07:00
Osspial
bd1b2667bd Fix building with SIMD enabled 2017-08-16 16:47:45 -04:00
Osspial
a6abd5bf02 Modify cast() functions to return Option 2017-08-16 16:21:51 -04:00
Osspial
b2b715c020 Add vector subtraction bound to EuclideanSpace 2017-08-10 18:50:11 -04:00
Osspial
66ee40e4c7 Re-export num_traits::Bounded 2017-08-09 23:47:35 -04:00
Osspial
4580cb3aca Add Sub and SubAssign <Vector> for all Points 2017-08-09 14:12:51 -04:00
Osspial
6981d0cacd Implement Bounded for angles 2017-08-08 19:17:16 -04:00
Osspial
1e98ef4dd4 Add Bounded impl for Vectors and Points 2017-08-08 19:11:14 -04:00
harrison
42cb73de8e fixed len for simd 2017-07-31 16:54:40 -04:00
harrison
9b84d804ae added len function to Array 2017-07-31 16:13:15 -04:00
Brendan Zabarauskas
343361a0d6 Merge pull request #418 from kvark/mint2
Mint flavour integration
2017-07-30 22:47:59 +10:00
Owen Sanchez
51b3d2d477 Add cast method to Quaternion 2017-07-13 12:24:30 -07:00
Dzmitry Malyshau
d72fc08826 Mint flavour 2017-06-06 18:07:38 -04:00
Dzmitry Malyshau
7a21125c55 Refined serde dependencies 2017-06-06 16:48:55 -04:00
Dzmitry Malyshau
087336d0c0 Refinded simd feature 2017-06-06 16:44:13 -04:00
Brendan Zabarauskas
a0e370ff7b Fix matrix inversions for small determinants
Closes #210
2017-05-13 18:51:59 +10:00
Brendan Zabarauskas
b6199ca702 Remove PartialOrd
Closes #396

This removes `PartialOrd` and makes `BaseNum` and `BaseFloat` simple trait aliases. This should allow more types to be used as parameters in the cgmath data types at the expense of removing `Array::min` and `Array::max`.
2017-05-06 17:12:52 +10:00
Brendan Zabarauskas
cb31bbdef6 Clean up some type projections 2017-05-02 21:15:32 +10:00
kennytm
f524d40403
Workaround rust-lang/rust#41478.
Replace all `impl .. for Struct<<A as Angle>::Unitless>` by
`Struct<A::Unitless>`. This allows -Zsave-analysis to work on nightly, and
I think this is more readable too.
2017-05-02 01:15:46 +08:00
Brendan Zabarauskas
ff2d15e0ff Implement Sum for Angle 2017-04-26 21:56:02 +10:00
Brendan Zabarauskas
77260934a1 Clean up Sum and Product impls
This is for consistency with other impls
2017-04-26 21:56:02 +10:00
Ben Boeckel
240559b941 iter traits: impl iter::{Sum, Product}
This adds `Sum` trait for the `MatrixN`, `VectorN`, `Quaternion`
structures and the `Product` trait for `MatrixN`, `BasisN` and
`Quaternion`.

It also add constraints on the `Rotation` and `SquareMatrix` to require
the `Product` trait and `VectorSpace` to require `Sum`.
2017-04-25 11:01:18 -04:00
Eyal Kalderon
6717b4714b Update serialization to serde v1.0 2017-04-22 18:31:50 -04:00
Brendan Zabarauskas
78555ec780 Drop rustc-serialize support
According to [Rust release milestone predictions](https://internals.rust-lang.org/t/rust-release-milestone-predictions/4591?u=dtolnay), rustc-serialize is scheduled to be deprecated in next month's beta release of Rust.

Closes #395
2017-04-16 16:35:24 +10:00
Brendan Zabarauskas
b73180e908 Workaround compilation error on nightly rust 2017-04-14 23:36:02 +10:00
Brendan Zabarauskas
613d2b7f23 Merge pull request #400 from andystanton/fix_between_vectors_for_opposite_vectors
Fix between_vectors for opposite vectors
2017-04-14 22:10:33 +10:00
andystanton
cd9e873739 Fix between_vectors for opposite vectors 2017-04-14 00:23:02 +01:00
Magnus Bergmark
1c3d30a1e8
Bump to serde 0.9 2017-04-04 23:47:01 +02:00