프로젝트

일반

사용자정보

통계
| 개정판:

hytos / DTI_PID / DTI_PID / TextInfo.py @ 8744138e

이력 | 보기 | 이력해설 | 다운로드 (1.65 KB)

1
# coding: utf-8
2

    
3
class TextInfo:
4
    def __init__(self, text, x, y, w, h, angle):
5
        self._text = text.replace('', '-')  # TODO: check this code!!!
6
        self.x = x
7
        self.y = y
8
        self.w = w
9
        self.h = h
10
        self.angle = angle
11

    
12
    @property
13
    def area(self):
14
        """ return area of area """
15
        return self.w * self.h
16

    
17
    def contains(self, pt):
18
        if len(pt) == 2:
19
            if pt[0] < self.x: return False
20
            if pt[0] > self.x + self.w: return False
21
            if pt[1] < self.y: return False
22
            if pt[1] > self.y + self.h: return False
23
        elif len(pt) == 4:
24
            minx = pt[0]
25
            miny = pt[1]
26
            maxx = pt[2]
27
            maxy = pt[3]
28

    
29
            if minx < self.x: return False
30
            if maxx > self.x + self.w: return False
31
            if miny < self.y: return False
32
            if maxy > self.y + self.h: return False
33

    
34
        return True
35

    
36
    @property
37
    def center(self):
38
        """ return center of text """
39
        return (self.getX() + self.getW() * 0.5, self.getY() + self.getH() * 0.5)
40

    
41
    def setText(self, text):
42
        self._text = text
43

    
44
    def getText(self):
45
        return self._text
46

    
47
    def setX(self, x):
48
        self.x = x
49

    
50
    def getX(self):
51
        return int(self.x)
52

    
53
    def setY(self, y):
54
        self.y = y
55

    
56
    def getY(self):
57
        return int(self.y)
58

    
59
    def setW(self, w):
60
        self.w = w
61

    
62
    def getW(self):
63
        return int(self.w)
64

    
65
    def setH(self, h):
66
        self.h = h
67

    
68
    def getH(self):
69
        return int(self.h)
70

    
71
    def setAngle(self, angle):
72
        self.angle = angle
73

    
74
    def getAngle(self):
75
        return self.angle
클립보드 이미지 추가 (최대 크기: 500 MB)