CN107636681A - 绘图对象推断系统和方法 - Google Patents
绘图对象推断系统和方法 Download PDFInfo
- Publication number
- CN107636681A CN107636681A CN201680026498.6A CN201680026498A CN107636681A CN 107636681 A CN107636681 A CN 107636681A CN 201680026498 A CN201680026498 A CN 201680026498A CN 107636681 A CN107636681 A CN 107636681A
- Authority
- CN
- China
- Prior art keywords
- preceding object
- another pair
- processor
- type
- size
- 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
Links
Classifications
-
- 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
- G06F3/0488—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 using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—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 using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- 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
- G06F3/04845—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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- 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
- G06F3/0488—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 using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/32—Digital ink
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
提供了具有处理器(102)的系统(100),其响应于通过触摸屏的输入(116)而可视地操控触摸屏上的对象。至少部分地基于表示通过显示装置(108)显示的多个在前对象(112)的类型和大小的数据,处理器可确定通过输入装置(110)的至少一个输入对应于另一对象(122),该另一对象具有对应于至少一个在前对象的确定类型并且具有在对应于至少一个在前对象的预定公差内的大小。而且,处理器可响应于此使显示装置显示代替具有与至少一个在前对象相对应的大小和形状的另一对象的替换对象(126)。
Description
技术领域
本公开主要涉及用于创建和管理产品和其它物品的数据的计算机辅助设计、可视化、和制造系统、产品数据管理(PDM)系统、产品生命周期管理(“PLM”)系统和类似的系统(在本文中统称为产品系统)。
背景技术
计算机辅助设计(CAD)系统和其它类型的绘图系统可包括图形用户界面(GUI),通过该图形用户界面可创建产品的绘图。此类图形用户界面可从改进中受益。
发明内容
各种公开的实施例包括可用于在CAD系统或其它类型的绘图系统中绘制对象的系统和方法。在一个示例中,系统可包括至少一个处理器。至少一个处理器可被配置用于至少部分地基于表示通过工作空间上的显示装置显示的多个在前对象的类型和大小的数据来确定,通过输入装置的至少一个输入对应于另一对象,该另一对象具有对应于至少一个在前对象的确定类型,并具有位于与至少一个在前对象相对应的预定公差内的大小。至少一个处理器还可被配置用于响应于此使显示装置在工作空间上显示替换对象,代替具有与至少一个在前对象相对应的大小和形状的另一对象。
在另一示例中,方法可包括通过运行至少一个处理器而执行各种行为。此方法可包括至少部分地基于表示通过工作空间上的显示装置显示的多个在前对象的类型和大小的数据,来确定通过输入装置的至少一个输入对应于另一对象,该另一对象具有对应于至少一个在前对象的确定类型,并具有位于与至少一个在前对象相对应的预定公差内的大小。而且响应于该确定结果,该示例方法可包括使显示装置在工作空间上显示替换对象,代替具有与至少一个在前对象相对应的大小和形状的另一对象。
另一示例可包括用可执行指令编码的非暂态计算机可读介质(如存储装置上的软件组件),当可执行指令被执行时,使至少一个处理器执行该描述的方法。
前面已经相当广泛地概述了本公开的技术特征,从而本领域技术人员可更好地理解下面的详细描述。下面将描述来自形成权利要求的主题的本公开的附加特征和优点。本领域技术人员应理解,他们可在修改或设计用于实施本公开的相同目的的其它结构的基础上,很容易地使用所公开的概念和具体实施例。本领域技术人员还应认识到,此类等同的结构不会偏离本公开最广泛的精神和范围。
在进行下面的具体实施方式之前,可能有利的是阐述可在本专利文献中自始至终使用的某些词组或短语的定义。术语“包括”和“包含”及其派生词是指没有限制的包括。单数形式“一种”、“一个”、“该”旨在也包括复数形式,除非上下文明确指出不同。此外,本文所用的术语“和/或”指代并涵盖一个或多个相关列出的项目的任意和所有可能的组合。术语“或”包括端值在内,意指和/或,除非上下文另有明确指示。短语“相关联”和“与之相关联”及其派生词可指的是包括、包括在内、与其互连、含有、包含在内、连接至或与其连接、耦接至会与其耦接、与其通信、与其配合、交错、并置、接近、绑定至或与其绑定、具有或具有...属性等等。
而且,尽管术语“第一”、“第二”、“第三”等可用于描述各种元件、功能或行为,这些元件、功能或行为不应受这些术语的限制。相反,这些数字形容词用于区分不同的元件、功能或行为。例如,在不脱离本公开的范围的情况下,第一元件、功能或行为可以被称为第二元件、功能或行为,并且类似地,第二元件、功能或行为可以被称为第一元件、功能或行为。
此外,如“处理器被配置用于”执行一个或多个功能或处理的短语可指的是处理器可运行配置用于或可操作性地配置用于经由软件、固件和/或布线电路来执行功能或处理。例如,被配置用于执行功能/处理的处理器可对应于主动执行软件/固件的处理器,软件/固件被编程为使处理器执行功能/处理,和/或可对应于将软件/固件存储在可由处理器执行以执行功能/处理的存储或存储装置中的处理器。还应指出的是,“被配置用于”执行一个或多个功能或处理的处理器可对应于专门制造或“布线”以执行功能或处理的处理器电路(例如,ASIC或FPGA设计)。
术语“相邻”可能意味着:元件相对接近但没有与另一元件接触;或者该元件与另一部分接触,除非上下文另有明确指出。
在整个专利文献中提供了某些词组和短语的定义,并且本领域普通技术人员应理解,此类定义适用于先前以及未来使用这些定义的词组和短语的许多(也许不是绝大多数)实例。一些术语可包括各种各样的实施例,而所附权利要求可明确地将这些术语限制到特定实施例。
附图说明
图1示出了有助于绘制对象的示例系统的功能框图。
图2-5示出了另一对象绘制和被替换对象替换的显示装置的视图序列。
图6示出了有助于绘制对象的示例方法的流程图。
图7示出了可以实现实施例的数据处理系统的框图。
具体实施方式
现将参考附图描述与绘图系统相关的各种技术,其中,相同的附图标记始终表示相同的元件。以下讨论的附图和用于描述本专利文献中的本公开的原理的各种实施例仅作为例证,而不应以任意方式解释为限制本公开的范围。本领域技术人员应理解,本公开的原理可在任意适当布置的设备中实现。应当理解,被描述为由某些系统部件执行的功能可由多个部件执行。类似地,例如,部件可被配置用于执行被描述为由多个部件执行的功能。参考示例性非限制性的实施例来描述本申请的众多创新教导。
许多形式的绘图系统(如CAD系统)可用于操控各种类型的可视对象。此类可视对象可包括几何图元,如直线段、弧线、曲线和样条曲线。此类可视对象还可包括2D和3D形状,如圆形、正方形、矩形、球体、锥体、圆柱体、立方体和长方体。此类可视对象还可包括更简单的可视对象的组合以形成复杂的2D或3D结构。因此,通常绘图对象可对应于可以通过显示装置(如显示屏)显示的任意类型的图形对象,能够通过输入装置经由输入端相对于形状、大小、取向和/或位置对显示装置进行可视操控。
参考图1,该图示出了有助于绘制和操控对象的示例系统100。系统100可包括至少一个处理器102,其被配置用于执行来自存储器106的一个或多个应用软件组件104,以便执行本文所述的各种特征。应用软件组件104可包括绘图软件应用或其一部分,如CAD软件应用。此CAD软件应用程序可至少部分地基于由用户提供的输入来产生CAD绘图。
CAD/CAM/CAE软件的一种可适于包括本文所描述的至少一些功能的示例包括可从西门子产品生命周期软件公司(德克萨斯,普莱诺)获得的NX应用套件。然而,还应理解,此绘图软件应用可对应于其它类型的绘图软件,包括基于矢量的插图软件、演示软件、图表软件、文字处理应用、游戏、可视编程工具和/或涉及绘制和操控对象的任意其它类型软件。
所描述的系统可包括至少一个显示装置108(如显示屏)和至少一个输入装置110。例如,处理器102可被集成到包括用作输入和显示装置两者的触摸屏的壳体中。此类系统的示例可包括移动电话、平板电脑和笔记本电脑。然而,应理解,示例实施例可使用其它类型的输入和显示装置。例如,系统可包括具有不包括触摸屏的显示屏的显示装置,如LCD监视器或投影仪。此外,系统可使用其它类型的输入装置来提供用于操纵对象的输入,如鼠标、指针、触摸板、绘图板、轨迹球、操纵杆、小键盘、键盘、摄像头、运动感测装置或能够提供本文所述的输入的任意其它类型的输入装置。
此外,应指出的是,本文所述的处理器可位于远离本文所述的显示器和输入装置的服务器中。在此示例中,所述的显示装置和输入装置可被包括在通过有线或无线网络(可包括因特网)与服务器(和/或在服务器上执行的虚拟机)通信的客户端装置中。在一些实施例中,此客户端装置例如可执行远程桌面应用或可对应于与服务器一起执行远程桌面协议的门户装置,以便从输入装置向服务器发送输入并从服务器接收可视信息以通过显示装置显示。此类远程桌面协议的示例包括Teradici的PCoIP、微软的RDP以及RFB协议。在此类示例中,本文描述的处理器可对应于在服务器的处理器中执行的虚拟机的虚拟处理器。
图1示意性地示出了显示装置108的多个不同视图(A-C),处理器102响应于通过输入装置110接收到的各种输入而使得这些多个不同视图被显示出来。例如,在显示装置108的视图A中,处理器102可被配置(如经由描述的应用软件组件104)用于使得显示装置108响应于通过输入装置110接收到的绘图输入116而在工作空间114上显示可视对象112。此工作空间114可对应于二维背景表面,在该二维背景表面上在应用软件组件104的图形用户界面中绘制、显示和操控对象。然而,还应理解,对于3D绘图,工作空间可对应于三维空间的二维视图,在该二维视图中可使用应用软件组件104的图形用户界面来可视地绘制、显示和操控对象。而且在其它示例中,3D显示器可用于在3D工作空间中呈现3D绘图。
在示例实施例中,通过显示装置108显示的可视对象112可包括在前对象118,可响应于通过输入装置110的绘图输入116已经绘制该在前对象。每个在前对象118可具有类型和大小。代表这些在前对象的类型和大小的对象数据140可由处理器102确定并存储在存储器106中(和/或在一些其它数据存储中,如存储在存储装置上的绘图文件)。
此外,应理解在之前的某时间经由不同的处理器、显示装置和输入装置可能已经绘制了工作空间上的在前对象并且将其保存为经由当前处理器102加载并在显示器108上显示的文件。此外,应理解可经由导入、粘贴、加载和/或致使在前对象在工作空间上显示的任意其它类型的操作来将在前对象放置在工作空间上。此外,在前对象可对应于加载在工作空间上的对象,经由通过输入装置110的输入已经进一步操控该对象。
对象类型数据的可被确定为对应于对象的示例可包括几何图元类型,如:直线和曲线或可从线的可视表示确定的任意其它图元类型。而且,对象类型数据的可被确定为用于对象的示例可包括几何形状类型,如:矩形、三角形、其它多边形、圆形、椭圆形和/或从包括对象的一个或多个线的构形中能够一致地识别的任意其它形状。而且,大小数据的可被确定为对应于对象的示例可包括对象的宽度和高度(如,对于矩形)、对象的直径(如,对于圆、椭圆)、物件(如三角形或其它多边形)的每个边的长度和/或边之间的角度、和/或可用于量化对象的大小尺寸的任意其它测量数据。
如显示装置的视图B所示,处理器可被配置用于通过输入装置110接收至少一个输入120,并且响应于该输入使显示装置108输出另一对象122。当用户停止提供用于绘制另一对象122的输入120时,处理器可被配置用于确定另一对象的类型和大小。例如,如果输入装置对应于触摸屏,则当用户从触摸屏的表面抬起他们的手指136(或触针)时,可由触发软件组件开始确定另一对象122的类型和大小的应用软件组件接收事件。类似地,对于输入装置,如鼠标,处理器可被配置用于在接收到与鼠标按钮向上弹起事件相对应的检测到的事件,或指示完成至少一部分的另一对象的其它输入时,确定另一对象的类型和大小。
应理解另一对象可对应于先前不存在的新绘制的对象,从工作空间上的绘制/数字墨水输入识别该新绘制的对象。然而,还应理解,另一对象可对应于预先存在的当前以某种方式被操控的对象。因此,所操控的在前对象可对应于本文所述的另一对象。
此外,应理解可在若干不同的绘图事件中完成另一对象,其中,在所述绘图事件中,在不同时间使用手指、触针或鼠标(经由单独的触摸或鼠标点击)来绘制对象。因此,在示例实施例中,软件应用组件104可在对另一对象的每次单独的添加、删除和/或修改之后重新评估另一对象的类型和形状。
在示例实施例中,处理器102可被配置用于至少部分基于表示多个在前对象118的类型和大小的数据来确定至少一个输入120对应于另一对象122,该另一对象具有对应于至少一个在前对象的确定类型并且具有位于与对应于至少一个在前对象的预定公差内的大小。
例如,如图1所示,处理器可被配置用于确定另一对象122具有对应于矩形类型的对象的一般形状。处理器还可以根据表示在前对象112的数据确定,在前对象118中的至少一个在前对象124也对应于矩形类型的对象。此外,处理器可被配置用于确定另一对象122的大小尺寸,并将其与先前确定的至少一个在前对象124的大小尺寸数据进行比较,该至少一个在前对象具有相同的对应矩形的对象类型。此外,处理器可被配置用于确定另一对象矩形的大小尺寸(宽度和高度)位于具有与在前对象124相同的大小尺寸的10%(或其它公差范围)内。
应理解在前对象可包括多种不同类型的形状。例如,如图1所示,在前对象包括绘制对象的圆形类型128、两种类型的矩形类型124、130和三角形类型132。处理器可被配置用于确定另一对象的类型,并且从包括不同类型的在前对象的更大在前对象集合112中选择具有与另一对象122相同的类型(例如,矩形类型)的在前对象的候选集合134。此候选集合134可包括不止一个具有相同大小或具有不同大小的在前对象。因此,处理器可被配置用于将另一对象的大小与候选集合134中的在前对象124、130的相应大小进行比较,以确定候选集合中的至少一个在前对象124与另一对象接近地匹配。
如显示装置108的视图C所示,基于该确定结果(在预定公差内匹配对象类型和对象大小),至少一个处理器可被配置用于使得显示装置在工作空间114上输出替换对象126,代替具有与至少一个在前对象124相对应的大小和形状的另一对象。
以此方式,用户可在工作空间上徒手绘制出并非为完全对称形状的形状(例如,矩形的对边可能不具有相同长度和/或彼此可能不完全相互平行)。应用软件组件104可使得处理器执行形状识别算法,该形状识别算法(基于不同线、顶点和其它绘图特征的取向和位置)识别哪种对象类型最接近已绘制的对象。
然而,没有用具有相同确定类型的对象的更平滑绘制的版本简单替换另一对象,而是至少一个处理器可被配置用于以平滑绘制的、具有与确定的至少一个在前对象匹配的大小的版本替换另一对象。此外,应理解如果另一对象没有位于在前对象中的一者的预定公差内,则处理器可将原始的另一对象留在工作空间上,或者可用更平滑绘制的替换对象形状替换另一对象,该替换对象形状通常具有与另一对象相同的大小而不是在前对象中的一者的大小。
在示例实施例中,应用软件组件的用户界面可包括(除工作空间之外)配置菜单、窗口或其它图形用户界面控件,其使得用户能够设定和修改此类可使用的大小公差,确定哪个先验绘制对象在大小上足够相似,从而确定替换对象126的大小。可通过百分比范围(例如,在10%内)、通过间距(例如,在0.19英寸/5毫米内)、通过像素大小(例如,在25像素内)、通过角取向(例如,在10度内)或可用于比较绘制对象的尺寸的任意其它值范围来指定此类公差。
在示例实施例中,替换对象126可变为在前对象112中的一者。因此,处理器可被配置用于更新存储在存储器106或其它位置中的对象数据140,以包括与替换对象126相关联的类型和大小数据,所述类型和大小数据用于与任意其它以后绘制(或修改)的对象相关联的类型和大小数据进行比较。
此外,处理器可被配置用于将在工作空间114上绘制(或修改)每个对象的顺序包括在对象数据140中。此顺序数据可对应于:分配给每个对象的增量序号;绘制/修改对象时的时间戳和/或可用于确定绘制/修改对象的相对顺序的任意其它数据。而且,处理器可被配置用于在对象数据140中包括表示每个绘制对象在工作空间114上所处的位置的位置数据。因此,对于替换对象,处理器可修改对象数据140以包括替换对象的对象类型、大小和位置,以及表示作为最近的绘制/修改对象的替换对象的顺序数据。
在示例实施例中,处理器102可被配置用于选择在候选集合134中包括的在前对象的数量,该数量小于具有与另一对象相同的类型的在前对象的总数。此最大数量可对应于存储在存储器106或一些其它存储位置中的在前对象的预定最大数量。在示例实施例中,应用软件组件的用户界面可包括配置菜单、窗口或其它图形用户界面控件,其使得用户能够设定和修改此要包括在候选集合134中的在前对象的预定最大数量。
例如,图2示出了由显示装置108提供的工作空间114的示例视图200(A-C)。在视图A中,工作空间114包括不同类型(圆形、三角形、矩形)的十个在前对象202。出于说明的目的,这些对象中的每个对象包括绘制每个对象的相应顺序号。在视图B中,具有圆形类型的另一对象204已经被添加到工作空间114中。
在该示例中,如果在前对象的预定的最大数量对应于值五,则应用软件组件104将选择如下的用于候选集合的在前对象,即在前对象与圆相对应并且是对象类型圆的最近五个在前对象。因此在该示例中,候选集合将包括在前对象206、208、210、212和214,而不包括在前的圆216。
如前所述,应用软件组件104将对另一对象204的大小(例如,直径)与候选集合的五个在前对象的大小(例如,直径)进行比较。如图2中的显示装置108的视图C所示,如果另一对象的大小在对应于候选在前对象中的至少一者的大小的预定阈值内,则处理器将用替换对象218替换另一对象,该替换对象具有与候选集合中的至少一个在前对象相同的大小。如果另一对象在两个不同大小的在前对象的公差内,则处理器可被配置用于使替换对象使用最近在前对象或具有最接近大小的在前对象的尺寸。
在另一示例实施例中,处理器可被配置用于至少部分地基于另一对象相对于在前对象的位置的位置来选择要包括在候选集合中的在前对象的数量,该数量小于与另一对象具有相同类型的在前对象的总数。
例如,关于图2,处理器可被配置用于确定哪些相同类型的在前对象202在另一对象204的预定距离内。此预定距离可对应于相对于另一对象的中心部分的径向距离。例如,图2以虚线圆220示出了哪些在前对象在另一对象204的预定径向距离(例如,4英寸/10.2厘米)内。在该示例中,只有对象208和210对应于(至少部分地)在预定距离(即,虚线圆220)内的类型圆的对象。因此,只有这两个在前对象对应于与另一对象204进行比较的候选集合。
还应理解在其它示例中,预定距离可对应于框,该框由在另一对象的预定水平距离内的垂直边限定并且由在另一对象的预定垂直距离内的水平边限定。此外,其它示例实施例可使用其它空间分组来确定哪个预定对象在另一对象的预定范围内。
在示例实施例中,应用软件组件的用户界面可包括配置菜单、窗口或其它图形用户界面控件,其使得用户能够设定和修改如下的预定距离,即在此预定距离中在前对象被选择为包括在候选集合中。
还应理解示例实施例可基于具有另一对象的预定距离和/或在添加到工作空间的最近的在前对象预定数量内,来选择哪些在前对象要包括在候选集合中。
在另一示例实施例中,处理器102可被配置用于确定候选集合中的另一对象和至少两个在前对象位于具有相同大小和形状以及被等距隔开和对齐的预定公差内。响应于该确定结果,处理器可使得替换对象通过显示装置显示,从而替换对象和至少两个在前对象具有相同的大小和形状并且被等距隔开和对齐。
例如,图3示出了由显示装置108提供的工作空间114的示例视图300(A-C)。在视图A中,工作空间114包括隔开的相同类型(例如,三角形)的两个在前对象302。这些对象中的每者具有相同的大小,并且所述对象水平对齐。因此,这些对象的对象数据140可包括这些对象的垂直位置的相同垂直坐标。
在视图B中,具有三角形类型的另一对象304已经被添加到工作空间114中。如上所述,处理器可用于确定两个在前对象具有相同的对象类型并且位于具有与另一对象304的大小对应的大小的预定公差内。处理器可另外响应于为另一对象304和在前对象302所确定的位置数据,确定另一对象304的垂直位置在在前对象302的垂直位置的预定距离内。如视图C所示,响应于该确定结果,处理器可被配置用于以具有与在前对象相同的大小和垂直位置的替换对象306替换另一对象304。
处理器可另外响应于为另一对象304和在前对象302所确定的位置数据,确定在前对象302之间的水平间隔位于另一对象304和最接近的在前对象308之间的水平间隔的预定距离内。如视图C所示,响应于该确定结果,处理器可被配置用于将替换对象306放置成使得其与在前对象302隔开的距离与在前对象308隔开的距离相同。
还应理解处理器可被配置用于确定相对于对象集合的其它对齐和间隔开的关系,如将垂直或对角线间隔开的对象对齐,以便确定替换对象的位置,该替换对象的位置相对于大小和类型相同的在前对象具有对应的对齐和间隔方式。
在示例实施例中,应用软件组件的用户界面可包括配置菜单、窗口或其它图形用户界面控件,其使得用户能够设定和修改如下类型的预定公差(例如,在0.25英寸/0.66厘米或其它距离内),即在此公差内,确定另一对象是否具有相对于相同类型的在前对象相同的垂直位置和/或间隔。
此外,在另外的示例实施例中,处理器可被配置用于确定候选集合中的另一对象和若干(如四个)在前对象在具有相同的大小和形状(和取向)的预定公差内,以及位于以具有不同对齐和/或不同间隔绘制对象的重复模式对齐和/或间隔开的预定公差内。响应于该确定结果,处理器可使替换对象通过显示装置显示,使得替换对象和若干在前对象具有相同的大小和形状(和取向),并且具有如下的相对于彼此的对齐和/或间隔方式,即使重复模式能够继续添加替换对象。
例如,图4示出了由显示装置108提供的工作空间114的示例视图400(A-C)。在视图A中,工作空间114包括隔开的类型相同(例如,曲线)的四个在前对象402。这些对象中的每个具有相同的大小(和相同的弯曲形状和取向),并且在两个间隔开的垂直位置与交替间隔之间在水平方向交替。因此,用于这些对象的对象数据140可包括用于这些对象的垂直位置的两个不同的交替垂直坐标,以及位置数据,该位置数据可表示这些对象之间的间隔在第一较接近的间隔和第二较大的间距之间交替。
因为曲线类型的对象(和其它类型的对象)可根据线曲率具有不同的形状,为了将另一对象与此类在前对象进行比较,至少一个处理器还可确定在前对象的形状数据并将其存储在用于在前对象的对象数据中。对于曲线,此形状数据可包括线的曲率的数量。对于更复杂的形状(如不规则多边形),形状数据可包括线的相对位置、形成形状的线的大小和/或量化形状以用于与另外对象进行比较的任意其它数据。
而且,因为曲线类型的对象(和其它类型的对象)可以以不同的旋转角取向,所以至少一个处理器也可确定取向数据并将其存储在用于在前对象的对象数据中。对于曲线类型的对象,此取向数据可包括曲线的端点之间的角度。然而,应理解不同类型的对象可包括用于确定对象的取向的不同标准。
因此,除了比较对象的大小之外,处理器可被配置用于确定在前对象402的曲线的取向和曲率的数量(该数据可被存储为对象数据140的端口)。处理器还可被配置用于确定与另一对象404对应的曲率的数量和取向。
图4的视图B示出了已经添加到工作空间114的具有曲线类型的另一对象404的示例。在该示例中,处理器可运行以确定在前对象402具有相同的对象类型并且在具有对应于另一对象404的大小、形状和取向的大小、形状和取向的预定公差内。
因此,如图4的视图C所示,处理器可用于使用具有与在前对象402相同的大小、形状和取向的替换对象406替换另一对象404。
此外,处理器可另外响应于为另一对象404和在前对象402所确定的位置数据,确定另一对象404的水平和垂直位置位于如下的预定距离内,即使得另一对象的水平和垂直位置处于继续在前对象402的垂直交替模式以及继续对象之间的交替间隔模式的位置中的预定距离。如视图C所示,响应于该确定结果,处理器可被配置用于使用如下的位置中的替换对象406替换另一对象404,即使得在前对象和替换对象的集合继续具有与在前对象相关联的确定的位置模式。
还应理解处理器可被配置用于相对于对象集合(如跟随曲线的图案)来确定其它空间图案,以便确定替换对象的位置。此外,先前描述的配置图形用户界面控件可使用户能够设定和修改如下类型的预定公差(例如,在.5英寸/1.27厘米或其它距离内),即在此预定公差内,确定另一对象是否处于包括于在前对象的空间模式布置中的大体位置。
先前的示例说明了用对应于工作空间上的在前对象的替换对象替换简单形状。还应理解应用软件组件也可用于使用相应的在前对象替换具有更复杂形状的另一对象。
此外,示例实施例可被配置用于以图元级(线、圆、圆弧、椭圆、样条)工作以找到合适于经组合以形成更复杂对象的各个图元类型对象的替换对象。在该示例中,可将添加到工作空间的每个另一图元类型的对象与类型相同(例如,直线、圆、圆弧椭圆、样条)的在前图元类型对象进行比较,以在具有相同大小、取向和/或曲率的公差范围内找到在前图元类型对象,以用作另一图元类型对象的替代对象。换句话说,由于在工作空间上经由添加一系列单独的线/曲线来构建更复杂的形状,所以应用软件可用于以基于在完成的线/曲线的公差内的在前的线/曲线,使用替换线/曲线立即替换每条完成的线/曲线。
为了进一步帮助用户的、由图元类型对象绘制更复杂形状的能力,处理器还可被配置用于将另外的图元类型对象(如线)抓取到(即移动)到新位置,该新位置是位于工作空间上与一个或多个在前图元类型对象共线、平行和/或垂直的预定公差内的、与一个或多个在前图元类型对象共线、平行和/或垂直。例如,当另一椭圆处于平行于在前椭圆的预定公差内时,可抓取椭圆类型对象以使得另一椭圆的轴平行于工作空间上的在前椭圆。
在另一示例中,处理器可被配置用于使用工作空间上的在前对象的镜像构形替换另一对象。例如,图5示出了由显示装置108提供的工作空间114的另外的示例视图500(A-B)。在视图A中,工作空间114包括在前对象502和另一对象504。在该示例中,处理器被配置用于确定另一对象和在前对象位于具有相同大小和形状的并且彼此成为镜像的预定公差内。
如视图B所示,响应于该确定结果,处理器可被配置用于使用具有与在前对象相对应的大小和形状并且是该在前对象的镜像的替换对象506替换另一对象504。
现在参考图6,该图示出和描述了各种示例方法。虽然该方法被描述为按顺序执行的一系列行为,但是应理解,所述方法可不受该顺序的限制。例如,一些行为可以以与本文描述的顺序不同的顺序发生。此外,一种行为可与另一种行为同时发生。此外,在一些情况下,实现本文所述的方法并不需要所有的行为。
重要的是要注意,虽然本公开包括全功能系统和/或一系列行为的背景下的说明书,但是本领域技术人员应理解,本公开的机构的至少部分和/或描述的行为能够以包含呈各种形式的任意形式的非暂态机器可用的、计算机可用的或计算机可读的介质内的计算机可执行指令的形式分配,并且无论用于实际执行该分配的指令或信号承载介质或存储介质的特定类型如何,本公开同样能够适用。非暂态机器可用/可读的或计算机可用/可读的介质的示例包括:ROM、EPROM、磁带、软盘、硬盘驱动器、SSD、闪存、CD、DVD和蓝光盘。计算机可执行的指令可包括例程、子例程、程序、应用、模块、库、执行线程和/或相类似的。此外,该方法的行为结果可存储在计算机可读介质上、显示在显示装置上和/或相类似的。
现在参考图6,示出了有助于绘制对象的方法600。该方法可在602开始,并且在604,该方法可包括以下行为:(a)通过运行至少一个处理器,至少部分地基于表示通过工作空间上的显示装置显示的多个在前对象的类型和大小的数据,确定通过输入装置的至少一个输入对应于另一对象,该另一对象具有与至少一个在前对象相对应的确定类型并且具有位于与至少一个在前对象相对应的预定公差内的大小。
此外,方法600可包括以下行为606:(b)通过响应于(a)的至少一个处理器的运行,使显示装置在工作空间上显示替换对象,代替具有与至少一个在前对象相对应的大小和形状的另一对象。在608,可结束该方法。
此外,方法600可包括先前讨论的关于系统100的其它行为和特征。例如,如上所述,该方法可包括确定另一对象的类型并从包括不同类型的在前对象的更大的在前对象集合中选择具有与另一对象相同的类型的在前对象的候选集合。此外,该方法可包括将另一对象的大小和形状与候选集合中的在前对象的相应大小和形状进行比较,以确定至少一个在前对象。
而且,表示多个在前对象的数据也可以存储在存储器、存储装置或其组合中的至少一者中,并且此数据可分别指定:多个在前对象的类型、大小、形状和位置以及在工作空间中提供每个在前对象的相应顺序。该方法可包括修改存储的数据以包括替换对象的相应类型、大小、形状和位置并且指示替换对象为最近的在前对象。
在示例实施例中,该方法还可包括:至少部分地基于在前对象的预定最大数量来选择要包括在候选集合中的在前对象的数量,该数量少于具有与另一对象相同的类型的在前对象的总数。此行为还可对应于至少部分地基于绘制在前对象的顺序,选择包括在候选集合中的在前对象的数量,该数量少于具有与另一对象相同的类型的在前对象的总数。
在另外的示例实施例中,该方法可包括:至少部分地基于相对于在前对象的位置的另一对象的位置,选择包括在候选集合中的在前对象的数量,该数量少于具有与另一对象相同的类型的在前对象的总数。
而且,该方法可包括确定另一对象和候选集合中的至少两个在前对象位于具有相同大小和形状并且等距隔开和对齐的预定公差内。响应于该确定结果,该方法可包括使替换对象通过显示装置显示,使得替换对象和至少两个在前对象具有相同的大小和形状并且被等距隔开和对齐。
在另一示例中,该方法可包括确定另一对象和候选集合中的至少四个在前对象位于具有相同大小和形状以及以具有不同对齐和/或不同间隔开绘制对象的重复模式对齐和/或隔开的预定公差内。响应于该确定结果,该方法可包括使替换对象通过显示装置显示,使得替换对象和至少四个在前对象具有相同的大小和形状,并且具有相对于彼此使得重复模式能够继续添加替换对象的对齐和/或间隔方式。
在另一示例中,该方法可包括确定另一对象和至少一个在前对象位于具有相同大小和形状并且彼此成镜像的预定公差内。响应于此,该方法可包括使显示装置显示替换对象,代替具有与至少一个在前对象相对应的大小和形状的并且是至少一个在前对象的镜像的另一对象。
如前所描述,与这些方法相关联的此类行为可由一个或多个处理器执行。此类处理器可被包括在一个或多个数据处理系统中,该数据处理系统例如执行软件组件,其用于使这些行为由一个或多个处理器执行。在示例实施例中,此类软件组件可在软件环境/语言/框架如Java、JavaScript、Python、C、C#、C++或能够产生配置用于执行本文所描述的行为和特征的组件以及图形用户界面的任意其它软件工具中编写。
图7示出了数据处理系统700(也称为计算机系统)的框图,在该数据处理系统中可以实现实施例,例如作为PLM、CAD和/或绘图系统的一部分,其可通过软件操作地配置或以其它方式执行本文描述的处理过程。所描绘的数据处理系统包括可连接到一个或多个桥接器/控制器/总线704(例如,北桥接器、南桥接器)的至少一个处理器702(例如,CPU)。总线704中的一者例如可包括一个或多个I/O总线,如PCI Express总线。而且,在所描绘的示例中,可包括连接到各种总线的主存储器706(RAM)和图形控制器708。图形控制器708可连接到一个或多个显示装置710。还应指出的是,在一些实施例中,一个或多个控制器(例如,图形控制器、南桥接器)可与CPU集成(在相同的芯片或管芯上)。CPU架构的示例包括IA-32、x86-64和ARM处理器架构。
连接到一个或多个总线的其它外围装置可包括可用于连接到局域网(LAN)、广域网(WAN)、蜂窝网络和/或其它有线或无线网络714或通信设备的通信控制器712(以太网控制器、WiFi控制器、蜂窝控制器)。
连接到各种总线的其它部件可包括一个或多个I/O控制器716,如USB控制器、蓝牙控制器和/或专用音频控制器(连接到扬声器和/或麦克风)。还应理解,各种外围装置可连接到USB控制器(经由各种USB端口),该外围装置包括输入装置718(例如,键盘、鼠标、触摸屏、轨迹球、摄像头、麦克风、扫描仪)、输出装置720(例如,打印机、扬声器)或可用于向数据处理系统提供输入或从该数据处理系统接收输出的任意其它类型的装置。此外,应理解被称为输入装置或输出装置的许多装置两者都可向数据处理系统的通信提供输入和接收其输出。此外,应理解连接到I/O控制器716的其它外围硬件722可包括被配置用于与数据处理系统通信的任意类型的装置、机器或部件。
连接到各种总线的附加部件可包括一个或多个存储控制器724(例如,SATA)。存储控制器可连接到存储装置726,如一个或多个存储驱动器和/或任意相关联的可移动介质,其可以为任意合适的非暂态机器可用的或机器可读的存储介质。示例包括非易失性装置、易失性装置、只读装置、可写装置、ROM、EPROM、磁带存储、软盘驱动器、硬盘驱动器、固态驱动器(SSD)、闪存、光盘驱动器(CD、DVD、蓝光光盘)和其它已知的光学、电气或磁存储装置驱动器和/或计算机介质。而且在一些示例中,存储装置如SSD可直接连接到I/O总线704如PCIExpress总线。
根据本公开的实施例的数据处理系统可包括操作系统728、软件/固件730和数据存储732(其可存储在存储装置726上)。此操作系统可使用命令行界面(CLI)壳层和/或图形用户界面(GUI)壳层。GUI壳层允许多个显示窗口同时呈现在图形用户界面中,每个显示窗口提供不同应用或同一应用不同情况的界面。图形用户界面中的光标或指针可由用户通过指向装置如鼠标或触摸屏来操控。可改变光标/指针的位置和/或可生成事件如点击鼠标按钮或触摸触摸屏来启动所需的响应。可在数据处理系统中使用的操作系统的示例可包括Microsoft Windows、Linux、UNIX、iOS和Android操作系统。
通信控制器712可连接到网络714(不是数据处理系统700的一部分),其可为本领域技术人员已知的任意公共或专用数据处理系统网络或网络组合,包括互联网。数据处理系统700可在网络714上与一个或多个其它数据处理系统如服务器734(也不是数据处理系统700的一部分)进行通信。然而,替代的数据处理系统可对应于作为分布式系统的一部分实现的多个数据处理系统,在该分布式系统中,与若干数据处理系统相关联的处理器可通过一个或多个网络连接进行通信,并且可共同执行被描述为由单个数据处理系统执行的任务。因此,应理解当指代数据处理系统时,此系统可在于分布式系统中组织的、经由网络彼此通信的多个数据处理系统上来实现。
此外,术语“控制器”是指控制至少一个操作的任意装置、系统或其一部分,无论此装置是否以硬件、固件、软件或其至少两个的某种组合来实现。应指出,与任意特定控制器相关联的功能可集中或无论是本地还是远程地分布。
此外,应理解数据处理系统可被实现为虚拟机架构或云环境中的虚拟机。例如,处理器702和相关联的部件可对应于在一个或多个服务器的虚拟机环境中执行的虚拟机。虚拟机架构的示例包括VMware ESCi、Microsoft Hyper-V、Xen和KVM。
本领域普通技术人员应理解,针对数据处理系统描绘的硬件可针对特定实施方案而改变。例如,该示例中的数据处理系统700可对应于计算机、工作站和/或服务器。然而,应理解,数据处理系统的替代实施例可配置有相应的或可替代的部件,如以移动电话、平板电脑、控制器板或可运行以处理数据和执行本文所描述的与本文讨论的数据处理系统、计算机、处理器和/或控制器的运行相关联的功能和特征的任意其它系统的形式。所提供的示例仅为了解释的目的而提供,并不意味着暗示对本公开的架构限制。
如本文所用,术语“部件”和“系统”旨在涵盖硬件、软件或硬件和软件的组合。因此,例如,系统或部件可为进程、在处理器上执行的进程或处理器。另外,部件或系统可在单个装置上本地化或分布在若干装置上。
而且,如在本文中所使用,处理器对应于经由硬件电路、软件和/或固件来配置以处理数据的任意电子装置。例如,本文描述的处理器可对应于一个或多个微处理器、CPU、FPGA、ASIC或任意其它集成电路(IC)或能够处理数据处理系统中的数据的其它类型电路(或组合),其可具有控制器板、计算机、服务器、移动电话和/或任意其它类型的电子装置的形式。
为了简单和清楚描述,本领域技术人员应认识到本文中未描绘或描述适用于本公开的所有数据处理系统的完整结构和运行。相反,仅描绘和描述了本公开所特有的数据处理系统或理解本公开所必需的数据处理系统。数据处理系统700的构建和运行的其余部分可符合本领域已知的各种当前实施方案和实践中的任一者。
尽管已经详细描述了本公开的示例性实施例,但是本领域技术人员应理解,在不脱离本公开的最广泛形式的精神和范围的情况下,可对本文公开的各种实施例进行各种改变、替代、变化和改进。
本申请中的描述不应视为意味着任意特定要素、步骤、行为或功能为必须包括在权利要求范围内的基本要素:要求保护的本主题的范围仅由授权的权利要求限定。此外,这些权利要求中的任一者都不是为了援引装置加功能的权利要求,除非在确切的词语“用于...的装置”后面跟有分词。
Claims (15)
1.一种用于绘制对象的系统(100),包括:
至少一个处理器(102),配置用于:
至少部分地基于表示通过工作空间(114)上的显示装置(108)显示的多个在前对象(112)的类型和大小的数据,来确定通过输入装置(110)的至少一个输入(116)对应于另一对象(122),该另一对象具有对应于至少一个在前对象的确定类型并且具有位于对应于所述至少一个在前对象的预定公差内的大小;以及
响应于此使得显示装置在所述工作空间上显示替换对象(126),代替具有对应于所述至少一个在前对象的大小和形状的所述另一对象。
2.根据权利要求1所述的系统,其中,所述至少一个处理器配置用于确定所述另一对象的类型,并且从包括不同类型的在前对象的更大的在前对象集合中选择具有与所述另一对象相同的类型的在前对象的候选集合(134),其中,所述至少一个处理器配置用于将所述另一对象的大小和形状与所述候选集合中的所述在前对象的相应大小和形状进行比较以确定所述至少一个在前对象。
3.根据权利要求2所述的系统,其中,在存储器(106)、存储装置(726)或其组合中的至少一者中存储表示所述多个在前对象的数据,并分别指定:所述多个在前对象的类型、大小、形状和位置以及各自被提供在所述工作空间上的相应顺序,其中,所述至少一个处理器配置用于修改存储的数据以包括所述替换对象的相应的类型、大小、形状和位置并指示所述替换对象为最近的在前对象。
4.根据权利要求3所述的系统,其中,至少部分基于以下中的至少一者:先前对象的预定最大数量;所述顺序;所述另一对象相对于所述在前对象的位置的位置;或其任意组合,所述至少一个处理器配置用于选择用以包括在所述候选集合中所述在前对象的数量,该数量少于具有与所述另一对象相同的类型的在前对象的总数。
5.根据权利要求2至4中任一项所述的系统,其中,所述至少一个处理器配置用于确定所述另一对象(404)和所述候选集合中的至少两个所述在前对象(402)位于具有相同的大小和形状并且被等距隔开和对齐的预定公差内,并且响应于此使所述替换对象(406)通过所述显示装置被显示,使得所述替换对象和所述至少两个在前对象具有相同的大小和形状并且被等距隔开和对齐。
6.根据权利要求2至5中任一项所述的系统,其中,所述至少一个处理器配置用于确定所述另一对象(504)和所述至少一个在前对象(502)位于具有相同大小和形状并且是彼此成镜像的预定公差内,并且响应于此使所述显示装置显示替换对象(506),代替具有与所述至少一个在前对象相对应的大小和形状并且是所述至少一个在前对象的镜像的另一对象。
7.根据权利要求1至6中任一项所述的系统,所述系统还包括存储器、应用软件组件和触摸屏,所述触摸屏由至少一个所述输入装置和所述显示装置组成,其中,所述应用软件组件由指令组成,在所述指令被包括在所述存储器中并且被所述至少一个处理器执行时,使所述至少一个处理器响应于通过用户触摸所述触摸屏接收到的输入而在所述触摸屏上显示所述另一对象、所述替换对象和所述多个在前对象,其中,所述应用软件组件对应于CAD软件应用,所述CAD软件应用用于至少部分基于通过所述触摸屏的输入来产生CAD绘图。
8.根据权利要求1至7中任一项所述的系统,其中,所述另一对象和所述在前对象的类型对应于几何图元类型或几何形状类型。
9.一种绘制对象的方法,包括:
a)通过运行至少一个处理器,至少部分地基于表示通过工作空间(114)上的显示装置(108)显示的多个在前对象(112)的类型和大小的数据,来确定通过至少一个输入装置(110)的至少一个输入(116)对应于另一对象(122),该另一对象具有对应于至少一个在前对象的确定类型并且具有位于对应于所述至少一个在前对象的预定公差内的大小;以及
b)通过响应于(a)而运行所述至少一个处理器,使所述显示装置在所述工作空间上显示替换对象(126),代替具有与所述至少一个在前对象相对应的大小和形状的所述另一对象。
10.根据权利要求9所述的方法,其中,(a)包括:
c)通过运行所述至少一个处理器,确定所述另一对象的类型,
d)通过运行所述至少一个处理器,从包括不同类型的在前对象的较大在前对象集合中,选择具有与所述另一对象相同的类型的在前对象的候选集合(134),
e)通过运行所述至少一个处理器,将所述另一对象的大小和形状与所述候选集合中的所述在前对象的相应的大小和形状进行比较,以确定所述至少一个在前对象。
11.根据权利要求10所述的方法,其中,表示所述多个在前对象的数据被存储在存储器(106)、存储装置(726)或其组合中的至少一者中,并分别指定:所述多个在前对象的类型、大小、形状和位置以及各自被提供在所述工作空间上的顺序,还包括:
f)通过运行所述至少一个处理器,修改存储的数据以包括所述替换对象的相应类型、大小、形状和位置并且指示所述替换对象为最近的在前对象。
12.根据权利要求11所述的方法,其中,(d)包括通过运行所述至少一个处理器,至少部分基于以下中的至少一者:先前对象的预定最大数量;所述顺序;所述另一对象相对于所述在前对象的位置的位置;或其任意组合,选择包括在所述候选集合中的所述在前对象的数量,该数量少于具有与所述另一对象相同的类型的所述在前对象的总数。
13.根据权利要求9至12中任一项所述的方法,其中,(a)包括:
g)通过运行所述至少一个处理器,确定所述另一对象(404)和所述候选集合中的至少两个所述在前对象(402)位于具有相同大小和形状并且被等距隔开和对齐的预定公差内,
其中,(b)包括:
h)响应于(g),使所述替换对象(406)通过所述显示装置被显示,使得所述替换对象和所述至少两个在前对象具有相同的大小和形状并且被等距隔开和对齐。
14.根据权利要求9至13中任一项所述的方法,其中,(a)包括:
g)通过运行所述至少一个处理器,确定所述另一对象(504)和所述至少一个在前对象(502)位于具有相同大小和形状并且彼此成镜像的预定公差内,
其中,(b)包括:
h)响应于(g),使所述显示装置显示所述替换对象(506),代替具有与所述至少一个在前对象相对应的大小和形状并且为所述至少一个在前对象的镜像的所述另一对象。
15.根据权利要求9至14中任一项所述的方法,其中,触摸屏包括所述至少一个输入装置和所述显示装置,其中,所述另一对象和所述在前对象的类型对应于几何图元类型或几何形状类型。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/707,759 US9916061B2 (en) | 2015-05-08 | 2015-05-08 | Drawing object inferring system and method |
US14/707,759 | 2015-05-08 | ||
PCT/US2016/031102 WO2016182875A1 (en) | 2015-05-08 | 2016-05-06 | Drawing object inferring system and method |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107636681A true CN107636681A (zh) | 2018-01-26 |
CN107636681B CN107636681B (zh) | 2021-01-29 |
Family
ID=56024412
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680026498.6A Active CN107636681B (zh) | 2015-05-08 | 2016-05-06 | 绘图对象推断系统和方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9916061B2 (zh) |
EP (1) | EP3295291B1 (zh) |
JP (1) | JP6542389B2 (zh) |
CN (1) | CN107636681B (zh) |
WO (1) | WO2016182875A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10970889B2 (en) * | 2019-03-28 | 2021-04-06 | Adobe Inc. | Stroke prediction for stylized drawings based on prior strokes and reference image |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020141643A1 (en) * | 2001-02-15 | 2002-10-03 | Denny Jaeger | Method for creating and operating control systems |
CN102663188A (zh) * | 2012-04-07 | 2012-09-12 | 中交第四航务工程勘察设计院有限公司 | 一种基于参数化草图的三维结构建模和分析方法 |
US20140304586A1 (en) * | 2013-04-04 | 2014-10-09 | Kabushiki Kaisha Toshiba | Electronic device and data processing method |
CN104424473A (zh) * | 2013-09-06 | 2015-03-18 | 北京三星通信技术研究有限公司 | 一种手绘草图识别和编辑的方法及装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6413682A (en) * | 1987-07-08 | 1989-01-18 | Toshiba Corp | Handwriting information processor |
JPH0991380A (ja) * | 1995-09-21 | 1997-04-04 | Canon Inc | 情報処理装置及び方法及び記憶媒体 |
US7668376B2 (en) * | 2004-06-30 | 2010-02-23 | National Instruments Corporation | Shape feature extraction and classification |
US7515752B2 (en) | 2004-08-27 | 2009-04-07 | Corel Corporation | Sketch recognition and enhancement |
US8490010B2 (en) * | 2005-12-14 | 2013-07-16 | Sap Ag | Selective display of graphical user interface elements |
JP5254171B2 (ja) * | 2008-11-12 | 2013-08-07 | 本田技研工業株式会社 | 描画支援装置、描画支援プログラム、描画支援方法 |
US9501694B2 (en) * | 2008-11-24 | 2016-11-22 | Qualcomm Incorporated | Pictorial methods for application selection and activation |
US20130055125A1 (en) * | 2011-08-22 | 2013-02-28 | Google Inc. | Method of creating a snap point in a computer-aided design system |
US9076261B2 (en) | 2012-09-27 | 2015-07-07 | Siemens Product Lifecycle Management Software Inc. | Virtual drafting tools |
US9317937B2 (en) * | 2013-12-30 | 2016-04-19 | Skribb.it Inc. | Recognition of user drawn graphical objects based on detected regions within a coordinate-plane |
US9779292B2 (en) | 2014-10-15 | 2017-10-03 | William Ng | System and method for interactive sketch recognition based on geometric contraints |
-
2015
- 2015-05-08 US US14/707,759 patent/US9916061B2/en active Active
-
2016
- 2016-05-06 CN CN201680026498.6A patent/CN107636681B/zh active Active
- 2016-05-06 WO PCT/US2016/031102 patent/WO2016182875A1/en active Application Filing
- 2016-05-06 JP JP2017558459A patent/JP6542389B2/ja active Active
- 2016-05-06 EP EP16723897.1A patent/EP3295291B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020141643A1 (en) * | 2001-02-15 | 2002-10-03 | Denny Jaeger | Method for creating and operating control systems |
CN102663188A (zh) * | 2012-04-07 | 2012-09-12 | 中交第四航务工程勘察设计院有限公司 | 一种基于参数化草图的三维结构建模和分析方法 |
US20140304586A1 (en) * | 2013-04-04 | 2014-10-09 | Kabushiki Kaisha Toshiba | Electronic device and data processing method |
CN104424473A (zh) * | 2013-09-06 | 2015-03-18 | 北京三星通信技术研究有限公司 | 一种手绘草图识别和编辑的方法及装置 |
Non-Patent Citations (1)
Title |
---|
HELOISE HWAWEN HSE: "Recognition and beautification of multi-stroke symbols in digital ink", 《COMPUTER AND GRAPHICS》 * |
Also Published As
Publication number | Publication date |
---|---|
WO2016182875A1 (en) | 2016-11-17 |
US9916061B2 (en) | 2018-03-13 |
CN107636681B (zh) | 2021-01-29 |
EP3295291A1 (en) | 2018-03-21 |
US20160328117A1 (en) | 2016-11-10 |
EP3295291B1 (en) | 2024-03-13 |
JP6542389B2 (ja) | 2019-07-10 |
JP2018520412A (ja) | 2018-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10599311B2 (en) | Layout constraint manipulation via user gesture recognition | |
US10948902B2 (en) | Method and system for workload balancing of a production line | |
US10809958B2 (en) | Setting up multiple displays via user input | |
EP3295303B1 (en) | Annotation creation system and method | |
WO2017172550A1 (en) | Ink in an electronic document | |
US10102310B2 (en) | Precise object manipulation system and method | |
CN107636681A (zh) | 绘图对象推断系统和方法 | |
US10318657B2 (en) | System and method for miter and notch identification for pattern sew line generation | |
US11232237B2 (en) | System and method for perception-based selection of features in a geometric model of a part | |
JP7480076B2 (ja) | コンテンツ作成システム及び方法 | |
US10780642B2 (en) | System and method for computing surfaces in a multi-layer part | |
US20160334971A1 (en) | Object Manipulation System and Method | |
CN104777898A (zh) | 信息处理方法、设备和产品 | |
US20180173385A1 (en) | System and Method for Incremental Diagram Node Expansion | |
US11029828B2 (en) | Object connection breaking system and method | |
McMullen et al. | Meaningful touch and gestural interactions with simulations interfacing via the dart programming language | |
CN115485734A (zh) | 绘制三维草图的接口方法及装置 | |
KR20150083378A (ko) | 멀티 터치 정보를 이용한 제스쳐 인식 장치 및 제스쳐 인식 방법 |
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 | ||
CB02 | Change of applicant information |
Address after: American Texas Applicant after: SIEMENS INDUSTRY SOFTWARE Ltd. Address before: American Texas Applicant before: SIEMENS PRODUCT LIFECYCLE MANAGEMENT SOFTWARE Inc. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |