google ai blocks 修改界面,增加自定义接口

AiBlocks

generate ai codes with blocks

edit 3 places to make new ai functions
1.AiBlocks\blocks\langkongai.js
2.AiBlocks\generators\python\langkongai.js
3.AiBlocks\langkongai\index.html 最后面xml部分
4.本地化语言 AiBlocks\msg\js\en.js zh-hans.js 中定义字符串

use AiBlocks\demos\blockfactory_old\makeblock.html to make a new block

=========================
python 会自动生成项目临时文件SmartScaletransferProjectbintmp.py 并执行

=========================
示例 AiBlockslangkongaiindex.html

<category name="aaaUserdefine" colour="%{BKY_COLOUR_HUE}">
    <block type="bbUserdefine"></block>
    <block type="ccUserdefine"></block>
</category>

说明:就是编程界面左边一栏菜单

示例 AiBlocksblockslangkongai.js
// aaaUserdefine 这里写函数的用途 bbUserdefine
{
"type": "bbUserdefine",
"message0": "函数显示名bb %1",
"args0": [

{
  "type": "input_value",
  "name": "para1Userdefine",
},
{
  "type": "input_value",
  "name": "msg",
  "check": "String"
} 

],
"output": null,
"previousStatement": null,
"nextStatement": null,
"colour": 210,
"tooltip": "这个函数干嘛的,输入参数是什么,输出什么",
"helpUrl": "http://www.example.com/"
},

说明:不支持多返回值,"output"为有返回值。
"previousStatement"可以接前面,"nextStatement"可以接后面。可以选0,1,2个。
output 与 前后连接不能同时出现。
可以三个都没有,一般不会这样。


示例 AiBlocksgeneratorspythonlangkongai.js

Blockly.Python['bbUserdefine'] = function(block) {
var value_para1Userdefine = Blockly.Python.valueToCode(block, 'para1Userdefine', Blockly.Python.ORDER_ATOMIC);
// TODO: Assemble Python into code variable.
Blockly.Python.definitions_['import_zbar'] = 'import zbar';
var code = 'zbar.getzbarmessage' + '(' + value_code +')n';
// TODO: Change ORDER_NONE to the correct strength.
return [code, Blockly.Python.ORDER_NONE];
};

Blockly.Python['showcam'] = function(block) {
var value_frame = Blockly.Python.valueToCode(block, 'frame', Blockly.Python.ORDER_ATOMIC);
var value_msg = Blockly.Python.valueToCode(block, 'msg', Blockly.Python.ORDER_ATOMIC);
// TODO: Assemble Python into code variable.
Blockly.Python.definitions_['import_cvs'] = 'import cvs';
var code = 'cvs.show' + '(' + value_frame +','+ value_msg +')n';
return code;
};

说明: return code; // 无返回值
return [code, Blockly.Python.ORDER_NONE];//有返回值

发表新评论