Commit graph

889 commits

Author SHA1 Message Date
Pierre Krieger
8ab8d7551d Replace ToMatrix* by Into 2015-05-06 16:27:02 +02:00
Pierre Krieger
e5822e3864 Replace ToDeg/ToRad by From/Into 2015-05-06 16:27:02 +02:00
Pierre Krieger
8a34332f5f Rustup 2015-05-06 15:57:15 +02:00
Ryan Stewart
a058142a2c Get cgmath building in beta by removing remaining unstable feature use. Benching is unstable and therefore only available on nightly; removed from travis in the interim. 2015-05-06 15:57:15 +02:00
Dzmitry Malyshau
16302ffa20 Fixed the num crate 2015-04-24 23:28:31 -04:00
Pierre Krieger
d560242ed4 Allow writing matrix * scalar 2015-04-19 15:45:13 +02:00
Dzmitry Malyshau
498df01729 Fixed all the warnings, compile issues, and tests 2015-04-04 22:31:18 -04:00
Dzmitry Malyshau
b56ad542b3 Fixed NumCast and angles 2015-04-04 21:32:12 -04:00
Dzmitry Malyshau
8db429acae Using rust-lang/num 2015-04-04 21:19:11 -04:00
Dzmitry Malyshau
94d428d23e Fixed the Neg disaster 2015-04-04 20:15:00 -04:00
Colin Sherratt
4d1e21d609 Use PhantomData for Line 2015-03-29 17:39:47 -04:00
Colin Sherratt
f6b86fe4bd Add PhantomData to ray 2015-03-29 17:35:47 -04:00
Dzmitry Malyshau
b36039a6ee Fixed the tests 2015-03-25 22:14:17 -04:00
Dzmitry Malyshau
05c4147cec Fixed Index implementations 2015-03-25 21:58:33 -04:00
Jonathan Neuschäfer
7b9a9aac69 compile the doctest in rotation.rs; use ``` instead of ~~~ 2015-03-18 18:21:39 +01:00
Jonathan Neuschäfer
bc8a47fb8d use if/else if/else instead of match ()
It looks more idiomatic.
2015-03-18 18:21:39 +01:00
Jonathan Neuschäfer
f4ac3952bd Grammar/spelling fixes 2015-03-18 17:51:38 +01:00
Jonathan Neuschäfer
4c527f8334 s/AUTHORS file/Cargo.toml file/ 2015-03-18 17:51:03 +01:00
Jonathan Neuschäfer
556c5f2375 line.rs: destructure self with let, save indentation 2015-03-18 17:44:31 +01:00
Dzmitry Malyshau
1e4271c2a6 Exposed Ortho fields as public (last time it was Perspective) 2015-03-18 01:04:21 +03:00
Dzmitry Malyshau
c20350336e Exposed Ortho fields as public 2015-03-18 00:59:43 +03:00
Dzmitry Malyshau
e0d85820e3 Fixed the frustum/bound relation. 2015-03-15 23:21:07 +03:00
Dzmitry Malyshau
6691dce420 Added Bound::relate_clip_space with default implementation 2015-03-15 22:37:11 +03:00
Dzmitry Malyshau
fa3aacafcf Improved Plane, fixed Frustum computation from Matrix4, implemented Frustum contains() tests. 2015-03-15 22:36:09 +03:00
Dzmitry Malyshau
896c357ea8 Implemented Aabb to_corners() 2015-03-15 22:36:06 +03:00
Dzmitry Malyshau
d3d7241c86 Moved bound implementations into the corresponding modules 2015-03-15 22:36:03 +03:00
Dzmitry Malyshau
2722815d84 Implemented Bound for Sphere 2015-03-15 22:36:01 +03:00
Dzmitry Malyshau
e71887a848 Renamed the main entry point to be lib.rs 2015-03-15 22:36:00 +03:00
Dzmitry Malyshau
95c3b3608f Added Bound module, implemented for Point3 and Aabb3 2015-03-15 22:35:56 +03:00
Colin Sherratt
64fedca8e9 Manually add rand trait 2015-03-14 22:54:02 -04:00
Pierre Krieger
8895654f92 Remove dependencies to rand and rand_macros
Conflicts:
	src/cgmath.rs
2015-03-14 22:07:15 -04:00
tomaka
5ec45d1699 Update for rustc 2015-03-08 16:30:01 +01:00
Dzmitry Malyshau
f03d4427ee Redesigned ToComponents, removed the implementation for AffineMatrix3 as incorrect. 2015-03-01 23:40:43 -05:00
Colin Sherratt
74707ed8d2 fix closure syntax 2015-03-01 13:28:38 -05:00
Dzmitry Malyshau
45c6fd630d Cleaned up public exports. Implemented ToComponents for Matrix3. Added tests. 2015-03-01 01:29:47 -05:00
Dzmitry Malyshau
bf257a3e49 Added ToComponents. Moved from_value into . 2015-03-01 01:05:22 -05:00
Ben Foppa
562dfeb7a6 Add #[must_use] on functions with in-place variants. 2015-02-22 16:33:16 -05:00
Ben Foppa
1d9fc87f60 Points derive Eq. 2015-02-21 14:50:00 -05:00
Ben Foppa
a1d4ba19d0 Add a phantom type annotation on Transform. 2015-02-20 23:29:11 -05:00
Bo Bakker
a7d6c82f42 Fix for rustc
It works, and passes all tests.
2015-02-15 15:39:21 +01:00
Hyeon Kim
f4b6782885 Suppress warnings: feature(hash) 2015-02-12 01:02:09 +09:00
Hyeon Kim
6937947a4a Rust version up
Fixes compile error
2015-02-12 01:01:31 +09:00
Andrey Lesnikov
dbd6acaeb7 Fixed android build: added [no_link] to rand_macros 2015-02-09 15:57:27 +03:00
Colin Sherratt
662c7d7f68 cleanup some warnings around features 2015-02-08 13:36:33 -05:00
Colin Sherratt
778a3c13aa use the new rand_macros crate 2015-02-08 13:25:42 -05:00
Colin Sherratt
e712bdee7c fmt::Show to fmt::Debug 2015-02-08 13:19:32 -05:00
Hyeon Kim
23fbac94e7 Update rust
`Output` is not a member of trait `IndexMut` anymore.
2015-02-09 02:50:35 +09:00
Dzmitry Malyshau
6ecbf2dbfd Implemented short vector constructors 2015-02-06 23:03:00 -05:00
Ty Overby
72d4460d81 rename fmt::Show to fmt::Debug 2015-01-23 15:01:24 -08:00
Colin Sherratt
e064ea0e59 int to isize 2015-01-09 16:28:33 -07:00
Colin Sherratt
bc89f14250 Fix tests 2015-01-09 15:30:19 -07:00
Colin Sherratt
c0ce271e39 Updated to latest rustc 2015-01-09 15:06:45 -07:00
Colin Sherratt
c7270a9077 Update to latest rustc 2015-01-07 15:34:42 -07:00
Colin Sherratt
d6bb64fd65 Update for associated types changes 2015-01-04 18:56:01 -07:00
Connorcpu
22c2fe4755 Updated to rust nightly 2015-01-03 13:29:26 -08:00
Colin Sherratt
4bb12d6859 Switch to rustc_serialize 2014-12-26 16:18:29 -05:00
Jakob Fries
968adcd2cb Update to match latest Neg trait. 2014-12-21 18:28:59 +01:00
Connorcpu
43cfdd94ec Fixed macros with missing semicolons 2014-12-19 09:48:59 -08:00
Colin Sherratt
b0187ddeaa Update to match the latest std::ops::* traits 2014-12-17 02:16:13 -05:00
Pierre Krieger
888dd6b18e Update for rustc 2014-12-15 13:49:57 +01:00
Jameson Ernst
5726e6c7dc Add deriving Copy to all structs that would previously be inferred to be Copy
Remove use of deprecated Equiv trait
Remove unsed attributes
2014-12-12 17:06:52 -08:00
Jameson Ernst
12ec7318d0 Remove deprecated Float use from tests. 2014-11-24 20:24:04 -08:00
Jameson Ernst
08f9354efc Fix ambiguous trait call; Remove deprecated Float calls. 2014-11-24 20:04:34 -08:00
Colin Sherratt
876e23b8cd export PartialOrd 2014-11-21 02:26:59 -05:00
Corey Richardson
bcc4f11150 Merge pull request #142 from aepsil0n/vector_cast
Type-cast a vector component-wise
2014-11-20 10:46:30 -05:00
Eduard Bopp
4d2fb64482 Type-cast a vector component-wise
This allows one to e.g. cast a vector of f64s to an equivalent vector of f32s.
More generally this is allowed for arbitrary NumCast types.
2014-11-20 16:41:27 +01:00
Eduard Bopp
9f8580eeca Replace deprecated std::num traits
These traits are akin to the deprecated standard library traits (Zero, One,
Primitive) to keep everything running as before. However, for the long term a
better algebraic abstraction should be used/provided.
2014-11-20 16:28:02 +01:00
Martti Rannanjärvi
3ecf2eb5dd update to compile on nightly 2014-11-20 17:15:07 +02:00
Brendan Zabarauskas
1371f75165 Update for rustc 0.13.0-nightly
There are still some deprecation errors in the doc tests left
2014-11-16 01:59:43 +11:00
Sébastien Crozet
0bbefed4bc Improve the benchmark suite.
As a side effect, this adds `Rand` deriving to the benchmarked strucures.
2014-11-07 16:23:10 +01:00
Darkspear7
7ae16b3423 Removed constraints on ortographic projection function to allow bigger values for left, bottom, near than right, top, far. 2014-11-03 15:50:27 +02:00
Tomaka17
4fcfde13de fail! -> panic! 2014-10-30 10:11:33 +01:00
Eduard Bopp
666bb56670 Assertion macros for approximate equality
For sake of readability and consistency with the standard library macros
assert! and assert_eq!, the macros assert_approx_eq! and assert_approx_eq_eps!
have been implemented based on the ApproxEq trait.

Upon failure these macros yield readable error messages including the input
values and the tolerance (epsilon) used to determine their approximate
equality.

Resolves #131.
2014-10-23 10:22:34 +02:00
Colin Sherratt
0f0b960211 Added to_euler which allows moving from to and from euler coordinates.
I did not have much luck getting the old from_eular logic work the way I
expected so I updated the implementation to match my sources.

I believe this changed the order of the axis, I am unsure of what they were
before.
2014-10-13 21:05:49 -04:00
Colin Sherratt
aae8747595 Fix ortho projection matrix 2014-10-04 20:12:09 -04:00
Tomaka17
1b5da61ccb Update for rustc 0e784e168 2014-09-16 23:26:11 +0000 2014-09-18 16:19:26 +02:00
HeroesGrave
896735a2b0 updated to latest Rust 2014-08-30 12:00:34 +12:00
Jeanne-Kamikaze
6f0573c79a Added 'from_point_normal' 2014-08-26 17:08:24 +02:00
bachm
825f5f2975 deriving Encodable, Decodable for all structs 2014-08-23 14:34:33 +02:00
Erik Hedvall
cd5cdeacbf Removed duplicate Aabb3 re-export 2014-08-18 15:05:25 +02:00
Brendan Zabarauskas
379dc499ec Publicly re-export everything from the root crate
Closes #100
2014-08-16 14:53:54 +10:00
Brandon Waskiewicz
4f17d73f23 Add Ray2<>Aabb2 intersection impl 2014-08-13 20:51:51 -04:00
Brandon Waskiewicz
814b845de7 Update line intersection
*Change line<>line intersection to be ray<>line.
*Update tests accordingly
*Clean up and simplify intersection logic
2014-08-13 20:51:44 -04:00
Brendan Zabarauskas
3ff1eb583f Add fixed-length array conversions
Closes #111

`FixedArray::from_fixed` cannot yet be implemented due to  rust-lang/rust#16418
2014-08-11 21:10:38 +10:00
Brendan Zabarauskas
f93963919a Transition codebase to the new method names 2014-08-11 18:55:14 +10:00
Brendan Zabarauskas
325ebad75e Use more self-explanatory names for indexing methods 2014-08-11 17:02:25 +10:00
Brendan Zabarauskas
8999d88216 Remove deprecated functions from array traits 2014-08-11 16:54:39 +10:00
Brendan Zabarauskas
8e5500d581 Switch to cargo 2014-08-11 16:15:14 +10:00
Vyacheslav Zeronov
535b5aa01f Added Matrix3::from_diagonal
Useful for creation of scale matrices.
2014-08-08 13:46:25 +06:00
Aaron Jacobs
bfc8efff80 Fixes Matrix2::from_angle invocation and adds a test for the feature.
Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-08-05 22:28:03 -07:00
Corey Richardson
e9a1723ef4 Merge pull request #106 from atheriel/vecdocs
Add a tutorial of sorts for working with cgmath's vectors.
2014-08-03 04:29:49 -07:00
Brendan Zabarauskas
1e1f60379e Deprecate element and column accessors in favour of index operators
Also removes some unnecessary `clone` calls.
2014-07-30 04:06:31 +10:00
Aaron Jacobs
5c25683cfb Adds a tutorial of sorts for working with cgmath's vectors.
There are several runnable code examples that should compile when
using `make doctest`.

Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-28 23:05:15 -07:00
Aaron Jacobs
fddb3a7903 Implements the (mutable) index operator for vectors.
Again, this is possibly an oversight. The operators simply use the
mut_i() and i() methods which are demanded by the Array1<S> trait.

This means you may access the field `x` on a VectorN with vector[0]
syntax.

Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-28 22:37:49 -07:00
Aaron Jacobs
7e81b258a9 Implements division and remainder operators for vectors.
This might have been an oversight at one point. Although the `rem_v`
and `div_v` methods are available for vectors, the actual operators
were not.

Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-28 22:21:58 -07:00
OGINO Masanori
e5f6d827da Remove crate_id.
Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
2014-07-29 11:16:15 +09:00
Brendan Zabarauskas
7ca114d5aa Merge pull request #103 from atheriel/rot_ex
Add a rotation example to the documentation.
2014-07-28 09:06:05 +10:00
Aaron Jacobs
993efcc7a8 Add a good rotation example to Basis2.
This ads an example (the first?) on a useful feature of cgmath, and
also a Make target for running just the examples in the docs. This
may come in useful if more examples are added.

Signed-off-by: Aaron Jacobs <atheriel@gmail.com>
2014-07-23 20:25:42 -07:00
Ben Foppa
784b9d8fa1 Fix inverted asserts 2014-07-18 11:55:53 -04:00
Brendan Zabarauskas
61a6810324 Merge pull request #96 from atheriel/vecmap
Add a map() method for vectors.
2014-07-05 19:24:12 -07:00