fix(boards): 修复micropython下 绘制指针 图形块代码生成异常
This commit is contained in:
@@ -1146,7 +1146,7 @@ export const nova_draw_pointer = function (_, generator) {
|
|||||||
var angle = generator.valueToCode(this, 'angle', generator.ORDER_ASSIGNMENT);
|
var angle = generator.valueToCode(this, 'angle', generator.ORDER_ASSIGNMENT);
|
||||||
var color = generator.valueToCode(this, 'VAR', generator.ORDER_ATOMIC);
|
var color = generator.valueToCode(this, 'VAR', generator.ORDER_ATOMIC);
|
||||||
if (color.slice(0, 2) == "0x") {
|
if (color.slice(0, 2) == "0x") {
|
||||||
var code = "onboard_tft.pointern(angle=" + angle + ","+ color +")\n";
|
var code = "onboard_tft.pointern(angle=" + angle + ", color="+ color +")\n";
|
||||||
} else {
|
} else {
|
||||||
const rgbValues = color.match(/\d+/g);
|
const rgbValues = color.match(/\d+/g);
|
||||||
const r = parseInt(rgbValues[0]);
|
const r = parseInt(rgbValues[0]);
|
||||||
@@ -1154,9 +1154,8 @@ export const nova_draw_pointer = function (_, generator) {
|
|||||||
const b = parseInt(rgbValues[2]);
|
const b = parseInt(rgbValues[2]);
|
||||||
var rgb = "0x" + ((r << 16) + (g << 8) + b).toString(16).padStart(4, "0");
|
var rgb = "0x" + ((r << 16) + (g << 8) + b).toString(16).padStart(4, "0");
|
||||||
var rgb565 = (rgb & 0xf80000) >> 8 | (rgb & 0xfc00) >> 5 | (rgb & 0xff) >> 3;
|
var rgb565 = (rgb & 0xf80000) >> 8 | (rgb & 0xfc00) >> 5 | (rgb & 0xff) >> 3;
|
||||||
var code = "onboard_tft.pointern(angle=" + angle + ', 0x' + rgb565.toString(16) + ")\n";
|
var code = "onboard_tft.pointern(angle=" + angle + ', color=0x' + rgb565.toString(16) + ")\n";
|
||||||
}
|
}
|
||||||
var code = "onboard_tft.pointern(angle=" + angle + ")\n";
|
|
||||||
return code;
|
return code;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user