专利名称:一种图形对象的选取方法及系统的制作方法
技术领域:
本发明属于计算机绘图技术领域,尤其涉及ー种图形对象的选取方法及系统。
背景技术:
计算机绘图是指应用绘图软件和计算机硬件,实现图形显示、辅助绘图与设计的一项技术,随着以计算机为主导的科学技术的迅猛发展,计算机绘图已经进入很多领域,成为工程技术和科学研究的重要手段,因此,对绘图软件的绘图精度和速度都提出了较高的要求。目前,现有绘图功能的软件中,当用户要在曲线显示区域内选取某一条曲线,需要获取当前鼠标点的坐标,然后将该坐标点跟显示区域内的其它曲线进行比较搜索,从而确定选中的曲线以提示用户。现有技术在确定鼠标选取对象时,需要将获取的坐标点与显示区域内的每条曲线进行计算距离和比较,选取过程复杂,计算量大。
发明内容
本发明实施例的目的在于提供ー种图形对象的选取方法,g在解决现有技术在确定鼠标选取对象时,需要将获取的坐标点与显示区域内的每条曲线进行计算距离和比较,选取过程复杂,计算量大的问题。本发明实施例是这样实现的,ー种图形对象的选取方法,所述方法包括下述步骤获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少ー个图形对象,所述图形对象具有唯一的标识号;获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每ー图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应;根据所述获取的颜色值,确定在绘图区域选取的图形对象。本发明实施例还提供了ー种图形对象的选取系统,所述系统包括坐标获取単元,用于获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少ー个图形对象,所述图形对象具有唯一的标识号;颜色值获取单元,用于获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每ー图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应;选取单元,用于根据所述颜色值获取单元获取的颜色值,确定在绘图区域选取的图形对象。在本发明实施例中,通过建立大小、位置、坐标系及图形对象均匀绘图区域相同的隐藏区域,井根据隐藏区域每ー图形对象具有的不同的颜色值,及该颜色值与绘制区域图形对象的标识号的对应关系,方便的确定了用户在绘制区域选取的图形对象,无需将获取的坐标点与绘制区域内的每个图形对象进行计算距离和比较,简单、方便。
图I是本发明实施ー提出的图形对象的选取方法的实现流程图;图2是本发明实施ニ提出的图形对象的选取方法的实现流程图;图3是本发明实施三提出的图形对象的选取方法的实现流程图;图4a是本发明实施三提出的绘图区域的示意图;图4b是本发明实施三提出的隐藏区域的示意图;
图5是本发明实施四提出的图形对象的选取系统的结构。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进ー步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例通过建立大小、位置、坐标系及图形对象均匀绘图区域相同的隐藏区域,井根据隐藏区域每ー图形对象具有的不同的颜色值,及该颜色值与绘制区域图形对象的标识号的对应关系,方便的确定了用户在绘制区域选取的图形对象,简单方便。本发明实施例提供了ー种图形对象的选取方法,所述方法包括下述步骤获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少ー个图形对象,所述图形对象具有唯一的标识号;获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每ー图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应;根据所述获取的颜色值,确定在绘图区域选取的图形对象。本发明实施例还提供了ー种图形对象的选取系统,所述系统包括坐标获取単元,用于获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少ー个图形对象,所述图形对象具有唯一的标识号;颜色值获取单元,用于获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每ー图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应;选取单元,用于根据所述颜色值获取单元获取的颜色值,确定在绘图区域选取的图形对象。以下结合具体实施例对本发明的实现进行详细描述实施例一本发明实施例的应用场景可以是当绘图软件的绘制区域有多个图形对象,当用户想选取多个图形对象中的某ー图形对象时,如何通过鼠标快速的选取想要选取的图形对象,则可以采用本发明实施例的方法。图I示出了本发明实施一提出的图形对象的选取方法的实现流程图,详述如下
在步骤SlOl中,获取用户在绘图区域输入的图形对象选取点的坐标,绘图区域包含至少ー个图形对象,图形对象具有唯一的标识号。在本发明实施例中,当用户要获取绘图区域的某图形对象时,则在绘图区域中点击该图形对象上的ー个点,以确定在绘图区域选取的图形对象。在本发明实施例中,图形对像的标识号可以用来对图形对象进行唯一的标识,确定了图形对象的标识号就可以确定对应的图形对象。在步骤S102中,获取坐标的像素点在隐藏区域中对应的顔色值,隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,每ー图形对象具有不同的颜色值,且颜色值与绘制区域图形对象的标识号对应。在本发明实施例中,建立ー个和绘图区域大小相同、位置相同、坐标系相同的隐藏区域,将绘图区域的所有绘制的图形对象均绘制到此隐藏区域,并且绘制的每ー图形对象均使用不同的顔色值。因此,当鼠标在绘图区域移动时,鼠标相对绘图区域的坐标,同样可 以在隐藏区域找到对应的位置坐标。在步骤S103中,根据获取的颜色值,确定在绘图区域选取的图形对象。在本发明实施例中,当图形对象选取点为多个图形对象重合的像素点吋,则在隐藏区域选取最后绘制的像素点的顔色值为选取点的顔色值。当然也可以选取位于最顶层的点的顔色值为选取点的顔色值。在本发明实施例中,通过建立大小、位置、坐标系及图形对象均匀绘图区域相同的隐藏区域,井根据隐藏区域每ー图形对象具有的不同的颜色值,及该颜色值与绘制区域图形对象的标识号的对应关系,方便的确定了用户在绘制区域选取的图形对象,无需将获取的坐标点与绘制区域内的每个图形对象进行计算距离和比较,简单、方便。实施例ニ图2示出了本发明实施ニ提出的图形对象的选取方法的实现流程图,详述如下在步骤S201中,获取用户在绘图区域输入的图形对象选取点的坐标,绘图区域包含至少ー个图形对象,图形对象具有唯一的标识号。在步骤S202中,获取坐标的像素点在隐藏区域中对应的顔色值,隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,每ー图形对象具有不同的颜色值,且颜色值与绘制区域图形对象的标识号对应。标识号。在步骤S203中,根据颜色值与标识号的对应关系,确定在绘图区域选取的图形对象的标识号。在步骤S204中,在绘图区域,选中标识号对应的图形对象为选取的图形对象。在本发明实施例中,当用户要在绘图区域选取某图形对象吋,则可以通过鼠标点击该图形对象上的某个坐标点对该对象进行选择,然而,当用户没有点击在图形对象上,而是点击在图形对象附近的范围内,则可以采用以下步骤在本发明实施例中,步骤S202中,图形对象的颜色值在预设颜色值范围内与标识号对应的关系为图形对象的颜色值在预设颜色值范围内与标识号对应。在本发明实施例中,预设颜色值范围为由每一图形对象对应的颜色值及其该颜色值相邻范围内的颜色值构成的区域。则步骤S203中具体包括查找获取的颜色值所属的预设颜色值范围,确定与预设颜色值范围对应的标识号为选取图形对象的标识号。在本发明实施例中,将可以将每ー图形对象对应的颜色值及颜色值附近设定范围内的颜色值均匀标识号建立对应关系,即当获取的顔色值无论是该图形对象对应的颜色值还是该颜色值附近设定范围内的颜色值均可以认为是与该图形对象的标识号相对应,避免了用户鼠标点击在图形对象之外而无法选取对象。实施例三在本发明实施例中,为了方便,在绘图区域,可以将图形对象的数字序号作为图形对象的标识号,在隐藏区域,可以 将所述图形对象的数字序号值作为图形对象的颜色值,其中,数字序号可以是图形对象绘制的序号,也可以是按照预订规则编制的序号,具体可以采用以下方式实现图3示出了本发明实施三提出的图形对象的选取方法的实现流程图,详述如下在步骤S301中,获取用户在绘图区域输入的图形对象选择点的坐标,绘图区域包含至少ー个图形对象,图形对象具有唯一的数字序号。在步骤S302中,取坐标的像素点在隐藏区域中对应的颜色值,隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,每ー图形对象具有不同的颜色值,且颜色值与绘制区域图形对象的数字序号对应。请參阅图4a_4b示出了绘图区域和隐藏区域的示意图,其中图4a为绘图区域的示意图,其中图形对象I的ID值为1,图形对象2的ID值为2、图形对象3的ID值为3,及图4b为隐藏区域的示意图,其中图形对象I的颜色值=I、图形对象2的颜色值=2、图形对象3的颜色值=3。在步骤S303中,根据颜色值和数字序号的对应关系,确定在绘图区域选取的图形对象的数字序号。在步骤S304中,在绘图区域,数字序号对应的图形对象为选取的图形对象。在本发明实施例中,将绘图区域的图形对象标定唯一的数字序号,以此数字序号作为图形对象的索引,建立ー个和绘图区域位置,大小,坐标系均相同的隐藏区域,将绘图区域的所有对象按照原来坐标绘制到此隐藏区域,并且绘制的颜色值使用对象的数字序号,当鼠标移动到某一位置时,读取隐藏区域对应点的像素顔色,依照获取的颜色值和绘图区域中对象的数字序号对应关系来选取图形对象,通过使用数字序号作为图形对象的顔色值,并通过颜色值来选取唯一数字序号的图形对象,十分简单方便。为了便于理解,以下以ー个具体的实现示例对本发明实施例进行说明,在此不用以限制本发明。3. I、以C++bulder为例,使用TImage控件建立一个绘图区域A,命名为ImgTop,然后再建立ー个TBitmap对象,作为隐藏区域B,其大小和坐标设置同ImgTop.Graphics: :TBitmap ^bmap = new Graphics: :TBitmap ;bmap- > Width = Forml- > ImgTop- > Width ;bmap- > Height = Forml- > ImgTop- > Height ;bmap- > Top = Forml- > ImgTop- > Top ;bmap- > ImgTmp- > Left = Forml- > ImgTop- > Left ;建立好隐藏区域B后,将隐藏区域B清空待用。
3. 2、建立一个存放图形对象的数组使用MyCav,使用MyCav来存储绘制的曲线,具
体可以采用以下方式
tvpedei struct く
unsigned long id;//序 T
unsigned short Type; //存放曲线对象的类型
float x0;//起点坐标Xfloat y0;//起点坐标y
float xl;//坐标 X
float yl;//坐标 y
} MYCAV;
MYCAV * MyCav = new MYCAV[100]; //设定可以存 100 个图形对象。此处,毎次绘图时将MyCav [η].标识号设置为η,,这样数组号和图形对象的标识
号对应。3. 3、在绘制区域A中绘制一条曲线,如一条直线从(x0,y0)到(xl,yl),保存到MyCav [I]的位置,如下Forml- > ImgTop- > Canvas- > MoveTo (xO, yO);Forml- > ImgTop- > Canvas- > LineTo (xl, yl);这条曲线对象保存到MyCav数组的序号I的位置。MyCav[I]. id = I ;MyCav[I], xO = xO ;MyCav[I], yO = yO ;MyCav[I], xl = xl ;MyCav[I]. yl = yl ;3. 4、在绘图区域A中建立的图形对象,同样也在隐藏区域B中绘制,并且绘制曲线的画笔要设宽ー些,这样以便选取对象时对应拾取范围。bmap- > Canvas- > Pen- > Width = N使用N来对应设定的拾取范围,如在绘图区域使用的线宽是1,而N = 3时表示在相差I个像素内都可以选中对应的曲线。然后是在隐藏区域绘制相同坐标的相同曲线bmap- > Canvas- > Pen- > Color = I ;//1是对于曲线对象的数字序号bmap- > Canvas- > MoveTo (xO, yO);bmap- > Canvas- > LineTo (xl, yl);3. 5、获取鼠标在绘图区域的相对位置,鼠标在绘图区域移动或者点击时会触发移动或者点击事件,如下void—fastcall TForml::ImgTopMouseDown(TObject*Sender,TMouseButton Button, TShiftState Shift, int X, int Y)void__fastcall TForml::ImgTopMouseMove(TObject*Sender, TShiftStateShift, int X, int Y)參数X和Y就是此刻鼠标在绘图区域相对绘图区域(0,0)点的位置。3. 6、在获取鼠标的位置(X,Y)后,读取隐藏区域的此像素值的颜色值n = bmap- > Canvas- > Pixels[X] [Y];如果η在曲线对象的范围内,在鼠标所指的曲线就是序号为η的曲线对象,也就是 MyCav[η]这个对象了。实施例四图5示出了本发明实施四提出的图形对象的选取系统的结构,为了便于说明,仅示出了与本发明实施例相关的部分,该装置可以是内置于移动终端的软件单元、硬件単元或者软硬结合单元。在本发明实施例中,图形对象的选取系统具体包括坐标获取単元51、顔色值获取单元52及选取单元53。坐标获取単元51获取用户在绘图区域输入的图形对象选取点的坐标,绘图区域包含至少ー个图形对象,图形对象具有唯一的标识号。 在本发明实施例中,标识号为序的数字序号。颜色值获取单元52获取坐标的像素点在隐藏区域中对应的顔色值,隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,每ー图形对象具有不同的颜色值,且颜色值与绘制区域图形对象的标识号对应。选取单元53根据颜色值获取単元52获取的颜色值,确定在绘图区域选取的图形对象。在本发明实施例中,选取单兀53具体包括标识号确定模块531和选中模块532,其中,标识号确定模块531根据获取的颜色值与标识号的对应关系,确定在绘图区域选取的图形对象的标识号。在绘图区域,选中模块532选中标识号确定模块531确定的标识号对应的图形对象为选取的图形对象。在本发明实施例中,图形对象的颜色值在预设颜色值范围内与标识号对应;则标识号确定模块531查找获取的颜色值所属的预设颜色值范围,确定与预设颜色值范围对应的标识号为选取图形对象的标识号。在本发明实施例中,当图形对象选取点为多个图形对象重合的像素点吋,颜色值获取单元52在隐藏区域选取最后绘制的像素点的顔色值为选取点的顔色值。综上所述本发明实施例的有意效果如下I、通过建立大小、位置、坐标系及图形对象均匀绘图区域相同的隐藏区域,并根据隐藏区域每ー图形对象具有的不同的颜色值,及该颜色值与绘制区域图形对象的标识号的对应关系,方便的确定了用户在绘制区域选取的图形对象,无需将获取的坐标点与绘制区域内的每个图形对象进行计算距离和比较,简单、方便。2、通过将每一图形对象对应的颜色值及颜色值附近设定范围内的颜色值均匀标识号建立对应关系,即当获取的顔色值无论是该图形对象对应的颜色值还是该颜色值附近设定范围内的颜色值均可以认为是与该图形对象的标识号相对应,避免了用户鼠标点击在图形对象之外而无法选取对象。3、通过将绘图区域的图形对象标定唯一的数字序号,以此数字序号作为图形对象的索引,建立ー个和绘图区域位置,大小,坐标系均相同的隐藏区域,将绘图区域的所有对象按照原来坐标绘制到此隐藏区域,并且绘制的颜色值使用对象的数字序号,当鼠标移动到某一位置时,读取隐藏区域对应点的像素顔色,依照获取的颜色值和绘图区域中对象的数字序号对应关系来选取图形对象,通过使用数字序号作为图形对象的颜色值,并通过颜色值来选取唯一数字序号的图形对象,十分简单方便。
值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能単元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于ー计算机可读取存储介质中,所述的存储介质,如R0M/RAM、磁盘或光盘等。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种图形对象的选取方法,其特征在于,所述方法包括下述步骤 获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少一个图形对象,所述图形对象具有唯一的标识号; 获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每一图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应; 根据所述获取的颜色值,确定在绘图区域选取的图形对象。
2.如权利要求I所述的方法,其特征在于,所述根据所述获取的颜色值,确定在绘图区域选取的图形对象的步骤具体包括 根据所述获取的颜色值与所述标识号的对应关系,确定在绘图区域选取的图形对象的标识号; 在绘图区域,选中所述标识号对应的图形对象为选取的图形对象。
3.如权利要求2所述的方法,其特征在于,所述图形对象的颜色值与绘制区域图形对象的标识号对应的关系为所述图形对象的颜色值在预设颜色值范围内与所述标识号对应;则 所述根据所述获取的颜色值与所述标识号的对应关系,确定在绘图区域选取的图形对象的标识号的步骤具体为 查找所述获取的颜色值所属的预设颜色值范围,确定与所述预设颜色值范围对应的标识号为所述选取图形对象的标识号。
4.如权利要求I所述的方法,其特征在于,当所述图形对象选取点为多个图形对象重合的像素点时,则在隐藏区域选取最后绘制的像素点的颜色值为所述选取点的颜色值。
5.如权利要求I至4任一权利要求所述的方法,其特征在于,在绘图区域,将图形对象的数字序号作为图形对象的标识号,在隐藏区域,将所述图形对象的数字序号值作为图形对象的颜色值。
6.一种图形对象的选取系统,其特征在于,所述系统包括 坐标获取单元,用于获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少一个图形对象,所述图形对象具有唯一的标识号; 颜色值获取单元,用于获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每一图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应; 选取单元,用于根据所述颜色值获取单元获取的颜色值,确定在绘图区域选取的图形对象。
7.如权利要求6所述的系统,其特征在于,所述选取单元53具体包括 标识号确定模块,用于根据所述获取的颜色值与所述标识号的对应关系,确定在绘图区域选取的图形对象的标识号; 选中模块,用于在绘图区域,选中所述标识号确定模块确定的标识号对应的图形对象为选取的图形对象。
8.如权利要求7所述的系统,其特征在于,所述图形对象的颜色值在预设颜色值范围内与所述标识号对应;则所述标识号确定模块,用于查找所述获取的颜色值所属的预设颜色值范围,确定与所述预设颜色值范围对应的标识号为所述选取图形对象的标识号。
9.如权利要求6所述的系统,其特征在于,所述颜色值获取单元,用于当所述图形对象选取点为多个图形对象重合的像素点时,则在隐藏区域选取最后绘制的像素点的颜色值为所述选取点的颜色值。
10.如权利要求6至10任一权利要求所述的系统,其特征在于,在绘图区域,将图形对象的数字序号作为图形对象的标识号,在隐藏区域,将所述图形对象的数字序号值作为图形对象的颜色值。
全文摘要
本发明适用于计算机绘图技术领域,提供了一种图形对象的选取方法及系统,所述方法包括下述步骤获取用户在绘图区域输入的图形对象选取点的坐标,所述绘图区域包含至少一个图形对象,所述图形对象具有唯一的标识号,获取所述坐标的像素点在隐藏区域中对应的颜色值,所述隐藏区域与绘图区域大小相同、位置相同、坐标系相同,且包含与绘图区域相对应的图形对象,所述每一图形对象具有不同的颜色值,且所述颜色值与绘制区域图形对象的标识号对应,根据所述获取的颜色值,确定在绘图区域选取的图形对象。本发明实现无需将获取的坐标点与绘制区域内的每个图形对象进行计算距离和比较,简单、方便。
文档编号G06F9/44GK102855132SQ20111018130
公开日2013年1月2日 申请日期2011年6月30日 优先权日2011年6月30日
发明者陈克胜, 杨贤卓, 孟方, 阴波波, 高云峰 申请人:深圳市大族激光科技股份有限公司