프로젝트

일반

사용자정보

개정판 edc78461

IDedc7846160e6450ce0589f27e4ad7d94a5b0bdf2
상위 e519d74b
하위 53be6494, 9c62b3dd

함의성이(가) 약 6년 전에 추가함

issue #587: reseved word has orthogonal line as owner

Change-Id: Ia1e194230602026165ec5c6b82015b1ebd6e957b

차이점 보기:

DTI_PID/DTI_PID/Shapes/EngineeringReservedWordTextItem.py
29 29
        import sys
30 30

  
31 31
        try:
32
            # find line onwer parallel
32 33
            self.onwer = None
33 34
            dist = min(self.sceneBoundingRect().height(), self.sceneBoundingRect().width()) * 2
34 35
            center = self.sceneBoundingRect().center()
......
74 75

  
75 76
            if selected is not None:
76 77
                self.owner = selected
78
                return
77 79
                #print(self.owner)
80
            ## up to here
81

  
82
            # fine line owner orthogonal
83
            if self.sceneBoundingRect().height() < self.sceneBoundingRect().width():
84
                lines = vLines
85
            else:
86
                lines = hLines
87

  
88
            minDist = 30
89
            for line in lines:
90
                dl = min(self.sceneBoundingRect().height(), self.sceneBoundingRect().width()) / 10
91
                dx = dl if (line.connectors[0].sceneConnectPoint[0] - line.connectors[1].sceneConnectPoint[0]) > 0 else -dl
92
                dy = -dl if (line.connectors[0].sceneConnectPoint[1] - line.connectors[1].sceneConnectPoint[1]) > 0 else dl
93
                
94
                startPoint = line.endPoint()
95
                for index in range(30):
96
                    point = (startPoint[0] + index * dx, startPoint[1] + index * dy)
97
                    if self.sceneBoundingRect().contains(point[0], point[1]):
98
                        if index < minDist:
99
                            minDist = index
100
                            selected = line
101
                            break
102

  
103
            if selected is not None:
104
                self.owner = selected
78 105

  
79 106
        except Exception as ex:
80 107
            from App import App 

내보내기 Unified diff

클립보드 이미지 추가 (최대 크기: 500 MB)