bevy/crates/bevy_math/src
stevehello166 66877f63be
Add a Dir4 to resolve #17983 (#19223)
# Objective
Fixes #17983 

## Solution

Implemented a basic `Dir4` struct with methods similar to `Dir3` and
`Dir2`.

## Testing

- Did you test these changes? If so, how?
Added unit tests that follow the same pattern of the other Dir structs.
- Are there any parts that need more testing?
Since the other Dir structs use rotations to test renormalization and I
have been following them as a pattern for the Dir4 struct I haven't
implemented a test to cover renormalization of Dir4's.
- How can other people (reviewers) test your changes? Is there anything
specific they need to know?
Use Dir4 in the wild.
- If relevant, what platforms did you test these changes on, and are
there any important ones you can't test?
N/A (Tested on Linux/X11 but it shouldn't be a problem)
2025-05-26 19:35:07 +00:00
..
bounding Reduce operations in RayCast2d::circle_intersection_at using cross product (#19103) 2025-05-26 17:22:14 +00:00
cubic_splines bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
curve Expose the output curve type in with_derivative (#18826) 2025-04-14 20:18:00 +00:00
primitives Deprecated Begone! 0.16 Cleanup (#19108) 2025-05-07 18:17:41 +00:00
rects bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
sampling Upgrade to Rust Edition 2024 (#17967) 2025-02-24 03:54:47 +00:00
affine3.rs Implemented Reflect for (almost) all bevy_math types (#13537) 2024-05-27 18:18:10 +00:00
aspect_ratio.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
common_traits.rs Expose the output curve type in with_derivative (#18826) 2025-04-14 20:18:00 +00:00
compass.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
direction.rs Add a Dir4 to resolve #17983 (#19223) 2025-05-26 19:35:07 +00:00
float_ord.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
isometry.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
lib.rs Move #![warn(clippy::allow_attributes, clippy::allow_attributes_without_reason)] to the workspace Cargo.toml (#17374) 2025-01-15 01:14:58 +00:00
ops.rs Upgrade to Glam 0.29.3 and Simplify Feature Gating (#18638) 2025-03-31 18:54:46 +00:00
ray.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00
rotation2d.rs bevy_reflect: Add clone registrations project-wide (#18307) 2025-03-17 18:32:35 +00:00