diff --git a/manimlib/mobject/geometry.py b/manimlib/mobject/geometry.py index c2e5a037..bdabeb58 100644 --- a/manimlib/mobject/geometry.py +++ b/manimlib/mobject/geometry.py @@ -653,7 +653,7 @@ class Vector(Arrow): def __init__(self, direction=RIGHT, **kwargs): if len(direction) == 2: - direction = np.append(np.array(direction), 0) + direction = np.hstack([direction, 0]) Arrow.__init__(self, ORIGIN, direction, **kwargs) diff --git a/manimlib/mobject/mobject.py b/manimlib/mobject/mobject.py index 354031a9..c9c04138 100644 --- a/manimlib/mobject/mobject.py +++ b/manimlib/mobject/mobject.py @@ -346,10 +346,7 @@ class Mobject(Container): This can make transition animations nicer """ def repeat_array(array): - return reduce( - lambda a1, a2: np.append(a1, a2, axis=0), - [array] * count - ) + return np.vstack([array] * count) for mob in self.family_members_with_points(): mob.apply_over_attr_arrays(repeat_array) return self diff --git a/manimlib/mobject/types/point_cloud_mobject.py b/manimlib/mobject/types/point_cloud_mobject.py index c4edf9fc..121d8239 100644 --- a/manimlib/mobject/types/point_cloud_mobject.py +++ b/manimlib/mobject/types/point_cloud_mobject.py @@ -27,7 +27,7 @@ class PMobject(Mobject): if not isinstance(points, np.ndarray): points = np.array(points) num_new_points = len(points) - self.points = np.append(self.points, points, axis=0) + self.points = np.vstack([self.points, points]) if rgbas is None: color = Color(color) if color else self.color rgbas = np.repeat( @@ -37,7 +37,7 @@ class PMobject(Mobject): ) elif len(rgbas) != len(points): raise Exception("points and rgbas must have same shape") - self.rgbas = np.append(self.rgbas, rgbas, axis=0) + self.rgbas = np.vstack([self.rgbas, rgbas]) return self def set_color(self, color=YELLOW_C, family=True): diff --git a/manimlib/utils/color.py b/manimlib/utils/color.py index 4053d97a..40c75d55 100644 --- a/manimlib/utils/color.py +++ b/manimlib/utils/color.py @@ -58,7 +58,7 @@ def color_to_int_rgb(color): def color_to_int_rgba(color, opacity=1.0): alpha = int(255 * opacity) - return np.append(color_to_int_rgb(color), alpha) + return np.array([*color_to_int_rgb(color), alpha]) def color_gradient(reference_colors, length_of_output): diff --git a/manimlib/utils/space_ops.py b/manimlib/utils/space_ops.py index 1c6bbeec..85dc446f 100644 --- a/manimlib/utils/space_ops.py +++ b/manimlib/utils/space_ops.py @@ -31,10 +31,10 @@ def quaternion_mult(q1, q2): def quaternion_from_angle_axis(angle, axis): - return np.append( + return np.hstack([ np.cos(angle / 2), np.sin(angle / 2) * normalize(axis) - ) + ]) def angle_axis_from_quaternion(quaternion): @@ -65,7 +65,7 @@ def rotate_vector(vector, angle, axis=OUT): quat_inv = quaternion_conjugate(quat) product = reduce( quaternion_mult, - [quat, np.append(0, vector), quat_inv] + [quat, np.hstack([0, vector]), quat_inv] ) return product[1:] else: