20 lines
709 B
Python
20 lines
709 B
Python
class Point:
|
|
def __init__(self, x : int = 0, y : int = 0, z : int = 0, p : tuple[int,int,int] = None):
|
|
if p != None: x,y,z = p
|
|
self.x = x
|
|
self.y = y
|
|
self.z = z
|
|
self.position = (x,y,z)
|
|
|
|
def set_position(self, x : int = None, y : int = None, z : int = None, p : tuple[int,int,int] = None):
|
|
if p != None: x,y,z = p
|
|
self.x = x if x != None else self.x
|
|
self.y = y if y != None else self.y
|
|
self.z = z if z != None else self.z
|
|
self.position = (self.x,self.y,self.z)
|
|
|
|
def __repr__(self):
|
|
return f"Point({self.position})"
|
|
|
|
def copy(self) -> 'Point':
|
|
return Point(self.x, self.y, self.z) |