Geometry¶
Contents
Rectangle¶

class
serge.geometry.
Rectangle
(x=0, y=0, w=0, h=0)[source]¶ Bases:
serge.geometry.SpatialObject
,serge.serialize.Serializable
Represents a rectangle

classmethod
fromCenter
(cx, cy, w, h)[source]¶ Return a new rectangle giving the center x, y and width, height

classmethod
SimpleRect¶
Vec2d¶

class
serge.simplevecs.
Vec2d
(x_or_pair=None, y=None)[source]¶ Bases:
object
2d vector class, supports vector and scalar operators, and also provides some high level functions

angle
¶ Gets or sets the angle (in radians) of a vector

angle_degrees
¶ Gets or sets the angle (in degrees) of a vector

cross
(other)[source]¶  The cross product between the vector and other vector
 v1.cross(v2) > v1.x*v2.y  v2.y*v1.x
Returns: The cross product

dot
(other)[source]¶  The dot product between the vector and other vector
 v1.dot(v2) > v1.x*v2.x + v1.y*v2.y
Returns: The dot product

get_angle_between
(other)[source]¶ Get the angle between the vector and the other in radians
Returns: The angle

get_angle_degrees_between
(other)[source]¶ Get the angle between the vector and the other in degrees
Returns: The angle (in degrees)

get_dist_sqrd
(other)[source]¶ The squared distance between the vector and other vector It is more efficent to use this method than to call get_distance() first and then do a sqrt() on the result.
Returns: The squared distance

get_length_sqrd
()[source]¶ Get the squared length of the vector. It is more efficent to use this method instead of first call get_length() or access .length and then do a sqrt().
Returns: The squared length

int_tuple
¶ Return the x and y values of this vector as ints

length
¶ Gets or sets the magnitude of the vector

normalize_return_length
()[source]¶ Normalize the vector and return its length before the normalization
Returns: The length before the normalization

normalized
()[source]¶ Get a normalized copy of the vector Note: This function will return 0 if the length of the vector is 0.
Returns: A normalized vector

rotated
(angle_radians)[source]¶ Create and return a new vector by rotating this vector by angle_radians radians.
Returns: Rotade vector
