mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-20 11:30:18 +00:00
fix color32.alpha_blend
This commit is contained in:
parent
6c25f6b1de
commit
2bdbe8a684
@ -216,7 +216,7 @@ class color32:
|
|||||||
def ansi_bg(self, text: str) -> str: ...
|
def ansi_bg(self, text: str) -> str: ...
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def alpha_blend(src: color32, dst: color32) -> color32: ...
|
def alpha_blend(src: color32, dst: color32 | None) -> color32: ...
|
||||||
|
|
||||||
|
|
||||||
def rgb(r: int, g: int, b: int) -> color32: ...
|
def rgb(r: int, g: int, b: int) -> color32: ...
|
||||||
|
@ -1071,6 +1071,12 @@ static bool vmath_rgba(int argc, py_Ref argv) {
|
|||||||
|
|
||||||
static bool color32_alpha_blend_STATIC(int argc, py_Ref argv) {
|
static bool color32_alpha_blend_STATIC(int argc, py_Ref argv) {
|
||||||
PY_CHECK_ARGC(2);
|
PY_CHECK_ARGC(2);
|
||||||
|
if(!py_checktype(&argv[0], tp_color32)) return false;
|
||||||
|
if(py_isnone(&argv[1])) {
|
||||||
|
py_assign(py_retval(), &argv[0]);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
if(!py_checktype(&argv[1], tp_color32)) return false;
|
||||||
c11_color32 src = py_tocolor32(&argv[0]);
|
c11_color32 src = py_tocolor32(&argv[0]);
|
||||||
c11_color32 dst = py_tocolor32(&argv[1]);
|
c11_color32 dst = py_tocolor32(&argv[1]);
|
||||||
float alpha = src.a / 255.0f;
|
float alpha = src.a / 255.0f;
|
||||||
|
@ -32,3 +32,5 @@ assert a.to_vec3i() == vec3i(int(a.r * alpha), int(a.g * alpha), int(a.b * alpha
|
|||||||
c = rgb(100, 200, 255)
|
c = rgb(100, 200, 255)
|
||||||
assert c.ansi_fg('xxx') == '\x1b[38;2;100;200;255mxxx\x1b[0m'
|
assert c.ansi_fg('xxx') == '\x1b[38;2;100;200;255mxxx\x1b[0m'
|
||||||
assert c.ansi_bg('xxx') == '\x1b[48;2;100;200;255mxxx\x1b[0m'
|
assert c.ansi_bg('xxx') == '\x1b[48;2;100;200;255mxxx\x1b[0m'
|
||||||
|
|
||||||
|
assert color32.alpha_blend(a, None) == a
|
||||||
|
Loading…
x
Reference in New Issue
Block a user