Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cubic splines overhaul #10701

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
90 commits
Select commit Hold shift + click to select a range
0152a0f
Added Nurbs spline
JohnTheCoolingFan Nov 22, 2023
344c942
Helper methods for generating various knot vectors
JohnTheCoolingFan Nov 24, 2023
70a13c5
Added IntoIterator and Extend implementations for CubicCurve
JohnTheCoolingFan Nov 25, 2023
19e6772
Added push_segment method
JohnTheCoolingFan Nov 25, 2023
004a72c
Added linear spline
JohnTheCoolingFan Nov 25, 2023
ae63196
Make Point trait impl a blanket impl
JohnTheCoolingFan Dec 2, 2023
22542c1
Removed unused imports
JohnTheCoolingFan Dec 2, 2023
7972a72
Moved some math to helper associated functions
JohnTheCoolingFan Dec 2, 2023
6084556
Fixed open uniform knot vector generation function
JohnTheCoolingFan Dec 2, 2023
d738eed
Implementation for basis matrix generation
JohnTheCoolingFan Dec 2, 2023
6246848
Implemented cubci generator for nurbs
JohnTheCoolingFan Dec 2, 2023
dec3be5
Weight normalization and application
JohnTheCoolingFan Dec 2, 2023
95c8e08
Fixed lint error
JohnTheCoolingFan Dec 2, 2023
0101867
Moved coefficients computation to CubicSegment
JohnTheCoolingFan Dec 2, 2023
c1a5105
Fixed typo in comment
JohnTheCoolingFan Dec 2, 2023
1407647
Extract multiplied index to a variable
JohnTheCoolingFan Dec 2, 2023
2e0a2a4
Remoevd panics with Result and error enum
JohnTheCoolingFan Dec 2, 2023
42de336
Improvbed wording in open uniform knot vector fn documentation
JohnTheCoolingFan Dec 2, 2023
e3f45e5
Removed code that wasn't doing anything
JohnTheCoolingFan Dec 2, 2023
754d3fe
Made weight normalization use L0 norm
JohnTheCoolingFan Dec 2, 2023
3c3f34b
Correct misunderstanding of `windows` method
JohnTheCoolingFan Dec 3, 2023
2d3cc3b
Improved documentation of CubicNurbs
JohnTheCoolingFan Dec 4, 2023
4fc0fa8
Added 4 point minimum note to nurbs constructor
JohnTheCoolingFan Dec 4, 2023
410dade
Fixed an error in CubicBSpline::new doc comment
JohnTheCoolingFan Dec 4, 2023
eff9f98
Wording and typo fixes
JohnTheCoolingFan Dec 4, 2023
26c0ea2
Wording fix for CubicNurbs::new
JohnTheCoolingFan Dec 4, 2023
d5c2da5
Import CubicNurbs and CubicNurbsError in prelude
JohnTheCoolingFan Dec 4, 2023
f5e8580
Fixed NURBS example
JohnTheCoolingFan Dec 4, 2023
68d88fa
Improved doc wording for normalize_weights
JohnTheCoolingFan Dec 5, 2023
d9c0187
Fixed typo
JohnTheCoolingFan Dec 5, 2023
a1ba5e5
Remove redundant interpolation information from nurbs doc
JohnTheCoolingFan Dec 18, 2023
209091e
Simpler check for knot vector values
JohnTheCoolingFan Dec 18, 2023
7996678
REplace unwrap with expect
JohnTheCoolingFan Dec 18, 2023
7dd0137
Use Self::knot_vector_expected_length
JohnTheCoolingFan Dec 18, 2023
ecb5f8e
Fix typos
JohnTheCoolingFan Dec 18, 2023
c10298e
Inline `i` to use constant knot vector indexes instead
JohnTheCoolingFan Dec 18, 2023
77ba887
Use sum instead of fold
JohnTheCoolingFan Dec 18, 2023
5cb413e
Consume weights vector for normalization instad of mutable borrow
JohnTheCoolingFan Dec 18, 2023
6ebd6b7
zip iterators of windows instead of using enumerate
JohnTheCoolingFan Dec 18, 2023
b4030fd
Fix knot vector values check
JohnTheCoolingFan Dec 18, 2023
a8a8464
Update glam version
JohnTheCoolingFan Jan 26, 2024
5340921
Use thiserror re-export from bevy_utils
JohnTheCoolingFan Jan 26, 2024
e5453ad
Merge branch 'main' into cubic-splines-overhaul
JohnTheCoolingFan Jan 26, 2024
325816f
Typo fix
alice-i-cecile Jan 26, 2024
3501ef4
Typo fix
JohnTheCoolingFan Jan 27, 2024
c07b2e4
Typo fix
JohnTheCoolingFan Jan 27, 2024
7be7e69
Change knot vector index from expression to constant
JohnTheCoolingFan Jan 27, 2024
0bca0fd
Document wefault weights and knot vector for nurbs
JohnTheCoolingFan Jan 27, 2024
80afd61
Remove multiplier argument in CubicSegment::coefficients
JohnTheCoolingFan Jan 27, 2024
6ad1d15
Use assign and divide operator
JohnTheCoolingFan Jan 27, 2024
2b9063b
CubicNurbs documentation improvements
JohnTheCoolingFan Jan 28, 2024
9e50087
Merge branch 'main' into cubic-splines-overhaul
JohnTheCoolingFan Jan 28, 2024
7239dd2
Make BSpline matrix an expression
JohnTheCoolingFan Jan 28, 2024
579e70b
Better wording for linear spline
JohnTheCoolingFan Jan 29, 2024
3410565
Ducmentation for CubicSegment::coefficients
JohnTheCoolingFan Jan 29, 2024
a4f5537
Revert "Make BSpline matrix an expression"
JohnTheCoolingFan Jan 30, 2024
23de063
Implement RationalCurve and RationalSegment for NURBS.
IQuick143 Jan 30, 2024
93a0d3f
Change over polynomial evaluation scheme in CubicSegment
IQuick143 Jan 30, 2024
7a46d54
Implement From<CubicCurve> for RationalCurve.
IQuick143 Jan 30, 2024
ed1d974
Fix incorrect test labels.
IQuick143 Jan 31, 2024
c9a2f19
Merge pull request #1 from IQuick143/cubic-splines-overhaul
JohnTheCoolingFan Jan 31, 2024
adf9faf
Formatting
JohnTheCoolingFan Jan 31, 2024
52697c4
Merge branch 'main' into cubic-splines-overhaul
JohnTheCoolingFan Jan 31, 2024
ecbc0c4
Improved spline documentation
NthTensor Feb 1, 2024
4a4c418
Fix nonlinearity and clean up language
NthTensor Feb 1, 2024
f38e62a
Fix typoes and CI
NthTensor Feb 2, 2024
3c295fd
Remove circular arc test case
NthTensor Feb 2, 2024
48fbb7d
Re-add corrected circular arc test
NthTensor Feb 3, 2024
db764b6
Fix code style
JohnTheCoolingFan Feb 3, 2024
dda207e
CI fix
JohnTheCoolingFan Feb 3, 2024
ae4bb38
Fix type name in doc comment
JohnTheCoolingFan Feb 3, 2024
1280053
Merge pull request #2 from NthTensor/cubic-splines-overhaul
JohnTheCoolingFan Feb 3, 2024
8100a70
Typo fixes
JohnTheCoolingFan Feb 3, 2024
3b60751
Divide by `max - min` instead of `max`
JohnTheCoolingFan Feb 3, 2024
23bd37e
Merge branch 'main' into cubic-splines-overhaul
JohnTheCoolingFan Feb 4, 2024
b03fbb9
Revert "Use thiserror re-export from bevy_utils"
JohnTheCoolingFan Feb 24, 2024
d344566
Revert "Make Point trait impl a blanket impl"
JohnTheCoolingFan Feb 24, 2024
2269a92
Import Vec3 and Vec3A
JohnTheCoolingFan Feb 24, 2024
3126fd5
Merge branch 'bevyengine:main' into cubic-splines-overhaul
JohnTheCoolingFan Feb 24, 2024
5cc66be
Revert "Import Vec3 and Vec3A"
JohnTheCoolingFan Feb 24, 2024
5aea5cc
Reapply "Make Point trait impl a blanket impl"
JohnTheCoolingFan Feb 24, 2024
7b6d54e
Merge branch 'main' into cubic-splines-overhaul
JohnTheCoolingFan Feb 24, 2024
1d09313
Revert "Reapply "Make Point trait impl a blanket impl""
JohnTheCoolingFan Feb 28, 2024
039ba81
Import required types
JohnTheCoolingFan Feb 28, 2024
70e67f1
Implement Point for Vec4
JohnTheCoolingFan Feb 28, 2024
983749a
Relax dependencies of Point trait
JohnTheCoolingFan Feb 28, 2024
c22e971
Implement Point for Quat
JohnTheCoolingFan Feb 28, 2024
4b4322e
Fix typo
alice-i-cecile Feb 28, 2024
f6d8d1b
Fix typos
alice-i-cecile Feb 28, 2024
32c35fc
Typos and wording fixes
JohnTheCoolingFan Feb 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions crates/bevy_math/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ keywords = ["bevy"]

[dependencies]
glam = { version = "0.25", features = ["bytemuck"] }
thiserror = "1.0"
JohnTheCoolingFan marked this conversation as resolved.
Show resolved Hide resolved
serde = { version = "1", features = ["derive"], optional = true }
approx = { version = "0.5", optional = true }

Expand Down
Loading
Loading