optimized some path calculation code
This commit is contained in:
3
knob.py
3
knob.py
@ -37,6 +37,9 @@ class Knob:
|
||||
|
||||
def get_position(self):
|
||||
return self.position
|
||||
|
||||
def get_index(self, knobs):
|
||||
return knobs.index(self)
|
||||
|
||||
def __eq__(self, other):
|
||||
if other is None: return False
|
||||
|
||||
13
knobs.py
13
knobs.py
@ -92,16 +92,16 @@ class Knobs:
|
||||
def calculate_label_path(self, knob, label_x):
|
||||
if len(knob.label_path) == 0:
|
||||
knob.label_path.append(knob.get_position())
|
||||
knob_index = knob.get_index(self.knobs)
|
||||
if self.is_left_side:
|
||||
if (knob == self.knobs[0] or knob == self.knobs[1] or
|
||||
knob == self.knobs[4] or knob == self.knobs[5]):
|
||||
if knob_index in [0, 1, 4, 5] :
|
||||
x = knob.get_position()[0] + self.knobs_radius * 1.5
|
||||
y = knob.get_position()[1] + self.knobs_radius * 1.5
|
||||
elif (knob == self.knobs[2] or knob == self.knobs[3] or knob == self.knobs[6]):
|
||||
elif knob_index in [2, 3, 6]:
|
||||
x = knob.get_position()[0] + self.knobs_radius * 1.5
|
||||
y = knob.get_position()[1] - self.knobs_radius * 1.5
|
||||
else: # knob 7
|
||||
x = knob.get_position()[0] - self.knobs_radius * 1.5
|
||||
x = knob.get_position()[0] - self.knobs_radius * 1.5
|
||||
y = knob.get_position()[1] + self.knobs_radius * 1.5
|
||||
knob.label_path.append((x, y))
|
||||
|
||||
@ -110,11 +110,10 @@ class Knobs:
|
||||
elif (knob == self.knobs[4] or knob == self.knobs[7]):
|
||||
knob.label_path.append((self.knobs[4].get_position()[0] + self.knobs_radius * 1.5, self.gui.screenH/2))
|
||||
else:
|
||||
if (knob == self.knobs[1] or knob == self.knobs[2] or
|
||||
knob == self.knobs[4] or knob == self.knobs[5]):
|
||||
if knob_index in [1, 2, 4, 5]:
|
||||
x = knob.get_position()[0] + self.knobs_radius * 1.5
|
||||
y = knob.get_position()[1] + self.knobs_radius * 1.5
|
||||
elif (knob == self.knobs[3] or knob == self.knobs[6] or knob == self.knobs[7]):
|
||||
elif knob_index in [3, 6, 7]:
|
||||
x = knob.get_position()[0] + self.knobs_radius * 1.5
|
||||
y = knob.get_position()[1] - self.knobs_radius * 1.5
|
||||
else: # knob 0
|
||||
|
||||
Reference in New Issue
Block a user