CN113760261A - 一种基于fgui的图形化积木编程方法及终端 - Google Patents

一种基于fgui的图形化积木编程方法及终端 Download PDF

Info

Publication number
CN113760261A
CN113760261A CN202111032660.4A CN202111032660A CN113760261A CN 113760261 A CN113760261 A CN 113760261A CN 202111032660 A CN202111032660 A CN 202111032660A CN 113760261 A CN113760261 A CN 113760261A
Authority
CN
China
Prior art keywords
building blocks
building
building block
splicing
fgui
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202111032660.4A
Other languages
English (en)
Other versions
CN113760261B (zh
Inventor
刘德建
罗迪
彭谦
陈宏�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN202111032660.4A priority Critical patent/CN113760261B/zh
Publication of CN113760261A publication Critical patent/CN113760261A/zh
Application granted granted Critical
Publication of CN113760261B publication Critical patent/CN113760261B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Programmable Controllers (AREA)

Abstract

本发明提供一种基于FGUI的图形化积木编程方法及终端,包括步骤:在Unity中采用FGUI编辑器生成积木块,并将编程所用的逻辑语义配置到积木块中;将积木块分类配置到积木管理列表中;获取从积木管理列表中拖出至操作区中的积木块,检测操作区中积木块之间的交互操作,交互操作包括积木块之间的拼接和嵌入;将操作区中的积木块及其之间的交互操作所对应的逻辑语义转化为可执行代码。本发明通过采用FGUI编辑器开发积木块,并将编程语义配置到积木块中,使编程图形化,同时采用积木管理列表管理不同类型的积木块,并能将搭建好的积木块对应的逻辑语义转化为可执行代码,解决了编程过程中的图形化搭建、操作及可执行代码生成等系列问题。

Description

一种基于FGUI的图形化积木编程方法及终端
技术领域
本发明涉及图形化编程技术领域,尤其是涉及一种基于FGUI的图形化积木编程方法及终端。
背景技术
程序编写是逻辑程序创作的必要过程,由于程序逻辑具有一定的思维能力要求,因此程序编写过程也具有一定的逻辑能力要求,而将整个程序编写过程图形化将有助于降低程序编写过程中对思维逻辑能力的要求,减少程序语义块的抽象性和编写过程的复杂性,提升程序编写的直观性。
现有技术中通常采用scratch(全球少儿图形化编程工具)来进行图形化编程,scratch采用基于谷歌的开源代码为核心,属于第三方开源机构,使用起来局限较大,而且该技术存在以下缺点:
1.渲染性能差:scratch采用WebGL的渲染方案来处理UI和场景逻辑,在3D渲染方面性能比较差;
2.生成伪代码:scratch在生成积木代码时,生成的是伪代码,只能描述积木逻辑,无法直接执行。
发明内容
本发明所要解决的技术问题是:提供一种基于FGUI的图形化积木编程方法及终端,解决编程过程中的图形化搭建、操作及可执行代码生成等系列问题。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于FGUI的图形化积木编程方法,包括步骤:
S1、在Unity中采用FGUI编辑器生成积木块,并将编程所用的逻辑语义配置到所述积木块中;
S2、将所述积木块分类配置到积木管理列表中;
S3、获取从所述积木管理列表中拖出至操作区中的积木块,检测所述操作区中所述积木块之间的交互操作,所述交互操作包括所述积木块之间的拼接和嵌入;
S4、将所述操作区中的所述积木块及其之间的所述交互操作所对应的逻辑语义转化为可执行代码。
为了解决上述技术问题,本发明采用的另一个技术方案为:
一种基于FGUI的图形化积木编程终端,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器在执行所述计算机程序时实现如上所述的一种基于FGUI的图形化积木编程方法中的步骤。
本发明的有益效果在于:本发明提供一种基于FGUI的图形化积木编程方法及终端,通过在Unity引擎中采用FGUI编辑器进行积木块的开发,保证3D渲染更优化的同时,将编程常用语义配置到积木块中,使编程图形化,同时通过积木管理列表分类不同类型的积木块,方便开发人员从积木管理列表中快速选择需要的积木块拖动到操作区进行拼接和嵌入,最后将搭建好的积木块所对应的逻辑语义转化为可执行代码,供其他需求方使用,解决了编程过程中的图形化搭建、操作及可执行代码生成等系列问题。
附图说明
图1为一种基于FGUI的图形化积木编程方法的流程图;
图2为不同形状、类型或颜色的积木块的示意图;
图3为积木管理列表示意图;
图4为操作区中的积木块操作示意图;
图5为可执行代码生成示意图;
图6为一种基于FGUI的图形化积木编程终端的结构示意图。
标号说明:
1、一种基于FGUI的图形化积木编程终端;2、存储器;3、处理器。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。
在此之前,为了便于理解本发明的技术方案,对本发明中涉及的一些英文缩写、特定名词等进行如下说明:
Unity:全称Unity 3D,Unity是实时3D互动内容创作和运营平台,可用于创作、运营和变现任何实时互动的2D和3D内容,支持平台包括手机、平板电脑、PC、游戏主机、增强现实和虚拟现实设备。
FGUI:FairyGUI,一种跨平台UI编辑器。
GLoader:装载器,FGUI编辑器中进行图片管理的插件,可用于加载图片、编辑图片属性等。
json工具:基于JavaScript的可视化编辑器,可用于在线编辑JavaScript代码,在本发明中用于创建积木管理列表。
请参照图1至图5,一种基于FGUI的图形化积木编程方法,包括步骤:
S1、在Unity中采用FGUI编辑器生成积木块,并将编程所用的逻辑语义配置到所述积木块中;
S2、将所述积木块分类配置到积木管理列表中;
S3、获取从所述积木管理列表中拖出至操作区中的积木块,检测所述操作区中所述积木块之间的交互操作,所述交互操作包括所述积木块之间的拼接和嵌入;
S4、将所述操作区中的所述积木块及其之间的所述交互操作所对应的逻辑语义转化为可执行代码。
由上述描述可知,本发明的有益效果在于:通过在Unity引擎中采用FGUI编辑器进行积木块的开发,保证3D渲染更优化的同时,将编程常用语义配置到积木块中,使编程图形化,同时通过积木管理列表分类不同类型的积木块,方便开发人员从积木管理列表中快速选择需要的积木块拖动到操作区进行拼接和嵌入,最后将搭建好的积木块所对应的逻辑语义转化为可执行代码,供其他需求方使用,解决了编程过程中的图形化搭建、操作及可执行代码生成等系列问题。
进一步地,所述S1和所述S2之间还包括:
根据所述积木块的类型及形状在所述积木块的可拼接处配置碰撞检测器,并在所述碰撞检测器中增加逻辑信息,所述逻辑信息包括所述积木块的类型和数据类型。
由上述描述可知,积木块生成后,在积木块的可拼接位置创建碰撞检测器,以便后续拖动积木块时不同积木块上的碰撞检测器之间进入碰撞后能够进行碰撞检测,即积木块之间的连接检测,使不同积木块之间进行组合,从而快速达到想要的程序逻辑,提高图形化积木编程的效率。
进一步地,所述S3中检测操作区中所述积木块之间的交互操作,具体为:
通过所述碰撞检测器检测进行拼接和嵌入的所述积木块的类型和数据类型,根据预设规则判断所述积木块之间是否可进行拼接和嵌入,所述预设规则包括前序同类型不拼接、前序拼接后序和匹配数据类型拼接或嵌入;
所述拼接指所述积木块在纵向上的连接结合,所述嵌入指所述积木块在横向上的连接结合,所述前序同类型不拼接指相同的前序类型的所述积木块之间不拼接,所述前序拼接后序指前序类型的所述积木块只能拼接在后序类型的所述积木块的上方,所述匹配数据类型拼接或嵌入指字符串型所述积木块只能与能返回与其同类型字符串数据的所述积木块拼接或嵌入。
由上述描述可知,碰撞检测器根据预设规则进行碰撞检测,有效防止了积木块之间的错误拼接、无效拼接等问题,使积木块之间的拼接和嵌入操作逻辑合理,保证后续生成的可执行代码能够正确执行。
进一步地,所述S1具体包括以下步骤:
S11、在所述FGUI编辑器中将基本块分解为横向多行或纵向多列的空位;
S12、为所述空位挂载基础控件,所述基础控件包括文字、输入框、下拉框、运算符按钮、判断框和多种形状的拼接容器框;
S13、使用GLoader控件为所述空位加载形状不同的图片资源,将不同形状的所述空位进行横向或纵向的拼装,并按照预设缩放规则进行拉伸;
S14、拼装和拉伸后的所述积木块通过整体形状自适应最终构成不同类型的所述积木块;
S15、为不同类型的所述积木块配置对应的逻辑语义,并配置不同的颜色,用于区分不同类型的所述积木块。
由上述描述可知,通过将基本块分解为横向多行或纵向多列的结构,并导入不同形状的图片资源,用于构成积木块的基本形状,使积木块的形状多样化,从而使开发者能够为不同类型的积木块自由设计不同的形状或颜色;同时能根据开发需要在积木块上挂载不同的基础控件,也方便了后续积木管理列表按照不同形状或颜色快速对不同类型的积木块进行分类以及在操作区中对积木块的操作,进一步提高了图形化积木编程的效率。
进一步地,所述S14中的所述整体形状自适应具体为:
所述空位挂载的所述基础控件遵循预设布局规则进行位置及大小计算的自适应,所述空位的形状随着所述基础控件的形状的实时改变进行自适应,所述积木块的形状随着所述空位的形状的实时改变进行自适应。
由上述描述可知,通过整体形状自适应,提高操作区中的积木块整体布局的整齐性。
进一步地,所述S2具体包括以下步骤:
S21、通过json工具配置所述积木管理列表;
S22、根据配置文件将所述积木块分类配置到所述积木管理列表中,所述配置文件包括分类方法、每个分类所对应的所述积木块和每个所述积木块的颜色信息。
由上述描述可知,根据配置文件将积木块按照类型、颜色等分类配置到积木管理列表中,形成类似目录的列表形式,便于开发人员根据列表快速检索到需要的积木块,进一步提高了图形化积木编程的效率。
进一步地,所述交互操作还包括所述积木块的拖动、放置和点击。
由上述描述可知,为积木块配置拖动、放置和点击的交互操作,用于分别实现将积木块从积木管理列表中拖出、放置在操作区和鼠标点击等行为,实现更加灵活和多样的积木块编程,进一步提高了图形化积木编程的效率。
进一步地,所述S4还包括:
所述操作区中的所述积木块的输入数据或所述交互操作发生改变时,触发对应的逻辑语义发生改变,重新生成所述可执行代码。
由上述描述可知,积木块在拼接和嵌入的操作完成时会触发生成相应的逻辑语义,重新生成新的可执行代码,即积木块进行操作时能同步生成可执行代码,进一步提高了图形化积木编程的效率。
进一步地,所述操作区为操作所述积木块的区域,用于将所述积木管理列表中的所述积木块拖出进行创建、复制、粘贴、移动、拼接、嵌入、删除和输入数据操作。
由上述描述可知,操作区用于为开发者提供直观的积木块操作界面,提高图形化积木编程的直观性。
请参照图6,一种基于FGUI的图形化积木编程终端,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器在执行所述计算机程序时实现如上所述的一种基于FGUI的图形化积木编程方法中的步骤。
由上述描述可知,本发明的有益效果在于:基于同一技术构思,配合上述的一种制作实体起机器人动作的方法,提供一种基于FGUI的图形化积木编程终端,通过在Unity引擎中采用FGUI编辑器进行积木块的开发,保证3D渲染更优化的同时,将编程常用语义配置到积木块中,使编程图形化,同时通过积木管理列表分类不同类型的积木块,方便开发人员从积木管理列表中快速选择需要的积木块拖动到操作区进行拼接和嵌入,最后将搭建好的积木块所对应的逻辑语义转化为可执行代码,供其他需求方使用,解决了编程过程中的图形化搭建、操作及可执行代码生成等系列问题。
请参照图1,本发明的实施例一为:
一种基于FGUI的图形化积木编程方法及终端,包括步骤:
S1、在Unity中采用FGUI编辑器生成积木块,并将编程所用的逻辑语义配置到积木块中;
S2、将积木块分类配置到积木管理列表中;
S3、获取从积木管理列表中拖出至操作区中的积木块,检测操作区中积木块之间的交互操作,交互操作包括积木块之间的拼接和嵌入;
S4、将操作区中的积木块及其之间的交互操作所对应的逻辑语义转化为可执行代码。
即本实施例通过在Unity引擎中采用FGUI编辑器进行积木块的开发,保证3D渲染更优化的同时,将编程常用语义配置到积木块中,使编程图形化,同时通过积木管理列表分类不同类型的积木块,方便开发人员从积木管理列表中快速选择需要的积木块拖动到操作区进行拼接和嵌入,最后将搭建好的积木块所对应的逻辑语义转化为可执行代码,供其他需求方使用,解决了编程过程中的图形化搭建、操作及可执行代码生成等系列问题。
请参照图1至图5,本发明的实施例二为:
一种基于FGUI的图形化积木编程方法,在上述实施例一的基础上,在本实施例中,步骤S1具体包括以下步骤:
S11、在FGUI编辑器中将基本块分解为横向多行或纵向多列的空位。
S12、为空位挂载基础控件,基础控件包括文字、输入框、下拉框、运算符按钮、判断框和多种形状的拼接容器框。
S13、使用GLoader控件为空位加载形状不同的图片资源,将不同形状的空位进行横向或纵向的拼装,并按照预设缩放规则进行拉伸。
S14、拼装和拉伸后的积木块通过整体形状自适应最终构成不同类型的积木块;
其中,整体形状自适应具体为空位挂载的基础控件遵循预设布局规则进行位置及大小计算的自适应,空位的形状随着基础控件的形状的实时改变进行自适应,积木块的形状随着空位的形状的实时改变进行自适应。
例如,当某个积木块挂载有输入框基础控件时,开发人员在输入框输入的内容超过初始输入框的长度时,输入框自身的尺寸就会适应输入的内容而横向延长,从而整体积木块的长度也会相适应进行横向的延长变化。
如图5所示,在本实施例中,左侧操作区中搭建的积木块就通过了整体形状自适应使得每个积木块之间的拼接和嵌入整齐紧密,提高了操作区中的积木块整体布局的整齐性。
其中,图5中左侧的操作区为操作积木块的区域,用于将积木管理列表中的积木块拖出进行创建、复制、粘贴、移动、拼接、嵌入、删除和输入数据等操作,可为开发者提供直观的积木块操作界面,提高图形化积木编程的直观性。
S15、为不同类型的积木块配置对应的逻辑语义,并配置不同的颜色,用于区分不同类型的积木块。
在本实施例中,如图2所示为不同形状、类型或颜色的积木块,均由不同形状的空位进行拼接构成。即在本实施例中,通过将基本块分解为横向多行或纵向多列的结构,并导入不同形状的图片资源,以构成积木块的基本形状,通过这些不同形状的空位进行拼接构成形状多样的积木块,使开发者能够为不同类型的积木块自由设计不同的形状或颜色;同时根据开发需要为积木块挂载不同的基础控件,也方便了后续积木管理列表按照不同形状或颜色快速对不同类型的积木块进行分类以及在操作区中对积木块的操作,进一步提高了图形化积木编程的效率。
其中,在本实施例中,步骤S1和步骤S2之间还包括:
根据积木块的类型及形状在积木块的可拼接处配置碰撞检测器,并在碰撞检测器中增加逻辑信息,逻辑信息包括积木块的类型和数据类型。
即在本实施例中,在积木块的可拼接位置创建碰撞检测器,使后续拖动积木块时不同积木块上的碰撞检测器之间进入碰撞后能够进行碰撞检测,用于判断积木块之间的是否可以连接,使不同积木块之间进行组合,从而快速达到想要的程序逻辑,提高图形化积木编程的效率。
例如,可以在不同形状的积木块的突出位置或凹陷位置配置碰撞检测器,比如菱形的积木块和椭圆形的积木块,可以在菱形的左侧头部和椭圆形的左侧头部配置碰撞检测器,然后在碰撞检测器中增加具体的逻辑信息,比如在菱形积木块的碰撞检测器中增加代表布尔值的数据信息,在椭圆形积木块的碰撞检测器中增加代表字符串型的数据信息。
其中,在本实施例中,步骤S2具体包括以下步骤:
S21、通过json工具配置积木管理列表;
S22、根据配置文件将积木块分类配置到积木管理列表中,配置文件包括分类方法、每个分类所对应的积木块和每个积木块的颜色信息。
在本实施例中,如图3所示为积木管理列表的示意图,其中积木管理列表包括了事件、控制、运动、声音、侦测和运算等类型的分类列表,在每个类型的分类列表中包括了相关类型的积木块。即在本实施例中,可根据配置文件将积木块按照类型、颜色等信息分类配置到积木管理列表中,形成类似目录的列表形式,以便于开发人员根据列表快速检索到需要的积木块,进一步提高了图形化积木编程的效率。
其中,步骤S3中检测操作区中积木块之间的交互操作,具体为:
通过碰撞检测器检测进行拼接和嵌入的积木块的类型和数据类型,根据预设规则判断积木块之间是否可进行拼接和嵌入,预设规则包括前序同类型不拼接、前序拼接后序和匹配数据类型拼接或嵌入。
其中,在本实施例中,拼接指积木块在纵向上的连接结合,比如“点击开始”的积木块下方可以拼接“如果-那么”的条件型积木块;嵌入指积木块在横向上的连接结合,比如“如果-那么”的条件型积木块,其右侧横向连接有一个菱形的条件判断积木块,例如“是否是偶数”的积木块。
另外,在本实施例中,前序同类型不拼接指相同的前序类型的积木块之间不拼接,例如两个“点击开始”积木块,均是用于放在开头的前序类型积木块,故而这两个“点击开始”积木块不能进行拼接;前序拼接后序指前序类型的积木块只能拼接在后序类型的积木块的上方,例如“点击开始”积木块只能拼接在“如果-那么”积木块上方;匹配数据类型拼接或嵌入指字符串型积木块只能与能返回与其同类型字符串数据的积木块进行拼接或嵌入,例如代表字符型的椭圆形输入框只能与能返回字符型的椭圆形积木块进行拼接或嵌入,代表布尔值的菱形框只能拼接或嵌入返回布尔值的积木块。
因此,本实施例通过碰撞检测器根据预设规则进行碰撞检测,能有效防止积木块之间的错误拼接、无效拼接等问题,使积木块之间的拼接和嵌入操作的逻辑合理,保证后续生成的可执行代码能够正确执行。
另外,在本实施例中,交互操作还包括积木块的拖动、放置和点击。
比如图4中,在“如果-那么”积木块中,通过点击位于右侧的基础控件以下拉出可选择数值类型的下拉框,可通过再次点击下拉框中的选项从而为左侧的输入框输入的数字配置需要的数值类型;再比如积木块的拼接和断开就可以通过拖动和放置积木块实现。另外,部分特殊的积木块还可以进行形状变化的操作,例如“如果-那么-否则”积木块,可以使用形状增加的按钮,通过多次点击增加中间的“否则”的层数,也可以使用减少按钮进行点击使层级减少,从而达到想要的程序逻辑控制的需要。
因此,本实施例通过为积木块配置拖动、放置和点击等交互操作,能实现将积木块从积木管理列表中拖出、放置在操作区和鼠标点击进行配置等行为,实现了更加灵活和多样的积木块编程,进一步提高了图形化积木编程的效率。在其他等他实施例中,交互操作还可以为其他能够触发积木块响应逻辑语义变化的其他行为,以进一步实现更细化的积木块编程。
其中,在本实施例中,步骤S4还包括:
操作区中的积木块的输入数据或交互操作发生改变时,触发对应的逻辑语义发生改变,重新生成可执行代码。
如图5所示,在本实施例中,左侧操作区搭建好的积木块所对应的逻辑语义在右侧生成了对应的可执行代码。在本实施例中,积木块在拼接和嵌入的操作完成时会触发生成相应的逻辑语义,当对积木块上的可操作的控件进行操作,例如对积木块输入数据时,会触发相应的逻辑发生数据结构改变的事件,即改变了原有的逻辑语义,此时可通过事件监听同步获取到积木块对应的逻辑语义的改变,重新生成可执行代码,即积木块进行操作时能同步生成可执行代码,进一步提高了图形化积木编程的效率。
请参照图6,本发明的实施例三为:
一种基于FGUI的图形化积木编程终端1,包括存储器2、处理器3以及存储在存储器2上并可在处理器3上运行的计算机程序,处理器3在执行计算机程序时实现上述实施例一或实施例二中的一种基于FGUI的图形化积木编程方法中的步骤。
综上所述,本发明提供的一种基于FGUI的图形化积木编程方法及终端,通过在Unity引擎中采用FGUI编辑器进行积木块的开发,将编程常用语义配置到积木块中,同时通过积木管理列表分类不同类型的积木块,最后将操作区中搭建好的积木块及其之间的连接关系对应的逻辑语义转化为可执行代码,供其他需求方使用,具有以下有益效果:
1、采用Unity引擎进行开发,使3D渲染更优化;
2、将编程常用语义配置到积木块中,使编程图形化;
3、积木管理列表方便开发人员快速选择需要的积木块拖动到操作区进行拼接和嵌入,提高了图形化积木编程的效率;
4、采用碰撞检测器进行碰撞检测,有效防止了积木块之间的错误拼接、无效拼接等问题,保证积木块编程的逻辑合理和可执行代码的正确执行;
5、对于搭建好的积木块,可生成完整的可执行的脚本代码,而不是伪代码。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种基于FGUI的图形化积木编程方法,其特征在于,包括步骤:
S1、在Unity中采用FGUI编辑器生成积木块,并将编程所用的逻辑语义配置到所述积木块中;
S2、将所述积木块分类配置到积木管理列表中;
S3、获取从所述积木管理列表中拖出至操作区中的积木块,检测所述操作区中所述积木块之间的交互操作,所述交互操作包括所述积木块之间的拼接和嵌入;
S4、将所述操作区中的所述积木块及其之间的所述交互操作所对应的逻辑语义转化为可执行代码。
2.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S1和所述S2之间还包括:
根据所述积木块的类型及形状在所述积木块的可拼接处配置碰撞检测器,并在所述碰撞检测器中增加逻辑信息,所述逻辑信息包括所述积木块的类型和数据类型。
3.根据权利要求2所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S3中检测操作区中所述积木块之间的交互操作,具体为:
通过所述碰撞检测器检测进行拼接和嵌入的所述积木块的类型和数据类型,根据预设规则判断所述积木块之间是否可进行拼接和嵌入,所述预设规则包括前序同类型不拼接、前序拼接后序和匹配数据类型拼接或嵌入;
所述拼接指所述积木块在纵向上的连接结合,所述嵌入指所述积木块在横向上的连接结合,所述前序同类型不拼接指相同的前序类型的所述积木块之间不拼接,所述前序拼接后序指前序类型的所述积木块只能拼接在后序类型的所述积木块的上方,所述匹配数据类型拼接或嵌入指字符串型所述积木块只能与能返回与其同类型字符串数据的所述积木块拼接或嵌入。
4.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S1具体包括以下步骤:
S11、在所述FGUI编辑器中将基本块分解为横向多行或纵向多列的空位;
S12、为所述空位挂载基础控件,所述基础控件包括文字、输入框、下拉框、运算符按钮、判断框和多种形状的拼接容器框;
S13、使用GLoader控件为所述空位加载形状不同的图片资源,将不同形状的所述空位进行横向或纵向的拼装,并按照预设缩放规则进行拉伸;
S14、拼装和拉伸后的所述积木块通过整体形状自适应最终构成不同类型的所述积木块;
S15、为不同类型的所述积木块配置对应的逻辑语义,并配置不同的颜色,用于区分不同类型的所述积木块。
5.根据权利要求4所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S14中的所述整体形状自适应具体为:
所述空位挂载的所述基础控件遵循预设布局规则进行位置及大小计算的自适应,所述空位的形状随着所述基础控件的形状的实时改变进行自适应,所述积木块的形状随着所述空位的形状的实时改变进行自适应。
6.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S2具体包括以下步骤:
S21、通过json工具配置所述积木管理列表;
S22、根据配置文件将所述积木块分类配置到所述积木管理列表中,所述配置文件包括分类方法、每个分类所对应的所述积木块和每个所述积木块的颜色信息。
7.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述交互操作还包括所述积木块的拖动、放置和点击。
8.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述S4还包括:
所述操作区中的所述积木块的输入数据或所述交互操作发生改变时,触发对应的逻辑语义发生改变,重新生成所述可执行代码。
9.根据权利要求1所述的一种基于FGUI的图形化积木编程方法,其特征在于,所述操作区为操作所述积木块的区域,用于将所述积木管理列表中的所述积木块拖出进行创建、复制、粘贴、移动、拼接、嵌入、删除和输入数据操作。
10.一种基于FGUI的图形化积木编程终端,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器在执行所述计算机程序时实现如权利要求1至9任一所述的一种基于FGUI的图形化积木编程方法中的步骤。
CN202111032660.4A 2021-09-03 2021-09-03 一种基于fgui的图形化积木编程方法及终端 Active CN113760261B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111032660.4A CN113760261B (zh) 2021-09-03 2021-09-03 一种基于fgui的图形化积木编程方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111032660.4A CN113760261B (zh) 2021-09-03 2021-09-03 一种基于fgui的图形化积木编程方法及终端

Publications (2)

Publication Number Publication Date
CN113760261A true CN113760261A (zh) 2021-12-07
CN113760261B CN113760261B (zh) 2023-05-23

Family

ID=78792937

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111032660.4A Active CN113760261B (zh) 2021-09-03 2021-09-03 一种基于fgui的图形化积木编程方法及终端

Country Status (1)

Country Link
CN (1) CN113760261B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117667058A (zh) * 2023-12-06 2024-03-08 北京亦心科技有限公司 图形化编程中积木块处理方法及其设备、存储介质、终端

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103197929A (zh) * 2013-03-25 2013-07-10 中国科学院软件研究所 一种面向儿童的图形化编程系统和方法
CN109345908A (zh) * 2018-09-30 2019-02-15 上海畅学教育科技有限公司 可视化模块编程系统及其控制方法
US20190163452A1 (en) * 2017-11-30 2019-05-30 Dspace Digital Signal Processing And Control Engineering Gmbh Method and system for generating program code
CN110377280A (zh) * 2019-07-29 2019-10-25 郑州幻视科技有限公司 一种用于编程教学的可视化系统
CN111167119A (zh) * 2019-12-31 2020-05-19 深圳市优必选科技股份有限公司 一种游戏开发展示方法、装置、设备及存储介质
CN111596852A (zh) * 2020-06-12 2020-08-28 腾讯科技(深圳)有限公司 内容编辑方法、系统及计算机可读存储介质和终端设备
CN112698823A (zh) * 2020-12-31 2021-04-23 佛山冠湾智能科技有限公司 一种图形化的机器人编程交互系统及方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103197929A (zh) * 2013-03-25 2013-07-10 中国科学院软件研究所 一种面向儿童的图形化编程系统和方法
US20190163452A1 (en) * 2017-11-30 2019-05-30 Dspace Digital Signal Processing And Control Engineering Gmbh Method and system for generating program code
CN109345908A (zh) * 2018-09-30 2019-02-15 上海畅学教育科技有限公司 可视化模块编程系统及其控制方法
CN110377280A (zh) * 2019-07-29 2019-10-25 郑州幻视科技有限公司 一种用于编程教学的可视化系统
CN111167119A (zh) * 2019-12-31 2020-05-19 深圳市优必选科技股份有限公司 一种游戏开发展示方法、装置、设备及存储介质
CN111596852A (zh) * 2020-06-12 2020-08-28 腾讯科技(深圳)有限公司 内容编辑方法、系统及计算机可读存储介质和终端设备
CN112698823A (zh) * 2020-12-31 2021-04-23 佛山冠湾智能科技有限公司 一种图形化的机器人编程交互系统及方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117667058A (zh) * 2023-12-06 2024-03-08 北京亦心科技有限公司 图形化编程中积木块处理方法及其设备、存储介质、终端

Also Published As

Publication number Publication date
CN113760261B (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
US12079626B2 (en) Methods and systems for creating applications using scene trees
US11816309B2 (en) User interface logical and execution view navigation and shifting
CN108279964B (zh) 蒙层渲染的实现方法、装置、智能设备及存储介质
Pawson et al. Naked objects
EP3798757B1 (en) System and method for developing industrial applications
CN105739983B (zh) 脚本程序编辑装置及其实现方法
CN106293653B (zh) 代码处理方法及装置、计算机可读介质
CN110262791B (zh) 一种可视化编程方法、装置及运行器、可读存储介质
CN103197929A (zh) 一种面向儿童的图形化编程系统和方法
JP2006107478A (ja) ワークフローを設計するための拡張可能フレームワーク
JPH04227538A (ja) プログラム仕様の対話的な設計・検査を支援する方法およびシステム
US20070061778A1 (en) Visual programming method
US20210232630A1 (en) Methods and systems for creating networks
CN112199086A (zh) 自动编程控制系统、方法、装置、电子设备及存储介质
US11775142B2 (en) Preferential automation view curation
CN114675830A (zh) 部署边缘ai和构建可视化ai编程平台的方法、装置及电子设备
Taentzer et al. Amalgamated graph transformations and their use for specifying AGG—an algebraic graph grammar system
CN112506502A (zh) 基于人机交互的可视化编程方法、装置、设备和存储介质
CN113760261A (zh) 一种基于fgui的图形化积木编程方法及终端
CN104793927A (zh) 一种界面编辑方法及装置
KR102300005B1 (ko) 소프트웨어 컴포넌트를 표현하는 각각의 그래픽 객체 간의 연결 조작을 이용한 소프트웨어 개발 어시스트 방법 및 그 시스템
US20020147963A1 (en) Method and apparatus for generating machine control instructions
Dessart et al. Animated transitions between user interface views
Dixon et al. Pixel-based methods for widget state and style in a runtime implementation of sliding widgets
CN106126213A (zh) 一种基于IFML的Android开发建模方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant