Positionen -> Vektor#
- class miniworlds.positions.vector.Vector(x, y)[Quellcode]#
Represents a 2D vector for use in movement, geometry, and physics.
Supports arithmetic with both other Vectors and 2D tuples.
Beispiele
>>> v = Vector(1, 2) >>> v2 = Vector(3, 4) >>> v + v2 Vector(4.0, 6.0) >>> v + (1, 1) Vector(2.0, 3.0) >>> (1, 1) + v Vector(2.0, 3.0)
Öffentliche Methoden:
__init__
(x, y)__getitem__
(index)from_position
(position)from_positions
(p1, p2):py:obj:
from_direction <miniworlds.positions.vector.Vector.from_direction>
\ (Richtung)Erstellt einen Vektor aus der Richtung der Miniwelten.
from_actors
(t1, t2)Erstellen Sie einen Vektor aus zwei Akteuren.
from_actor_and_position
(t1, pos)Erstellen Sie einen Vektor aus Akteur und Position
from_actor_direction
(actor)Erstellt einen Vektor aus der Richtung des Akteurs
rotate
(theta):py:obj:
Länge <miniworlds.positions.vector.Vector.length>
\ ()limit
(max_length)multiply
(other)add_to_position
(position)dot
(other)distance_to
(other)Calculates Euclidean distance to another vector or position.
angle_to
(other)Computes the angle between this vector and another in degrees.
__add__
(other)__radd__
(other):py:obj:
__sub__ <miniworlds.positions.vector.Vector.__sub__>
\ (andere)__rsub__
(other):py:obj:
__mul__ <miniworlds.positions.vector.Vector.__mul__>
\ (andere)__rmul__
(other)__neg__
()__eq__
(other)Return self==value.
__str__
()Gib str(self) zurück.
__repr__
()Return repr(self).
Private Methods:
_to_vector
(value)
- add_to_position(position)[Quellcode]#
- angle_to(other)[Quellcode]#
Computes the angle between this vector and another in degrees.
- Rückgabetyp:
- Parameter:
other – A Vector or tuple.
- Rückgabe:
Angle in degrees between 0 and 180.
Beispiele
>>> Vector(1, 0).angle_to((0, 1)) 90.0
- distance_to(other)[Quellcode]#
Calculates Euclidean distance to another vector or position.
- Rückgabetyp:
- Parameter:
other – A Vector or tuple.
- Rückgabe:
The distance as float.
Beispiele
>>> Vector(0, 0).distance_to((3, 4)) 5.0
- dot(other)[Quellcode]#
- Rückgabetyp:
- classmethod from_actor_and_position(t1, pos)[Quellcode]#
Erstellen Sie einen Vektor aus Akteur und Position
Der Vektor wird erzeugt aus: actor2.center - position
- Rückgabetyp:
Vector
- classmethod from_actor_direction(actor)[Quellcode]#
Erstellt einen Vektor aus der Richtung des Akteurs
Examples: :rtype: Vector
Erstellt ein rotierendes Rechteck
from miniworlds import * world = World() player = Rectangle((200,200),40, 40) player.speed = 1 player.direction = 80 @player.register def act(self): v1 = Vector.from_actor_direction(self) v1.rotate(-1) self.direction = v1 world.run()
- classmethod from_actors(t1, t2)[Quellcode]#
Erstellen Sie einen Vektor aus zwei Akteuren.
Der Vektor wird erzeugt aus: actor2.center - actor1.center
- Rückgabetyp:
Vector
- classmethod from_direction(direction)[Quellcode]#
Erstellt einen Vektor aus der Richtung der Miniwelten.
- Rückgabetyp:
- classmethod from_position(position)[Quellcode]#
- Rückgabetyp:
- classmethod from_positions(p1, p2)[Quellcode]#
- Rückgabetyp:
- get_normal()[Quellcode]#
- Rückgabetyp:
- length()[Quellcode]#
- Rückgabetyp:
- limit(max_length)[Quellcode]#
- Rückgabetyp:
- multiply(other)[Quellcode]#
- normalize()[Quellcode]#
- Rückgabetyp:
- rotate(theta)[Quellcode]#
- Rückgabetyp:
- to_direction()[Quellcode]#
- Rückgabetyp:
- to_position()[Quellcode]#