本发明的一个方面是通过以下技术方案实现的:一种绘图装置,包括用来存贮图形数据的存贮装置和用来根据存贮在所述存贮装置中的该图形数据显示一图形的装置,其特征在于包括:用来由从所述显示装置显示的该图形中指定一被放大的目标图形的装置;基于被存贮在所述存贮装置中的图形数据,用来对其末端与由所述指定装置所指定的一目标图形相切的线进行检索的装置;用来放大该目标图形的装置;以及根据由所述放大装置以该线的末端与该放大的目标图形相切的方式而被放大的目标图形来缩短由所述检索装置所检索的该线的装置。
本发明的另一个方面是通过以下技术方案实现的:一种绘图装置,包括用来存贮图形数据的存贮装置和用来根据存贮在所述存贮装置中的该图形数据显示一图形的装置,其特征在于包括:用来由从所述显示装置显示的该图形中指定一被缩小的目标图形的装置;基于被存贮在所述存贮装置中的图形数据,用来对其末端与由所述指定装置所指定的一目标图形相切的线进行检索的装置;用来缩小该目标图形的装置;和用来根据由所述缩小装置以该线的末端与该缩小的目标图形相切的方式而被缩小的目标图形来延长由所述检索装置所检索的该线的装置。
本发明的再一个方面是通过以下技术方案实现的:一种绘图装置,包括用来存贮图形数据的存贮装置和用来根据存贮在所述存贮装置中的图形数据显示一图形的装置,其特征在于包括:用来从由所述显示装置所显示的该图形中,指定一被放大的目标图形的装置;基于被存贮在所述存贮装置中的图形数据,用来对其末端与由所述指定装置所指定的目标图形相切的线进行检索的装置;用来放大该目标图形的装置;和用来根据由所述检索装置所检索的线,当该线的起点和终点均落入一由所述放大装置放大的目标图形的一范围内时,删除该图形数据的装置。
根据本发明的一种绘图装置有如下所述的特征。
当在绘制的图形中的一图形要被放大或缩小时,从一图形数据存贮部分读出该图形数据并显示在一显示部分。如果被显示在该显示部分的图形数据的目标图形被一指定部分所指定,则由一放大/缩小部分来放大或缩小该图形。
一检索部分检索来自该图形数据存贮部分表示其端部与由指定部分所指定的目标图形相切的一条线的线数据,并由一线终端处理器缩短或延长该检索部分所检索的线,这样就能使该线的终端与由放大/缩小部分所放大或缩小的目标图形相切。当目标图形被放大时,该线被缩短。当目标图形被缩小时,该线被延长。
因此,当一图形被放大或缩小时,其终端与该图形相切的线被自动地缩短或延长,以便使该线的终端与被放大或缩小的图形相切。因而没有必要由操作人员根据图形的放大或缩小而执行修改该线的任何附加的操作。
本发明的其它目的和优点将在以下的说明中陈述,从下面的说明或对本发明的实践认识将使本发明的目的和优点更为明显。本发明的目的和优点可借助于在附加的权利要求中详细指出的手段和组合而得以实现和获得。
与说明书相结合并构成说明书的一部分的附图说明了本发明的一个最佳实施例,与上面的一般性说明和下面的对最佳实施例的详细说明一起适用于对本发明的原理的解释。
图1示出了根据本发明的一个实施例给出的一绘图装置的电路结构的框图。在图1中绘图装置的输入器件11包括一个具有诸如执行键和游标移动键之类功能键的键盘和一个用来将一鼠标游标移动到一任意位置的鼠标11a。该键盘和鼠标的操作信号由CPU 12来提供。根据予先存贮在一程序存贮器13中的程序,该CPU 12来执行诸如输入控制处理和图形编排处理之类的各种处理。程序存贮器13由一个ROM、一个RAM、一个磁盘装置等组成。
图形数据存贮器14存贮由用户以图2所示的图形数据格式制定的图形(即绘制的一流程图)。根据该图形数据格式,诸如直线、矩形和弧等被存贮的单元图形的数据与该单元图形的尺寸和坐标的信息以及该单元图形的线的类型一起存贮。例如,如图2所示的直线和矩形的数据包括有起点坐标、终点坐标和线的类型等、弧的数据包括中心坐标、半径、起点和终点的角度、线的类型等。
数据存贮器15具有多个为了执行各种处理所必须的存贮器。图3示出了一数据存贮器15的结构。如图3所示,数据存贮器15的存贮区域包括用来存贮图形编号的存贮区域n,用来存贮图形数据的位置的存贮区域f[o]至f[n],用来存贮指定该图形数据的存贮区域cnt和用来存贮线的端部坐标的存贮区域X1至X3及Y1至Y3。
显示存贮器16存贮显示器件18上被显示的显示数据,例如一点的图案,并将在图形数据存贮器14中存贮的图形数据转换为图形图象数据并存贮该图形图象数据。在显示存贮器16中存贮的显示数据通过驱动器17被显示在显示电器件18上。该显示器件18由例如一个CRT显示器件所构成。
现在参照图1—8说明该实施例绘图装置的操作。
首先,将说明用来放大一目标图形的放大处理。图4示出了一图形的编排显示,当一流程图的一图形被制定时则执行放大处理。图4A示出了在显示器件18上被显示的一流程图的图形,该图形由用户来制定并被存贮在图形数据存贮器14中。该流程图的图形由表示一处理步骤的一矩形图形A、一个端点与图形A的上面一个边相切的直线B、一个端点与图形A的下面一个边相切的直线C和一个用于表示开始步骤的图形D所构成。
为了将图形A放大到由图4B中的虚线所表明的范围A′,操作输入器件11的键以指明该放大处理,然后操作该输入器件11的鼠标,将该鼠标标记移动到该显示器件的图形A,并执行一碰响(click)操作以表明该图形A作为用于放大处理的目标图形FO。之后,将鼠标标记移动到由虚线给出的矩形对角线的交点上以指明该被放大图形A′的尺寸并执行一碰响操作。于是,开始放大处理。
图5示出了放大/缩小处理的流程图。无须多说,该放大/缩小处理包括有一放大处理和一缩小处理。
在步骤A1,一端部与目标图形FO(图A)相切的一图形(直线、弧、空闲线等)由存贮在图形数据存贮器14中的图形数据所检索。在这种情况中,图4A所示的直线B和C由存贮器14检索,并且被检索的图形编号“2”被存贮在数据存贮器15的存贮区域n中。该被检索图形的位置数据(起点和终点坐标等)被存贮在数据存贮器15的存贮区域f[o]至f[n-1]。存贮区域f[n]是一个由被存贮在存贮区域n内的数据所指定的区域。因为n=2,所在直线B和C的位置数据被分别存贮在存贮区域f[o]和f[1]。因此,目标图形FO根据该鼠标标记的一特定的位置的被放大,并且表明被放大的目标图形FO′的图形数据被存贮在图形数据存贮器14中。
在步骤A2,将“0”写入数据存贮器15的存贮区域cnt来对该装置初始化。
在步骤A3,判断存贮区域cnt中的内容是否小于存贮区域n(cnt<n)中的内容。如果是(cnt<n),则进行步骤A4操作。如果不是(cnt≥n),则图4所示的处理完成。因为在开始时cnt=0和n=2,则流程时入步骤A4。
在步骤A4,目标线的端部坐标是根据被存贮区域f[cnt]并由存贮在存贮区域cnt的信息指明的一图形(直线、弧、空闲线等)的类型而被调整或变换的。更清楚地说,在这条线的端部坐标被调整的过程中,当该目标图形FO(图形A)被放大或缩小到一个给定的位置时,该目标线的坐标按照被放大或缩小的图形而变换,其结果是该目标线被缩短或延长。在放大处理中,进入或伸入被放大目标图形FO′内部的该线端部坐标的变换实质上是将该线伸进目标图形FO′内部的部分删去。在缩小处理中对没有延伸到该被缩小的目标图形FO′的该线端部坐标加以变换使得该线延长,这样就使该线与被缩小目标图形FO′相切。
因为cnt=0,存贮在存贮区域f[o]的表明直线B的数据受到该线端部坐标调整处理而成为一目标图形数据。该线端部坐标调整处理与从图形到图形的处理是不同的,换句话说,它是随着诸如直线、孤和空闲线之类的目标线的类型而变化的。
图6所示的是用于直线的该线端部坐标调整处理A4的流程图。
在步骤B1,与目标图形FO相切的一目标直线(直线B)的端部坐标从该图形数据存贮器14被读出并存贮在数据存贮器15的X1和Y1区域中。如图7所示,与目标图形FO相切的直线B的端部坐标是直线B的终点坐标。因此,从图形数据存贮器14读出终点坐标(X1,1)并存贮在X1和Y1区域。
与图形D相切的直线B的另外端部的坐标从图形数据存贮器14读出并存贮在数据存贮器15的X2和Y2区域中。如图7所示,直线B的另外的端部坐标是直线B的起点坐标(X2,Y2)。因而,该起点坐标从图形数据存贮器14读出并存贮在数据存贮器15的X2和Y2区域中。
在步骤B2中,在图7所示的图形放大情况时,计算连接(X1,Y1)和(X2,Y2)的直线B与一被放大图形FO′之间的一个交点的坐标(X3,Y3),然后将该坐标存贮在数据存贮器15的X2和Y3区域中。在图8所示的图形缩小情况时,该线B被延长,计算与缩小的图形FO′相切的被延伸的终点坐标(X3,Y3),并将其存贮在X3和Y3区域中。如果在步骤B2中,在该放大或缩小的图形FO′和直线B之间不存在交点或切点时,则如图6所示的该线端部坐标调整处理被完成。因为在该放大过程中,在它们之间总是存在有交点的,所以该线端部坐标调整处理并未完成。
在步骤B3,判断线端部坐标(X1,Y1)和(X2,Y2)与交点或切点坐标(X3,Y3)之间的关系是否满足正面的边界条件。在图7的放大处理中,该边界条件上线端部坐标X2位于线端部坐标X1和交点坐标X3之间,以及线端部坐标Y2位于线端部坐标Y1和交点坐标Y3之间。简言之,该边界条件是该被放大图形FO′的交点坐标(X3,Y3)不落在该目标直线B的一个范围内。在图7中,是检验该交点坐标是否大于该直线B的起点坐标Y2。该条件不提供给缩小处理,因为不可能构成交点。在步骤B3中,如果交点坐标Y3大于直线B的起点坐标,则流程进入步骤B5,如果不是,则流程进入步骤B4。在图7所示的情况中,X1=X2=X3,并且当目标图形被放大到如图中虚线所示时,则交点坐标Y3小于起点坐标Y2。这种情况不能满足该边界条件,且流程进入步骤B4。
在步骤B4,存贮在图形数据存贮器14中的目标直线B的终点坐标(X1,Y1)的数据被变换为存贮在区域X3和Y3中的交点坐标(X3,Y3)的数据。更清楚地说,在从进入被放大目标图形FO′范围的坐标(X1,Y1)和(X3,Y3)之间选择一个直线B的终端部分,并且该直线B的起点坐标是X2和Y2,终点坐标是X3和Y3。
在步骤B3中,如果上述关系满足该边界条件(是),则直线落入被放大的目标图形FO′的范围内。该流程因而进入步骤B5,在步骤B5中,该直线被完全删去。更清楚地说,存贮在图形数据存贮器14中的直线B的图形数据被删除,换句话说,起点坐标(X2,Y2)和终点坐标(X1,Y1)的图形数据被删除。
在执行步骤B4和B5之后,完成了线端部坐标调整处理,并且该流程返回到在图5所示的放大/缩小处理,在这里执行步骤A5。
在图5所示的步骤A5中,存贮区域cnt的内容增1并且其数值变为“1”,因而返回到步骤A3。在步骤A3中,如上所述,判断cnt是否小于n(cnt<n)。在这种情况下,cnt=1和n=2,因而在步骤A3中再次被判断为是(cnt<n),并且该流程进入步骤A4。因为,在步骤A4中,cnt=1,则被存贮在该存贮区域f[1]中的该直线C受到如上所述的在图6中所示的该线端部坐标调整处理。
在步骤B1,与该目标图形FO相切的目标直线(直线C)的该线端部坐标被从该图形数据存贮器14读出,并且随后被存贮在该数据存贮器15的X1和Y1区域中。因为与该目标图形FO相切的该直线的线端部坐标是该直线C的终点坐标,该直线C的终点坐标(X1′,Y1′)被从该图形数据存贮器读出并被存贮在存贮器X1和Y1中。该直线C的另外线端部坐标,即起点坐标(X2′,Y2′)因而从该图形数据存贮器14被读出,并随后被存贮在区域X2和Y2中。
如上所述,在步骤B2,计算在通过该线端部坐标(X1′,Y1′)和(X2′,Y2′)的直线C与被放大的目标图形FO′之间的一个交点的坐标(X3′,Y3′),并随后将其存贮在该数据存贮器15的X3和Y3区域中。与步骤3,判断该线端部坐标(X1′,Y1′)和(X2′,Y2′)与该交点坐标(X3′,Y3′)之间的关系是否满足前述的条件,在这种情况中,如果该交点坐标Y3′小于该直线C的起点坐标Y2′,则上述关系不满足该边界条件,因而进入步骤B4。
在步骤B4,被存贮在图形数据存贮器14中的该直线C的终点坐标(X1′,Y1′)被变换为在区域X3和Y3中所存贮的该交点坐标(X3′,Y3′),并且在该坐标(X1′,Y1′)和(X3′,Y3′)之间进入该被放大的目标图形FO′的范围的该直线C的一个端部位置被删除。在步骤B4被执行之后,完成该线端部坐标调整处理,并且该流程进入如上所述的步骤A5。
类似地,在步骤A5,存贮区域cnt的内容增1并且它的值变为“2”,因而返回步骤A3。在步骤A3,如上所述一样判断cnt是否小于n(cnt<n)。在这种情况下,因为cnt=2和n=2,在步骤A3中判断其为否。该被放大的目标图形FO′的图形数据被存贮在该图形数据存贮器14中,并且将该原始目标图形FO的图形数据从存贮器14中删除,因而完成了图5所示的放大处理。因而,一个基于被放大的目标图形FO′的图形数据的一个新的图形被显示。
因此,当得到如图4C所示的被放大的图形A′时,如图9C所示的进入该被放大图形A′的内部的该直线B和C的末端部分b和c则被删去,这样该被放大图形A′可以与该被修改的直线B和C的末端相切。
现在参阅图8对一目标图形的缩小处理给予说明。根据该缩小处理,与该目标图形FO被缩小时,其末端与该目标图形FO相切的直线被延长到该被缩小的图形FO′,以便该线B和C的末端与该被缩小的图形FO′相切。因而,该缩小处理与放大处的不同之处仅仅是图5中步骤A4的线端部坐标调整处理。该缩小处理的线端部坐标调整处理如下所述。如像在步骤B1中的,与该目标图形FO相切的目标直线(直线B)的该线端部坐标是从该图形数据存贮器14读出并存贮在该数据存贮器15的X1和Y1区域。该直线B的另外线端部坐标(即起点坐标)因而从该图形数据存贮器14读出并随后被存贮在该数据存贮器15的X2和Y2区域中。
当该具有线端部坐标(X1,Y1)和(X2,Y2)的直线B被延长时,计算该直线B和该缩小图形FO′的切点的坐标(X3,Y3)并存贮在该数据存贮器15的X3和Y3区域中。之后,被存贮在图形数据存贮器14中的该目标直线B的终点坐标(X1,Y1)被变换为存贮在X3和Y3区域的延长点坐标(X3,Y3)。更清楚地说,如果该图形数据被变换,则连接该起点坐标(X2,Y2)和终点坐标(X1,Y1)的目标直线B被延长,这样该终点坐标被变换成新的终点坐标(X3,Y3)。换句话说,该目标直线B被延长以便与该被缩小的目标图形FO′相切。对于线C,以相似的方式进行图形修改处理。
根据本发明的上述说明,当一图形被放大或缩小时,一末端与该图形相切的线便被自动地被缩短或延长,以便与被放大或缩小的图形相切。对于用户来说,没有必要为该图形的放大或缩小而执行任何附加的修改线的操作。
对于本技术领域的普通技术人员来说,很容易想象出另外的优点和修改。因此,在较宽的方面,本发明没有局限于特定的细节和给出和说明典型的器件。因此,在不远背由附加的权利要求及其等效含义所确定的总的发明概念的精神和范围的前题下可对本发明做各种的修改。