57 lines
984 B
Python
57 lines
984 B
Python
|
"""
|
||
|
base.py
|
||
|
-------------
|
||
|
|
||
|
The base class for `Visual` objects
|
||
|
"""
|
||
|
import abc
|
||
|
from ..util import ABC
|
||
|
|
||
|
|
||
|
class Visuals(ABC):
|
||
|
|
||
|
"""
|
||
|
Parent of Visual classes.
|
||
|
"""
|
||
|
|
||
|
@abc.abstractproperty
|
||
|
def kind(self):
|
||
|
pass
|
||
|
|
||
|
@abc.abstractmethod
|
||
|
def update_vertices(self):
|
||
|
pass
|
||
|
|
||
|
@abc.abstractmethod
|
||
|
def update_faces(self):
|
||
|
pass
|
||
|
|
||
|
@abc.abstractmethod
|
||
|
def concatenate(self, other):
|
||
|
pass
|
||
|
|
||
|
@abc.abstractmethod
|
||
|
def crc(self):
|
||
|
pass
|
||
|
|
||
|
@abc.abstractmethod
|
||
|
def copy(self):
|
||
|
pass
|
||
|
|
||
|
def __add__(self, other):
|
||
|
"""
|
||
|
Concatenate two ColorVisuals objects into a single object.
|
||
|
|
||
|
Parameters
|
||
|
-----------
|
||
|
other : Visuals
|
||
|
Other visual to concatenate
|
||
|
|
||
|
Returns
|
||
|
-----------
|
||
|
result : Visuals
|
||
|
Object containing information from current
|
||
|
object and other in the order (self, other)
|
||
|
"""
|
||
|
return self.concatenate(other)
|