Extract gmath_nodes from gcore::ops, create mods debug and extract_xy (#2764)

This commit is contained in:
Firestar99
2025-06-28 00:04:24 +02:00
committed by GitHub
parent 9c4ab34a58
commit ecd7999ca7
16 changed files with 668 additions and 580 deletions
+21
View File
@@ -0,0 +1,21 @@
use crate::Ctx;
use dyn_any::DynAny;
use glam::{DVec2, IVec2, UVec2};
/// Obtain the X or Y component of a coordinate.
#[node_macro::node(name("Extract XY"), category("Math: Vector"))]
fn extract_xy<T: Into<DVec2>>(_: impl Ctx, #[implementations(DVec2, IVec2, UVec2)] vector: T, axis: XY) -> f64 {
match axis {
XY::X => vector.into().x,
XY::Y => vector.into().y,
}
}
/// The X or Y component of a coordinate.
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, Hash, DynAny, node_macro::ChoiceType, specta::Type, serde::Serialize, serde::Deserialize)]
#[widget(Dropdown)]
pub enum XY {
#[default]
X,
Y,
}