rephrase
This commit is contained in:
parent
e225716f52
commit
c39f065872
1 changed files with 10 additions and 10 deletions
|
@ -59,29 +59,29 @@ def widen(colors: List[Color], width: int):
|
||||||
return L
|
return L
|
||||||
|
|
||||||
def blendLedBar_simple(colors: List[Color],
|
def blendLedBar_simple(colors: List[Color],
|
||||||
res_length: int,
|
length: int,
|
||||||
blending: InterpType,
|
blending: InterpType,
|
||||||
filling: Filling,
|
filling: Filling,
|
||||||
void_color: Color) -> List[Color]:
|
void_color: Color) -> List[Color]:
|
||||||
total_len = len(colors)
|
total_len = len(colors)
|
||||||
(deduped, rep_nb) = remove_duplicates(colors)
|
(deduped, rep_nb) = remove_duplicates(colors)
|
||||||
if len(deduped) > res_length:
|
if len(deduped) > length:
|
||||||
# After dedup, there are still too many colors. Only show the first ones
|
# After dedup, there are still too many colors. Only show the first ones
|
||||||
logging.warning(f"LED bar interpolation: More than {res_length} colors. Dropping colors")
|
logging.warning(f"LED bar interpolation: More than {length} colors. Dropping colors")
|
||||||
return widen(deduped[:res_length], width)
|
return widen(deduped[:length], width)
|
||||||
|
|
||||||
if len(colors) > res_length:
|
if len(colors) > length:
|
||||||
# TODO: Try and dedup some colors to save space
|
# TODO: Try and dedup some colors to save space
|
||||||
return colors[:res_length]
|
return colors[:length]
|
||||||
|
|
||||||
if blending == InterpType.NEAREST:
|
if blending == InterpType.NEAREST:
|
||||||
factor = res_length // total_len
|
factor = length // total_len
|
||||||
|
|
||||||
# First pass
|
# First pass
|
||||||
for i in range(len(rep_nb)):
|
for i in range(len(rep_nb)):
|
||||||
rep_nb[i] *= factor
|
rep_nb[i] *= factor
|
||||||
|
|
||||||
gap = res_length - total_len * factor
|
gap = length - total_len * factor
|
||||||
|
|
||||||
# TODO: Add GREATEST
|
# TODO: Add GREATEST
|
||||||
# The idea is to first add a repetition to the already longest
|
# The idea is to first add a repetition to the already longest
|
||||||
|
@ -111,10 +111,10 @@ def blendLedBar_simple(colors: List[Color],
|
||||||
return reduplicate(deduped, rep_nb)
|
return reduplicate(deduped, rep_nb)
|
||||||
|
|
||||||
def blendLedBar(colors: List[Color],
|
def blendLedBar(colors: List[Color],
|
||||||
res_length: Optional[int] = LedBarLen,
|
length: Optional[int] = LedBarLen,
|
||||||
width: Optional[int] = 1,
|
width: Optional[int] = 1,
|
||||||
blending: Optional[InterpType] = InterpType.NEAREST,
|
blending: Optional[InterpType] = InterpType.NEAREST,
|
||||||
filling: Optional[Filling] = Filling.GREATEST,
|
filling: Optional[Filling] = Filling.GREATEST,
|
||||||
void_color: Optional[Color] = Color("black")) -> List[Color]:
|
void_color: Optional[Color] = Color("black")) -> List[Color]:
|
||||||
return widen(blendLedBar(colors, res_length, blending, filling, void_color),
|
return widen(blendLedBar(colors, length, blending, filling, void_color),
|
||||||
width)
|
width)
|
||||||
|
|
Loading…
Reference in a new issue