CN112817510B - 图形程序语言的垂直线连续编辑方法 - Google Patents
图形程序语言的垂直线连续编辑方法 Download PDFInfo
- Publication number
- CN112817510B CN112817510B CN201911118938.2A CN201911118938A CN112817510B CN 112817510 B CN112817510 B CN 112817510B CN 201911118938 A CN201911118938 A CN 201911118938A CN 112817510 B CN112817510 B CN 112817510B
- Authority
- CN
- China
- Prior art keywords
- node
- nodes
- vertical line
- editor
- queue
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/34—Graphical or visual programming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- User Interface Of Digital Computer (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
一种图形程序语言的垂直线连续编辑方法,包括:进入编辑器的编辑模式;于串/并联图形上选择一个起始节点,其中起始节点为串/并联图形中的任一元件区块的端点;显示当前节点周围的一或多个候选节点;由当前节点连接至任一候选节点,并将被连接的候选节点转换为已连接节点;于离开编辑模式前将已连接节点做为当前节点,并继续计算、显示与连接一或多个候选节点;于离开编辑模式时产生连接起始节点与一或多个已连接节点的连续垂直线;及,依据连续垂直线修改复数元件区块的串/并联关系并更新串/并联图形。
Description
技术领域
本发明涉及一种图形程序语言的编辑方法,尤其涉及一种图形程序语言的垂直线的编辑方法。
背景技术
一般来说,使用者可以通过图形程序语言编辑器来编辑多个虚拟工控设备之间的逻辑连接关系(例如串、并联关系),借此,使用者可以轻易地对多个虚拟工控设备判断当前设备状态的组合进行自动化操作,并进而建立所需的系统实施方式。
现有的图形程序语言编辑器,例如阶梯图(Ladder Diagram)编辑器,主要是以一个使用者指令对应至一个动作的方式来进行编辑。当使用者要改变图形中的多个元件区块(又称为normal block,分别对应至不同虚拟设备)之间的连接关系时,一次仅被允许新增一条垂直线。换句话说,当使用者要建立多条垂直线时,就必须需要分别施以多个指令,相当不便。
承上所述,于现行的编辑器的操作中,使用者在把所需的所有元件区块都新增至图形中后,无法通过单一次操作建立一条跨越多个节点的连续垂直线,并借此快速地调整多个元件区块的连接关系。有鉴于此,对于使用者来说,一个具有众多元件区块且连接关系较为复杂的图形,实相当难以绘制。
发明内容
本发明的主要目的,在于提供一种图形程序语言的垂直线连续编辑方法,可允许使用者以单一次操作直接于图形上建立一条跨越多个节点的连续垂直线,借此快速地修改多个元件区块之间的连接关系同时更新图形。
为了实现上述的目的,本发明主要是应用于一编辑器,并且包括下列步骤:进入一编辑模式;在一串/并联图形上取得一起始节点,其中该串/并联图形由复数元件区块组成,并且该起始节点为任一该元件区块的端点;计算并显示当前节点周围的一或多个候选节点,其中该一或多个候选节点为该当前节点周围的一或多个该元件区块的端点;由该当前节点连接至任一该候选节点;将该被连接的候选节点转换为一已连接节点;判断是否离开该编辑模式;于离开该编辑模式前将该已连接节点做为该当前节点,并继续计算、显示并连接一或多个候选节点;于离开该编辑模式时产生连接该起始节点及一或多个该已连接节点的一连续垂直线;及,依据该连续垂直线修改该复数元件区块的串/并联关系并更新该串/并联图形。
本发明相对于现有技术所能实现的技术效果在于,使用者可以通过单一次的操作就直接在图形上建立一条连续垂直线,并且通过连续垂直线快速地修改多个元件区块之间的连接关系,同时更新图形,借此提升编辑器的使用便利性。
附图说明
图1A为本发明的连续垂直线的第一具体实施例的第一建立动作图。
图1B为本发明的连续垂直线的第一具体实施例的第二建立动作图。
图1C为本发明的连续垂直线的第一具体实施例的第三建立动作图。
图2为本发明的第一具体实施例的编辑流程图。
图3A为本发明的连续垂直线的第二具体实施例的第一建立动作图。
图3B为本发明的连续垂直线的第二具体实施例的第二建立动作图。
图3C为本发明的连续垂直线的第二具体实施例的第三建立动作图。
图3D为本发明的连续垂直线的第二具体实施例的第四建立动作图。
图3E为本发明的连续垂直线的第二具体实施例的第五建立动作图。
图3F为本发明的连续垂直线的第二具体实施例的第六建立动作图。
图3G为本发明的连续垂直线的第二具体实施例的第七建立动作图。
图4为本发明的第一具体实施例的垂直线退回示意图。
图5A为本发明的第二具体实施例的编辑流程图第一部分。
图5B为本发明的第二具体实施例的编辑流程图第二部分。
图5C为本发明的第二具体实施例的编辑流程图第三部分。
图6A为本发明的连续垂直线的第三具体实施例的第一建立动作图。
图6B为本发明的连续垂直线的第三具体实施例的第二建立动作图。
图6C为本发明的连续垂直线的第三具体实施例的第三建立动作图。
图6D为本发明的连续垂直线的第三具体实施例的第四建立动作图。
附图标记说明:
1…图形
2…元件区块
21…串联区块
22…并联区块
23…节点
3、8…连续垂直线
31…第一切割线
32…第二切割线
33…第三切割线
41、61…起始节点
42、62…候选节点
43、63…已连接节点
5、7…预连接线
B0~B15…元件区块
L0~L11…端点
Q…伫列
S10~S26…编辑步骤
S30~S48、S50~S56、S58~S70…编辑步骤
具体实施方式
兹就本发明的一优选实施例,配合附图,详细说明如后。
本发明公开了一种图形程序语言的垂直线连续编辑方法(下面将于说明书中简称为编辑方法),所述编辑方法主要应用于各式图形程序语言的编辑器,并且所述编辑器由电脑设备所运行。
首请参阅图1A、图1B及图1C,分别为本发明的连续垂直线的第一具体实施例的第一建立动作图、第二建立动作图与第三建立动作图。
如图1A所示,当使用者操作电脑设备,并于电脑设备上运行所述图形程序语言的编辑器后,即可对编辑器进行操作,以通过编辑器的编辑工具(图未标示)将一或多个元件区块(Normal block)2添加至编辑器中,并由该些元件区块2来构成一个串/并联图形(下面简称为图形1)。
具体地,如图1A所示,在使用者将多个元件区块2添加至编辑器后,即可由多个串联的元件区块2构成一个串联区块21(Continue blocks),并由彼此并联的多个串联区块21构成一个并联区块22(Branch blocks)。
如图1B所示,本发明的其中一个技术特征在于,使用者可通过电脑设备的鼠标、键盘、触控板等人机装置对编辑器进行操作,以将图形1中的多个节点23进行连接,其中各个节点23分别为各个元件区块2的端点。值得一提的是,本发明中,使用者可以通过单一次的操作(如操作上述鼠标、键盘或触控板)来完成图形1中的复数个节点23的连接动作。
如图1C所示,于使用者通过单一次的操作连接了图形1中的复数个节点23后,编辑器可依据被连接的复数个节点23产生一条连续垂直线3,并且通过连续垂直线3来修改图形1中的多个元件区块2的串/并联关系,同时更新图形1并且重新显示更新后的图形1。
本发明中,使用者通过单一次的操作所建立的连续垂直线3可以同时跨越多个节点23,并可达到现有技术的编辑器需要按序发出多个指令后才能实现的效果。
具体地,如图1C所示,在编辑器依据使用者的操作产生了所述连续垂直线3后,编辑器即可重新规划图形1,将连续垂直线3左边的多个元件区块2重新划分为一个新的并联区块22,将连续垂直线3右边的多个元件区块2也重新划分为一个新的并联区块22,再将两个新的并联区块22进行串联。最后,再依据上述复数元件区块2被更新后的串/并联关系来更新图形1。
如图1B及图1C所示,所述连续垂直线3是由复数垂直线构成,但于本发明中,使用者不需要发出多个指示(即,多个操作)以建立多条垂直线,而可通过单一次的操作直接产生所述连续垂直线3。借此,大幅提升了编辑器的便利性。
值得一提的是,于图1A至图1C中,主要是以阶梯图(Ladder Diagram)的编辑器为例,以进行说明,但并不以此为限。
续请参阅图2,为本发明的第一具体实施例的编辑流程图。图2公开了本发明的编辑方法的具体编辑步骤,当图形程序语言的编辑器执行了图2所示的编辑步骤后,即可如图1A至图1C所示的范例而修改既有图形1中的复数元件区块2的串/并联关系,并且对既有图形1进行更新后再重新显示。
首先,编辑器接受使用者的外部操作(例如第一外部操作),以进入编辑模式(步骤S10)。本实施例中,使用者可以对编辑器进行操作,以于图形1中添加所需数量与形态的复数元件区块2,接着再令编辑器进入所述编辑模式,并于编辑模式中建立所述连续垂直线3,以通过连续垂直线3修改复数元件区块2的串/并联关系并更新图形1。
于进入编辑模式时,使用者可对电脑设备进行操作(例如操作所述鼠标、键盘或触控板等),以于图形1中选择一个起始节点(source node),其中,所述起始节点是图形1中的任一个元件区块2的端点(步骤S12)。步骤S12后,编辑器可将使用者选择的起始节点做为当前节点,并且由当前节点开始建立所述连续垂直线3。本实施例中,当前节点指的是使用者通过鼠标、键盘或触控板所操作的一个指标(例如鼠标的游标)目前在编辑器的画面中所停留的位置。
值得一提的是,当所述起始节点被确定后,编辑器可将起始节点的所在位置添加至一个伫列(图未标示)中,借此记录连续垂直线3的起始节点的位置(容后详述)。
步骤S12后,编辑器可以计算当前节点周围的一或多个有效的候选节点,并且以特殊标记于图形1上标示这些候选节点(步骤S14)。本实施例中,所述候选节点为当前节点周围的一或多个元件区块2的端点。更具体地,本实施例中的有效候选节点,指的是当使用者建立一条连接当前节点与候选节点的连接线时,不会造成任一元件区块2短路的节点。
举例来说,若当前节点的周围共有十个节点,但其中有三个节点会在与当前节点连接后造成至少一个元件区块2短路,则编辑器在步骤S14中将仅会于图形1上标记不会造成短路的七个节点,以做为前述的候选节点。
值得一提的是,编辑器还可监视使用者的操作(例如监控所述指标的位置),于指标由当前节点开始移动,并且移动距离大于门限值时,才计算并显示当前节点周围的一或多个候选节点。借此,可以有效避免使用者的误触。
另外,于编辑器监视使用者的操作的情况下,编辑器还可判断所述指标由当前节点开始移动的移动方向。于此实施例中,编辑器可以在所述移动方向是朝上移动时,仅计算并显示位在当前节点上方的一或多个候选节点的位置,并且在所述移动方向是朝下移动时,仅计算并显示位在当前节点下方的一或多个候选节点的位置。借此,可以避免同时于图形1上显示过多的候选节点,而造成使用者的混淆。
步骤S14后,编辑器已经在图形1上显示了可被连接的一或多个有效的候选节点,并且编辑器可再接受使用者的外部操作(例如第二外部操作),以将当前节点连接至其中一个被显示的候选节点(步骤S16)。
举例来说,若使用者操作电脑设备的鼠标,则使用者可通过鼠标将指标移动至起始节点(即,当前节点)的位置上,接着按下鼠标左键,并自起始节点开始将指标拖曳至任一候选节点的位置上,借此将起始节点(即,当前节点)连接至候选节点。
再举例来说,若使用者操作电脑设备的键盘,则使用者可通过方向键来将指标移动至起始节点的位置上,接着按下特殊键以锁定起始节点后,再通过方向键自起始节点开始将指标移动至任一候选节点的位置上,借此将起始节点连接至候选节点。
而,上述说明仅为本发明的部分实施范例,但并不以上述者为限。
当使用者通过鼠标、键盘或触控板将当前节点连接至任一候选节点后,编辑器再将被连接的候选节点转换为已连接节点(步骤S18)。
值得一提的是,当任一候选节点被转换为已连接节点后,编辑器将这个已连接节点的所在位置添加至所述伫列中,借此记录所述连续垂直线3的经过节点的位置及/或终点节点的位置。
于一实施例中,编辑器是以虚线点来显示所述一或多个有效的候选节点,并以实线点来显示所述已连接节点。于另一实施例中,编辑器是以第一颜色(例如绿色)来显示所述一或多个有效的候选节点,并以第二颜色(例如蓝色)来显示所述已连接节点。通过上述区别显示,使用者可更轻易地操作编辑器以建立所述连续垂直线3。
值得一提的是,当使用者通过外部操作将当前节点连接至已连接节点时,编辑器可选择性地产生并显示一条连接当前节点与已连接节点的预连接线(例如图3C与图3D所示的预连接线5)(步骤S20),借此令使用者更轻易地理解所述连续垂直线3的建立过程。
于使用者建立连续垂直线3的过程中,编辑器持续判断是否接受了使用者发出的请求离开编辑模式的外部操作(例如第三外部操作)(步骤S22),并且于尚未接受所述第三外部操作前,将最后一个已连接节点做为当前节点,再重复执行前述步骤S14至步骤S20,以持续进行连续垂直线3的建立程序。
于一实施例中,使用者是操作电脑设备的鼠标以执行连续垂直线3的建立程序。于此实施例中,所述第一外部操作是持续按着鼠标的按键(即,编辑器于使用者按着鼠标按键不放时进入编辑模式);所述第二外部操作是于持续按着鼠标的按键的状态下移动鼠标以进行拖曳(即,使用者通过拖曳鼠标来连接两个节点);所述第三外部操作是释放鼠标的按键(即,编辑器于使用者释放鼠标按键时离开编辑模式)。
于另一实施例中,使用者是操作电脑设备的键盘以执行连续垂直线3的建立程序。于此实施例中,所述第一外部操作是按压键盘的特殊功能键(即,编辑器于特殊功能键被触发时进入编辑模式);所述第二外部操作是按压键盘的方向键(即,通过方向键移动指标以连接两个节点);所述第三外部操作是再次按压键盘的特殊功能键(即,编辑器于特殊功能键被再次触发时离开编辑模式)。
上述说明仅为本发明的部分实施范例,但不以此为限。例如,编辑器可于使用者持续按压特定按键(例如ALT)时进入编辑模式,并于特定按键被释放时离开编辑模式。再例如,编辑器亦可于使用者按压鼠标的特定按键(例如左键)时进入编辑模式,并于鼠标的特定按键被再次按压时离开编辑模式。
于其他实施例中,使用者亦可操作电脑设备的触控屏幕或触控板来执行连续垂直线3的建立程序。于此实施例中,其第一外部操作、第二外部操作与第三外部操作与前述实施例相近似,于此不再赘述。
若于步骤S22中判断接受了使用者的第三外部操作而离开了编辑模式,编辑器实时产生连接前述起始节点以及所有已连接节点的连续垂直线3(步骤S24),并且,进一步依据连续垂直线3来修改图形1上的复数元件区块2的串/并联关系,同时更新图形1并重新显示(步骤S26)。
值得一提的是,于上述步骤S24及步骤S26中,编辑器主要是于伫列中取得暂存的起始节点以及一或多个已连接节点,并且依据这些节点来建立所述连续垂直线3。并且,编辑器同时依据这些暂存于伫列中的节点来修改复数元件区块2的串/并联关系并更新图形1(容后详述)。
请同时参阅图3A至图3G,分别为本发明的连续垂直线的第二具体实施例的第一建立动作图至第七建立动作图。图3A至图3G是以使用者通过对鼠标的单次操作来建立一条连续垂直线为例,进行说明,但不以此为限。
首先如图3A所示,使用者可先操作编辑器提供的编辑工具(图未标示),以将所需数量、形态的复数元件区块2添加至图形1中。于图3A的实施例中,图形1中初始包含由元件区块B0、B1、B2、B3组成的第一串联群组,由元件区块B4、B5、B6、B7组成的第二串联群组,由元件区块B8、B9、B10、B11组成的第三串联群组及由元件区块B12、B13、B14、B15组成的第四串联群组。并且,第一串联群组、第二串联群组、第三串联群组及第四串联群组彼此并联。
如图3A所示,各个元件区块2于串联连接处具有端点L0~L11。本发明中,使用者可以从图形1的端点L0~L11中选择连续垂直线3的起始节点,并且编辑器是由复数端点L0~L11中计算符合条件的一或多个候选节点。换句话说,本发明的编辑方法可有效避免使用者误将连续垂直线3建立在元件区块2上而造成线路错误。
接着如图3B所示,使用者可操作电脑设备的鼠标以控制画面中的指标,将游标停留在任一端点上,并且按着鼠标按键(以左键为例),以将此端点转换为起始节点41。于本实施例中,使用者是选择端点L0做为起始节点41,因此,编辑器将端点L0记录于伫列Q中。
当使用者选择了一个起始节点41后,持续按着鼠标按键并进行拖曳,以将指标朝下移动并令移动距离大于一个门限值,此时将触发编辑器计算起始节点41下方的一或多个有效的候选节点42,并且加以显示。
于一实施例中,编辑器是以实线点显示起始节点41,并以虚线点显示候选节点42。于另一实施例中,编辑器是以相异的颜色分别显示起始节点41与候选节点42。借此,令使用者可以快速区分两种节点。
接着如图3C所示,使用者持续拖曳指标并移动至其中一个候选节点42(图3C中以端点L4为例)上,此时编辑器将这个候选节点42(即,端点L4)添加至伫列Q中,并将此候选节点42转换为已连接节点43。并且,当使用者自这个已连接节点43继续朝下移动并且移动距离大于门限值时,即触发编辑器计算这个已连接节点43下方的一或多个有效的候选节点42,并且加以显示。
于一实施例中,编辑器是以实线点显示已连接节点43。于另一实施例中,编辑器是以相异于候选节点42的颜色来显示已连接节点43,例如,以蓝色显示已连接节点43,并以绿色显示候选节点42。于又一实施例中,编辑器以相同的颜色或形状显示起始节点41与已连接节点43。
接着如图3D所示,使用者可持续拖曳指标,并令指标按序连接至多个候选节点42,以将多个候选节点42转换为已连接节点43。
并且,如图3C及图3D所示,当使用者通过拖曳指标而连接了两个节点后,编辑器于图形1上显示连接这两个节点的预连接线5,以令使用者可快速查看目前的连接状况。
于图3D的实施例中,使用者是拖曳指标由端点L0出发,并按序经过端点L4、端点L6及端点L11。因此,编辑器会将端点L0做为起始节点41,按序将端点L4、端点L6及端点L11转换为已连接节点43,并且按序将端点L0、端点L4、端点L6及端点L11添加至伫列Q中。当使用者释放鼠标按键使得编辑器离开编辑模式时,编辑器可基于伫列Q中记录的复数端点来建立所述连续垂直线。
如图3E所示,当使用者释放鼠标按键时,编辑器会认定使用者结束编辑(即,离开编辑模式)。此时,编辑器取得伫列Q前方的两个端点(即,端点L0与端点L4),并移除伫列Q最前方的一个端点(即,端点L0)。
接着,编辑器以端点L0与端点L4建立第一切割线31,将第一切割线31的起点(即端点L0)左方的一或多个元件区块2做为左方第一群组,将第一切割线31的起点的右方的一或多个元件区块2做为右方第一群组,将第一切割线31的终点(即端点L4)的左方的一或多个元件区块2做为左方第二群组,将第一切割线31的终点的右方的一或多个元件区块2做为右方第二群组。并且,编辑器将左方第一群组与左方第二群组进行并联,将右方第一群组与右方第二群组进行并联,最后再通过第一切割线31将两个并联结果进行串联。
如上所述,由于编辑器移除了伫列Q中最前方的一个端点(即,端点L0),因此在第一切割线31建立后,伫列Q中仅剩下端点L4、端点L6及端点L11。
接着,如图3F所示,编辑器再次取得伫列Q前方的两个端点(即,端点L4与端点L6),并移除伫列Q最前方的一个端点(即,端点L4)。
接着,编辑器以所取得的端点L4与端点L6建立第二切割线32,并且依据与上述相同的程序来更新多个元件区块2的串/并联关系。由于编辑器移除了伫列Q中最前方的一个端点(即,端点L4),因此在第二切割线32建立后,伫列Q中仅剩下端点L6及端点L11。
如图3G所示,编辑器在第二切割线32建立后再次取得伫列Q前方的两个端点(即,端点L6与端点L11),并移除伫列Q最前方的一个端点(即,端点L6)。
接着,编辑器以所取得的端点L6与端点L11建立第三切割线33,并且依据与上述相同的程序来更新多个元件区块2的串/并联关系。
如上所述,由于编辑器在建立第三切割线33时移除了伫列Q中最前方的一个端点(即,端点L6),因此在第三切割线33建立后,伫列Q中只剩下单一个端点L11。由于单一个端点无法构成一条切割线,因此编辑器会结束切割线的建立程序,并且将伫列Q中的最后一个端点L11做为连续垂直线3的结束节点。借此,编辑器可以依据前述第一切割线31、第二切割线32及第三切割线33来构成使用者所需的连续垂直线3。
通过本发明的技术方案,使用者可以通过在编辑模式中的单一次操作(例如在按下鼠标左键至释放鼠标左键之间所进行的操作)即建立一条跨越多个节点的连续垂直线3,对于使用者的绘制行为来说实为便利。
续请参阅图4,为本发明的第一具体实施例的垂直线退回示意图。于建立连续垂直线3的过程中(即,仍处于编辑模式中),使用者可以随时控制指标往回移动(即,朝起始节点41的方向移动)。当编辑器判断指标朝起始节点41的方向移动并且离开一个已连接节点43时,会如图4所示,将这个已连接节点43转换成候选节点42,并且与其他的有效候选节点42一起显示于图形1上。
如前文所述,当一个候选节点42被转换为已连接节点43时,编辑器会将这个已连接节点43(例如端点L11)加入伫列Q中。而当使用者退回指标而使这个已连接节点43转换为候选节点42时,编辑器会将这个候选节点42(例如端点L11)从伫列Q中移动。借此,可给予使用者更大的绘制弹性。
续请参阅图5A至图5C,分别为本发明的第二具体实施例的编辑流程图第一部分、编辑流程图第二部分及编辑流程图第三部分。下面将结合图3A至图3G进一步说明本发明的编辑方法的具体编辑步骤。
首先,编辑器接受使用者的第一外部操作以进入编辑模式(步骤S30)。于一实施例中,所述第一外部操作是由使用者持续按着电脑设备的鼠标的按键。于另一实施例中,所述第一外部操作是由使用者按压电脑设备的键盘的特殊功能键。
于编辑模式中,编辑器依据使用者的操作而于图形1上选择任一个元件区块2的端点,以做为起始节点41(步骤S32)。于一实施例中,编辑器可将接受前述第一外部操作时,电脑设备的指标(例如鼠标的游标)所在位置上的端点做为起始节点41,但不加以限定。
于确定了起始节点41后,编辑器清除伫列Q中的所有节点(步骤S34)。接着,编辑器接受使用者的第二外部操作而令指标自起始节点41开始移动,并且计算移动距离(步骤S36)。于一实施例中,所述第二外部操作是由使用者移动电脑设备的鼠标进行拖曳,以移动所述指标。于另一实施例中,所述第二外部操作是由使用者按压电脑设备的键盘的方向键,以移动所述指标。
步骤S36后,编辑器进一步判断移动距离是否大于预设的门限值(步骤S38)。若移动距离没有大于门限值,编辑器不做任何动作,并且于离开编辑模式前重复执行上述步骤。若移动距离大于门限值,则编辑器将起始节点41添加至伫列Q中(步骤S40)。具体地,于步骤S40中,编辑器是将起始节点41所在位置的端点的编号由伫列Q的后方添加至伫列Q中,并且将起始节点41视为指标的当前节点。
本实施例中,编辑器还可基于使用者的第二外部操作来判断指标自当前节点出发的移动方向,即,判断指标是朝上移动还是朝下移动(步骤S42)。若指标受使用者的操作而朝向当前节点的下方移动(并且移动距离大于门限值),则编辑器仅计算并显示当前节点下方的一或多个有效候选节点42(步骤S44)。反之,若指标受使用者的操作而朝向当前节点的上方移动(并且移动距离大于门限值),则编辑器仅计算并显示当前节点上方的一或多个有效候选节点42(步骤S46)。
如前文所述,本发明中编辑器会判断由当前节点连接至一个端点后,是否会造成任一元件区块2短路,并且于不会有短路现象发现时,判断这个端点为有效的候选节点42。
编辑器持续判断是否接受使用者请求离开编辑模式的第三外部操作(步骤S48)。于一实施例中,所述第三外部操作是由使用者释放电脑设备的鼠标的按键。于另一实施例中,所述第三外部操作是由使用者再次按压电脑设备的键盘的特殊功能键。若尚未接受所述第三外部操作,则编辑器接着执行如图5B所示的各步骤。若接受了所述第三外部操作而需要离开编辑模式,则编辑器接着执行如图5C所示的各步骤。
如图5B所示,编辑器判断使用者是否通过所述第二外部操作移动指标,并令指标停留(hover)在任一候选节点42上(步骤S50)。若使用者令指标移动并停留于任一候选节点42上,则编辑器将这个候选节点42加入伫列Q中,以将这个候选节点42转换为已连接节点43(步骤S52)。反之,若指标没有停留在任何候选节点42上,则编辑器不执行任何动作。
具体地,于步骤S52中,编辑器是在所述指标受使用者的操作而停留于一个候选节点42上时,将这个候选节点42所在位置的端点的编号从伫列Q的后方加入伫列Q中,以将这个候选节点42记录为已连接节点43。
并且,编辑器还判断所述指标是否受使用者的操作而往回移动并且离开任一已连接节点43(步骤S54)。当判断指标往回移动(即,朝向起始节点41的方向移动)并离开一个已连接节点43时,编辑器将这个已连接节点43恢复成候选节点42,并且从伫列Q的后方将这个候选节点42从伫列Q中移除(步骤S56)。
具体地,于步骤S56中,编辑器是将所述候选节点42所在位置的端点的编号从伫列Q中移动。
并且,于尚未离开编辑模式时,编辑器返回步骤S42,以通过使用者的第二外部操作来持续计算与显示目前可供连接的候选节点42、将指标经过的候选节点42转换为已连接节点43、并将指标没有经过的已连接节点43恢复成候选节点42。
接着如图5C所示,若编辑器依据使用者的第三外部操作离开了编辑模式,则编辑器先取得伫列Q,并判断伫列Q中记录的节点的数量是否大于1(步骤S58)。本发明中,若伫列Q中记录的节点的数量大于1,即,至少两个节点,则编辑器可以依据这两个节点来建立如图3E-图3G所示的切割线31-33。若伫列Q中记录的节点的数量不大于1,即,仅有一个节点或是不存在任何节点,则编辑器结束连续垂直线的建立程序。
若于步骤S58中判断为是,则编辑器取得伫列Q最前方的两个节点,并且移除伫列Q最前方的一个节点(步骤S60)。具体地,编辑器在步骤S60中是以peek指令查看伫列Q中最前方的两个节点,以做为所述切割线的起点与终点,并且以pop指令来移除伫列Q最前方的一个节点,以将当前切割线的终点做为下一条切割线的起点,或做为连续垂直线的结束节点。
步骤S60后,编辑器依据所取得的两个节点建立一条切割线,将切割线的起点的左方的一或多个元件区块2规划为左方第一群组,将切割线的起点的右方的一或多个元件区块2规划为右方第一群组,将切割线的终点的左方的一或多个元件区块2规划为左方第二群组,并将切割线的终点的右方的一或多个元件区块2规划为右方第二群组(步骤S62)。换句话说,编辑器在步骤S62中是依据切割线的起点与终点,将图形1上的串联区块(Continueblocks)区分别左、右两个群组。
步骤S62后,编辑器进一步将所述左方第一群组与所述左方第二群组进行并联,以产生第一并联群组(步骤S64),并且,将所述右方第一群组与所述右方第二群组进行并联,以产生第二并联群组(步骤S66)。
具体地,于步骤S64中,编辑器是以左方第一群组以及左方第二群组的共同起始点(图形1的最左方)与所述切割线为基础,将左方第一群组与左方第二群组进行并联以产生新的并联群组(Branch blocks)。而于步骤S66中,编辑器则是以所述切割线与右方第一群组以及右方第二群组的共同结束点(图形1的最右方)为基础,将右方第一群组与右方第二群组进行并联以产生新的并联群组。
步骤S66后,编辑器再基于所述切割线,进一步将所述第一并联群组与第二并联群组进行串联,以产生新的串联群组(步骤S68)。
接着,编辑器返回步骤S58,以判断在上述切割线产生后,伫列Q中剩余的节点的数量是否仍大于1。若伫列Q中的节点的数量仍大于1,则编辑器再次执行步骤S60至步骤S68,以产生下一条切割线。若伫列Q中的节点的数量不大于1,则编辑器依据所产生的一或多个新的串联群组来修改图形1中的复数元件区块2的串/并联关系,并且更新图形1后重新显示(步骤S70)。
前述实施例主要是以使用者操作电脑设备的鼠标来控制编辑器中的指标为例,进行说明。而,如前文所述,本发明的编辑方法亦可通过电脑设备的键盘来实现。
参阅图6A至图6D,分别为本发明的连续垂直线的第三具体实施例的第一建立动作图至第四建立动作图。
首先如图6A所示,于进入编辑模式后,使用者可操作键盘的方向键,以移动编辑器中的指标,并选择多个端点的其中之一做为起始节点61。于使用者选择了一个起始节点61后,编辑器可经过计算而显示这个起始节点61周围的一或多个有效的候选节点62。其中,起始节点61与候选节点62分别以不同的颜色、形状加以表示。
接着,如图6B与图6C所示,使用者可通过键盘的方向键移动所述指标,以将指标由起始节点61移动至任一候选节点62,编辑器会于指标停留于任一候选节点62上时将这个候选节点62转换为已连接节点63,并且于两个节点61、63间产生一条预连接线7。当一个候选节点62被转换为已连接节点63时,编辑器进一步计算并显示这个已连接节点63周围的一或多个有效的候选节点62。
最后,如图6D所示,当使用者通过键盘发出指令,以控制编辑器离开编辑模式时,编辑器依据起始节点61与一或多个已连接节点63来产生连续垂直线8,并且依据连续垂直线8来修改图形1中的复数元件区块的串/并联关系,同时更新图形1并且重新显示。
通过本发明的上述技术方案,使用者只需要通过鼠标、键盘或触控板等设备执行单一次的操作,就可以直接在图形中建立一条连续垂直线,借此快速地修改多个元件区块之间的连接关系。有鉴于此,使用者可以更有效益、更方便地使用图形程序语言的编辑器。
以上所述仅为本发明的优选具体实例,非因此即局限本发明的权利要求,故举凡运用本发明内容所为的等效变化,均同理皆包含于本发明的范围内,合予陈明。
Claims (14)
1.一种图形程序语言的垂直线连续编辑方法,应用于由一电脑设备运行的一编辑器,该编辑器提供由复数元件区块组成的一串/并联图形,包括下列步骤:
a)接受一第一外部操作以进入一编辑模式;
b)于进入该编辑模式时在该串/并联图形上取得一起始节点,并将该起始节点做为一当前节点,其中该起始节点为任一该元件区块的端点;
c)显示该当前节点周围的一或多个有效的候选节点,其中该一或多个候选节点为该当前节点周围的一或多个该元件区块的端点;
d)接受一第二外部操作以将该当前节点连接至任一该候选节点;
e)将被连接的候选节点转换为一已连接节点;
f)判断是否接受一第三外部操作以离开该编辑模式;
g)于离开该编辑模式前将该已连接节点做为该当前节点,并重复执行该步骤c)至该步骤f);
h)于离开该编辑模式时产生连接该起始节点及一或多个该已连接节点的一连续垂直线;及
i)依据该连续垂直线左边的多个元件区块和该连续垂直线右边的多个元件区块修改该复数元件区块的串/并联关系并更新该串/并联图形。
2.如权利要求1所述的图形程序语言的垂直线连续编辑方法,其中该第一外部操作是持续按压该电脑设备的一鼠标的一按键,该第二外部操作是移动该鼠标以执行一拖曳动作,该第三外部操作是释放该鼠标的该按键。
3.如权利要求1所述的图形程序语言的垂直线连续编辑方法,其中该第一外部操作是按压该电脑设备的一键盘的一特殊功能键,该第二外部操作是按压该键盘的一方向键,该第三外部操作是再次按压该键盘的该特殊功能键。
4.如权利要求1所述的图形程序语言的垂直线连续编辑方法,其中该步骤b)后还包括一步骤b1):将该起始节点添加至该编辑器的一伫列;该步骤e)是将该被连接的候选节点添加至该伫列,以将该被连接的候选节点转换为该已连接节点;其中该步骤h)是依据该伫列中暂存的该起始节点及该复数被连接的候选节点产生该连续垂直线,该步骤i)是依据该伫列中暂存的该起始节点及该复数被连接的候选节点修改该复数元件区块的串/并联关系。
5.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该步骤i)包括下列步骤:
i1)判断该伫列中的节点的数量是否大于1;
i2)于该伫列中的节点的数量大于1时,取得该伫列最前方的两个节点,并于该伫列中移除最前方的一个节点;
i3)该步骤i2)后,依据所取得的二节点建立一切割线,将该切割线的起点的左方的一或多个元件区块做为一左方第一群组,将该切割线的起点的右方的一或多个元件区块做为一右方第一群组,将该切割线的终点的左方的一或多个元件区块做为一左方第二群组,将该切割线的终点的右方的一或多个元件区块做为一右方第二群组;
i4)该步骤i3)后,将该左方第一群组与该左方第二群组进行并联以产生一第一并联群组;
i5)该步骤i3)后,将该右方第一群组与该右方第二群组进行并联以产生一第二并联群组;
i6)将该第一并联群组与该第二并联群组进行串联以产生一新串联群组;
i7)该步骤i6)后再次执行该步骤i1)至该步骤i6);及
i8)于该伫列中的节点的数量不大于1时,依据一或多个该新串联群组修改该复数元件区块的串/并联关系并更新该串/并联图形。
6.如权利要求5所述的图形程序语言的垂直线连续编辑方法,其中该步骤i2)是以peek指令查看该伫列最前方的两个节点以做为该切割线的该起点与该终点,并以pop指令移除该伫列中最前方的一个节点。
7.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该步骤b1)前还包括一步骤b0):清空该伫列。
8.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该步骤b)后还包括下列步骤:
b21)计算自该当前节点开始的一移动距离;
b22)判断该移动距离是否大于一门限值;及
b23)于该移动距离大于该门限值时执行该步骤c)。
9.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该步骤b)后还包括一步骤b3):判断自该当前节点出发的一移动方向;
其中,当该移动方向是朝上移动时,该步骤c)显示该当前节点上方的一或多个有效的该候选节点;
其中,当该移动方向是朝下移动时,该步骤c)显示该当前节点下方的一或多个有效的该候选节点。
10.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该有效的候选节点为该串/并联图形上不会造成该一或多个元件区块短路的节点。
11.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该候选节点以虚线点显示,该已连接节点以实线点显示。
12.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该候选节点以第一颜色显示,该已连接节点以第二颜色显示。
13.如权利要求4所述的图形程序语言的垂直线连续编辑方法,其中该步骤e)是在接受该第二外部操作以将一指标停留于任一该候选节点上时,从该伫列的后方将该候选节点添加至该伫列中。
14.如权利要求13所述的图形程序语言的垂直线连续编辑方法,其中该步骤e)后还包括下列步骤:
e1)判断该指标是否往回移动并离开该已连接节点;及
e2)于该指标往回移动并离开该已连接节点时,将该已连接节点恢复为该候选节点,并从该伫列的后方移除该候选节点。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911118938.2A CN112817510B (zh) | 2019-11-15 | 2019-11-15 | 图形程序语言的垂直线连续编辑方法 |
US17/033,935 US11461076B2 (en) | 2019-11-15 | 2020-09-28 | Method for editing continual vertical line of visual programming language |
ES20199535T ES2938071T3 (es) | 2019-11-15 | 2020-10-01 | Procedimiento para editar una línea vertical continua de lenguaje de programación visual |
PL20199535.4T PL3822769T3 (pl) | 2019-11-15 | 2020-10-01 | Sposób edycji ciągłej linii pionowej wizualnego języka programowania |
EP20199535.4A EP3822769B1 (en) | 2019-11-15 | 2020-10-01 | Method for editing continual vertical line of visual programming language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911118938.2A CN112817510B (zh) | 2019-11-15 | 2019-11-15 | 图形程序语言的垂直线连续编辑方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112817510A CN112817510A (zh) | 2021-05-18 |
CN112817510B true CN112817510B (zh) | 2022-11-15 |
Family
ID=72717715
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911118938.2A Active CN112817510B (zh) | 2019-11-15 | 2019-11-15 | 图形程序语言的垂直线连续编辑方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11461076B2 (zh) |
EP (1) | EP3822769B1 (zh) |
CN (1) | CN112817510B (zh) |
ES (1) | ES2938071T3 (zh) |
PL (1) | PL3822769T3 (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1658237A (zh) * | 2004-02-18 | 2005-08-24 | 株式会社理光 | 图像处理方法、图像处理装置、程序和记录介质 |
CN105592306A (zh) * | 2015-12-18 | 2016-05-18 | 深圳前海达闼云端智能科技有限公司 | 一种三维立体显示处理方法和装置 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6484189B1 (en) * | 1991-04-26 | 2002-11-19 | Amiga Development Llc | Methods and apparatus for a multimedia authoring and presentation system |
US7548238B2 (en) * | 1997-07-02 | 2009-06-16 | Nvidia Corporation | Computer graphics shader systems and methods |
US7802186B2 (en) * | 2004-10-06 | 2010-09-21 | Microsoft Corporation | Property independent in-place editing |
US7797628B2 (en) * | 2005-05-16 | 2010-09-14 | Planview, Inc. | Method of using a directed graph and a system for use with the method |
JP4879134B2 (ja) | 2007-10-18 | 2012-02-22 | 光洋電子工業株式会社 | ラダー図編集方式 |
JP2009259082A (ja) | 2008-04-18 | 2009-11-05 | Koyo Electronics Ind Co Ltd | ラダー図編集方式 |
JP5678576B2 (ja) * | 2010-10-27 | 2015-03-04 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、および監視システム |
US8677297B2 (en) * | 2010-12-03 | 2014-03-18 | Synopsys, Inc. | Low-overhead multi-patterning design rule check |
KR20130083308A (ko) * | 2012-01-12 | 2013-07-22 | 삼성전자주식회사 | 디스플레이 장치 및 그 디스플레이 방법 |
US9098164B2 (en) * | 2012-08-03 | 2015-08-04 | National Instruments Corporation | Physics based diagram editor |
US8812434B2 (en) * | 2012-10-12 | 2014-08-19 | Ca, Inc. | Data structure for efficiently identifying transactions |
US9547409B2 (en) * | 2012-11-21 | 2017-01-17 | Ca, Inc. | Navigable graph of a service level management document |
CN103559727B (zh) | 2013-11-20 | 2016-04-20 | 北京四方继保自动化股份有限公司 | 一种梯形图数据结构描述及扫描解析方法 |
US10209956B2 (en) * | 2014-10-09 | 2019-02-19 | Splunk Inc. | Automatic event group actions |
US10275502B2 (en) * | 2015-12-22 | 2019-04-30 | Opera Solutions Usa, Llc | System and method for interactive reporting in computerized data modeling and analysis |
EP3459033A4 (en) * | 2016-05-19 | 2019-11-27 | Simbe Robotics, Inc. | METHOD FOR THE AUTOMATIC PRODUCTION OF A PLANOGRAM TO GIVE PRODUCTS TO A SHELF STRUCTURE WITHIN A STORE |
US10606565B2 (en) * | 2017-01-31 | 2020-03-31 | Stackery, Inc. | Visual devops systems and methods |
-
2019
- 2019-11-15 CN CN201911118938.2A patent/CN112817510B/zh active Active
-
2020
- 2020-09-28 US US17/033,935 patent/US11461076B2/en active Active
- 2020-10-01 EP EP20199535.4A patent/EP3822769B1/en active Active
- 2020-10-01 PL PL20199535.4T patent/PL3822769T3/pl unknown
- 2020-10-01 ES ES20199535T patent/ES2938071T3/es active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1658237A (zh) * | 2004-02-18 | 2005-08-24 | 株式会社理光 | 图像处理方法、图像处理装置、程序和记录介质 |
CN105592306A (zh) * | 2015-12-18 | 2016-05-18 | 深圳前海达闼云端智能科技有限公司 | 一种三维立体显示处理方法和装置 |
Non-Patent Citations (1)
Title |
---|
实时群组编辑器中操作组播的研究;张鹏飞等;《计算机应用》;20040528(第05期);23-25 * |
Also Published As
Publication number | Publication date |
---|---|
EP3822769A1 (en) | 2021-05-19 |
ES2938071T3 (es) | 2023-04-04 |
PL3822769T3 (pl) | 2023-03-13 |
US11461076B2 (en) | 2022-10-04 |
CN112817510A (zh) | 2021-05-18 |
EP3822769B1 (en) | 2022-12-14 |
US20210149642A1 (en) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5485175A (en) | Method and apparatus for continuously displaying a hierarchical menu with a permanent stationing setting/clearing icon | |
JP3632523B2 (ja) | 演奏データ編集装置、方法及び記録媒体 | |
JPH0736106B2 (ja) | ダイナミックグラフィクス装置および動的表示方法 | |
CN107544437A (zh) | 加工程序编辑装置、方法以及存储介质 | |
CN112817510B (zh) | 图形程序语言的垂直线连续编辑方法 | |
JP4247517B2 (ja) | 波形編集用プログラム、波形編集装置、及び波形編集方法 | |
EP1956129B1 (en) | Knit design device and knit design method and its program | |
JP2007011532A (ja) | 操作手順書の自動生成装置 | |
CN105468234A (zh) | 一种信息处理方法及移动终端 | |
JPH0476606A (ja) | 曲線抽出装置およびncプログラミングシステム | |
TWI738113B (zh) | 圖形程式語言的垂直線連續編輯方法 | |
CN115526015B (zh) | 基于命令交互式的电网图生成方法、装置、介质及设备 | |
JPH0785099A (ja) | 階層表示方式 | |
JP2009032121A (ja) | 色生成支援装置及び色生成支援プログラム | |
CN112817974B (zh) | 一种列表控件多层列头控制方法 | |
JP3239292B2 (ja) | 図形編集処理システムの図形特定制御方法 | |
WO2022091896A1 (ja) | 数値制御装置 | |
JP7134767B2 (ja) | 表示器、表示器の制御方法およびプログラム | |
JP3378860B2 (ja) | モンタージュ作成装置 | |
JPH0877380A (ja) | 図作成装置および図作成方法 | |
JP3815480B2 (ja) | Midiデータ編集装置 | |
JP4775385B2 (ja) | 情報処理装置及び方法、プログラム並びに記録媒体 | |
JP2022143402A (ja) | キッティングシステム及びキッティング方法 | |
JPH0535836A (ja) | 平行線の作画方法 | |
JPH06149773A (ja) | ペトリネットに基づくシミュレーション装置 |
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 |