PyCNC

Форк
0
/
enums.py 
53 строки · 1.0 Кб
1
""" This module describes system wide enums.
2
"""
3

4

5
class Enum(object):
6
    """ Base class for enums
7
    """
8
    __global_increment = 1
9

10
    def __init__(self, for_str):
11
        """ Initialize base class for enumerates.
12
        :param for_str: return value for build in str() function
13
        """
14
        self.value = Enum.__global_increment
15
        self._str = for_str
16
        Enum.__global_increment += 1
17

18
    def __eq__(self, other):
19
        return self.value == other.value
20

21
    def __str__(self):
22
        return self._str
23

24
    def __hash__(self):
25
        return self.value
26

27

28
class Plane(Enum):
29
    """ Enum for choosing plane for circular interpolation.
30
    """
31
    pass
32

33
PLANE_XY = Plane("XY")
34
PLANE_ZX = Plane("ZX")
35
PLANE_YZ = Plane("YZ")
36

37

38
class RotationDirection(Enum):
39
    """ Enum for choosing rotation direction.
40
    """
41
    pass
42

43
CW = RotationDirection("CW")
44
CCW = RotationDirection("CCW")
45

46

47
class Heaters(Enum):
48
    """ Enum for selecting heater.
49
    """
50
    pass
51

52
HEATER_EXTRUDER = Heaters("extruder")
53
HEATER_BED = Heaters("bed")
54

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.