Skip to content

Commit 138e26c

Browse files
author
Alice Cecile
committed
Use impl Into<Color> args in gizmo builder methods
1 parent b684a2a commit 138e26c

File tree

13 files changed

+156
-119
lines changed

13 files changed

+156
-119
lines changed

crates/bevy_gizmos/src/arcs.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,15 +47,15 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
4747
direction_angle: f32,
4848
arc_angle: f32,
4949
radius: f32,
50-
color: Color,
50+
color: impl Into<Color>,
5151
) -> Arc2dBuilder<'_, 'w, 's, T> {
5252
Arc2dBuilder {
5353
gizmos: self,
5454
position,
5555
direction_angle,
5656
arc_angle,
5757
radius,
58-
color,
58+
color: color.into(),
5959
segments: None,
6060
}
6161
}
@@ -165,7 +165,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
165165
radius: f32,
166166
position: Vec3,
167167
rotation: Quat,
168-
color: Color,
168+
color: impl Into<Color>,
169169
) -> Arc3dBuilder<'_, 'w, 's, T> {
170170
Arc3dBuilder {
171171
gizmos: self,
@@ -174,7 +174,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
174174
rotation,
175175
angle,
176176
radius,
177-
color,
177+
color: color.into(),
178178
segments: None,
179179
}
180180
}
@@ -221,7 +221,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
221221
center: Vec3,
222222
from: Vec3,
223223
to: Vec3,
224-
color: Color,
224+
color: impl Into<Color>,
225225
) -> Arc3dBuilder<'_, 'w, 's, T> {
226226
self.arc_from_to(center, from, to, color, |x| x)
227227
}
@@ -267,7 +267,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
267267
center: Vec3,
268268
from: Vec3,
269269
to: Vec3,
270-
color: Color,
270+
color: impl Into<Color>,
271271
) -> Arc3dBuilder<'_, 'w, 's, T> {
272272
self.arc_from_to(center, from, to, color, |angle| {
273273
if angle > 0.0 {
@@ -286,7 +286,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
286286
center: Vec3,
287287
from: Vec3,
288288
to: Vec3,
289-
color: Color,
289+
color: impl Into<Color>,
290290
angle_fn: impl Fn(f32) -> f32,
291291
) -> Arc3dBuilder<'_, 'w, 's, T> {
292292
// `from` and `to` can be the same here since in either case nothing gets rendered and the
@@ -308,7 +308,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
308308
rotation,
309309
angle,
310310
radius,
311-
color,
311+
color: color.into(),
312312
segments: None,
313313
}
314314
}

crates/bevy_gizmos/src/arrows.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,18 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
8181
/// }
8282
/// # bevy_ecs::system::assert_is_system(system);
8383
/// ```
84-
pub fn arrow(&mut self, start: Vec3, end: Vec3, color: Color) -> ArrowBuilder<'_, 'w, 's, T> {
84+
pub fn arrow(
85+
&mut self,
86+
start: Vec3,
87+
end: Vec3,
88+
color: impl Into<Color>,
89+
) -> ArrowBuilder<'_, 'w, 's, T> {
8590
let length = (end - start).length();
8691
ArrowBuilder {
8792
gizmos: self,
8893
start,
8994
end,
90-
color,
95+
color: color.into(),
9196
tip_length: length / 10.,
9297
}
9398
}
@@ -110,7 +115,7 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
110115
&mut self,
111116
start: Vec2,
112117
end: Vec2,
113-
color: Color,
118+
color: impl Into<Color>,
114119
) -> ArrowBuilder<'_, 'w, 's, T> {
115120
self.arrow(start.extend(0.), end.extend(0.), color)
116121
}

crates/bevy_gizmos/src/circles.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,14 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
4646
position: Vec3,
4747
rotation: Quat,
4848
half_size: Vec2,
49-
color: Color,
49+
color: impl Into<Color>,
5050
) -> EllipseBuilder<'_, 'w, 's, T> {
5151
EllipseBuilder {
5252
gizmos: self,
5353
position,
5454
rotation,
5555
half_size,
56-
color,
56+
color: color.into(),
5757
segments: DEFAULT_CIRCLE_SEGMENTS,
5858
}
5959
}
@@ -84,14 +84,14 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
8484
position: Vec2,
8585
angle: f32,
8686
half_size: Vec2,
87-
color: Color,
87+
color: impl Into<Color>,
8888
) -> Ellipse2dBuilder<'_, 'w, 's, T> {
8989
Ellipse2dBuilder {
9090
gizmos: self,
9191
position,
9292
rotation: Mat2::from_angle(angle),
9393
half_size,
94-
color,
94+
color: color.into(),
9595
segments: DEFAULT_CIRCLE_SEGMENTS,
9696
}
9797
}
@@ -122,14 +122,14 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
122122
position: Vec3,
123123
normal: Direction3d,
124124
radius: f32,
125-
color: Color,
125+
color: impl Into<Color>,
126126
) -> EllipseBuilder<'_, 'w, 's, T> {
127127
EllipseBuilder {
128128
gizmos: self,
129129
position,
130130
rotation: Quat::from_rotation_arc(Vec3::Z, *normal),
131131
half_size: Vec2::splat(radius),
132-
color,
132+
color: color.into(),
133133
segments: DEFAULT_CIRCLE_SEGMENTS,
134134
}
135135
}
@@ -159,14 +159,14 @@ impl<'w, 's, T: GizmoConfigGroup> Gizmos<'w, 's, T> {
159159
&mut self,
160160
position: Vec2,
161161
radius: f32,
162-
color: Color,
162+
color: impl Into<Color>,
163163
) -> Ellipse2dBuilder<'_, 'w, 's, T> {
164164
Ellipse2dBuilder {
165165
gizmos: self,
166166
position,
167167
rotation: Mat2::IDENTITY,
168168
half_size: Vec2::splat(radius),
169-
color,
169+
color: color.into(),
170170
segments: DEFAULT_CIRCLE_SEGMENTS,
171171
}
172172
}

0 commit comments

Comments
 (0)