绘图接口中的上下文墨迹标注的制作方法

文档序号:16367438发布日期:2018-12-22 08:30阅读:237来源:国知局
绘图接口中的上下文墨迹标注的制作方法

绘图程序用于各种各样的计算设备中。例如,移动设备典型地包括向用户提供地图、方向、兴趣点等的绘图和导航程序。绘图程序提供比纸质地图更强的便利性,因为地图程序可以从视点并且以用户选择的详细程度动态地渲染地图数据的视图。

此外,最近,平板电脑和其它触摸敏感的计算设备已被设计用于接收来自与触摸屏或其它输入设备交互以添加笔记或以其它方式标记媒体内容的触控笔的墨迹输入。例如,用户可以握住触控笔、用触控笔接触触摸屏,以及做出书写动作。软件程序(例如,操作系统的应用编程接口)可以捕获触控笔的动作,将触控笔的动作分组为笔划组,并且将结果存储为虚拟墨迹。当用户移动触控笔时,可以在触控笔下方的触摸屏上渲染虚拟墨迹,从而给出自然书写的外观和感觉。此外,可以在稍后的时间召回并显示所存储的墨迹。在其它示例中,可以使用手指或鼠标代替触控笔来书写虚拟墨迹。

虽然虚拟墨迹提供自然书写动作的外观、感觉和便利性,但大多数设计用于处理虚拟墨迹输入的应用程序提供静态书写表面,例如,电子记事本、白板等。动态地渲染数据视图的程序(例如,绘图程序)未配备为充分地处理虚拟墨迹。因此,希望在这样的绘图程序中使用虚拟墨迹来标注地图的用户可能会发现自己感到沮丧。



技术实现要素:

公开了用于在绘图接口中实现上下文墨迹标注的计算设备和方法。在一个方面中,该计算方法可以包括:接收地图视图请求以基于当前地图渲染上下文来渲染地图数据的地图视图;确定先前创建的虚拟墨迹标注与地图视图内的位置相关联,虚拟墨迹标注具有在虚拟墨迹标注的创建时捕获的先前地图渲染上下文;以及将当前地图渲染上下文与关联于虚拟墨迹标注的先前地图渲染上下文进行比较。该方法还可以包括基于比较的结果来控制虚拟墨迹标注在所渲染的地图视图中的显示。

提供本发明内容以便以简化的形式引入下面在具体实施方式中进一步描述的概念的选择。本发明内容并不旨在识别要求保护的主题的关键特征或必要特征,也不旨在用于限制要求保护的主题的范围。此外,要求保护的主题不局限于解决本公开内容的任何部分中指出的任何或所有缺点的实现方式。

附图说明

图1是根据本公开内容的一个实施例的计算系统的示意图,该计算系统包括多个计算设备,每个计算设备被配置为显示具有上下文墨迹标注功能的绘图接口;

图2是示出用于在绘图接口中提供上下文墨迹功能的方法的流程图;

图3是图2的流程图的继续;

图4是在图1的计算系统的显示器上显示的绘图接口的图示,以显示虚拟墨迹标注的第一缩放级别描绘了地理位置的地图视图;

图5是图4的绘图接口的图示,以未显示虚拟墨迹标注的第二缩放级别描绘了地理位置的地图视图;

图6是图1的计算系统的绘图接口的图示,描绘了取自俯瞰图的地图视图,其中显示了来自不同用户和不同计算设备的第一虚拟标注和第二虚拟标注;

图7是图6的绘图接口的图示,描绘了取自街道视图的地图视图,其中显示了来自不同用户和不同计算设备的第一虚拟标注和第二虚拟标注;

图8示出了对可以用作图1的计算系统中的计算设备或服务器中的任一个的示例性计算设备的描绘;

图9示出了对具有影响虚拟墨迹标注的呈现和扩缩的不同缩放级别范围的缩放级别量表的描绘;

图10是图1的计算系统的绘图接口的图示,描绘了取自俯瞰图的地图视图,其中显示了第一虚拟标注、第二虚拟标注和第三虚拟标注;以及

图11是图10的绘图接口的图示,描绘了取自街道视图的地图视图,其中提供了墨迹标注控制器以使得用户能够选择在地图视图中显示的虚拟墨迹标注。

具体实施方式

本文描述了用于生成具有情境化墨迹标注的交互式绘图接口的计算设备。计算设备主动地将虚拟墨迹标注链接到交互式绘图接口的地图渲染上下文。地图渲染上下文由上下文参数(例如,缩放级别、地图类型、中心地理位置、导航路线、导航标记、强调对象和强调对象集合等)来表征。在墨迹标注与地图渲染上下文之间建立的链接使得当调整地图渲染上下文中的上下文参数时,可以改变虚拟墨迹标注的图形状态。例如,虚拟墨迹标注可以依赖于交互式绘图接口的缩放级别的范围。当缩放级别移动到缩放级别范围之外时,可以暂停虚拟墨迹标注的呈现。因此,可以避免在不旨在显示虚拟墨迹标注的地图视图中无关呈现虚拟墨迹标注。例如,用户可能希望虚拟墨迹标注与城市或州相关联,而不是与整个国家或大陆相关联。因此,虚拟墨迹标注可以仅在绘图接口中的地理边界包含城市或州时显示,而在地理边界包含城市或州所在的国家或大陆时不显示。在又一示例中,墨迹标注可以链接到在交互式绘图接口中呈现的实体商店。当由于缩放级别调整而使实体商店的尺寸减小时,可以减小虚拟墨迹标注的不透明度和/或尺寸。以这种方式,用户可以利用与底层内容的上下文同步的墨迹标注来标记交互式绘图接口。因此,可以利用相关符号内容来增强绘图接口。

图1描绘了计算系统100,其包括经由网络110(例如,互联网、广域网、局域网等)进行电通信的第一计算设备102、服务器104以及第二计算设备108。

第一计算设备102包括易失性存储器112和处理器114。将认识到,本文中描述的方法可以实现为存储在易失性存储器112中的、可由处理器114执行的代码。

第一计算设备102还包括非易失性存储器116(例如,固态驱动器、磁盘驱动器、光盘驱动器等)。地图程序118可以存储在非易失性存储器116中。地图程序118被配置为基于地图渲染上下文124来渲染地图数据122的不同地图视图120,其中的每个地图渲染上下文124存储在地图程序118中。地图数据122的地图视图120可以在由地图程序118生成的交互式绘图接口126中呈现。

地图数据122可以包括诸如模板、背景、表面图案等之类的呈现数据,以及与诸如对象、区域、地形等之类的地理特征相关的数据。另外,地图渲染上下文124中的每个地图渲染上下文具有至少一个相关联的参数。因此,地图渲染上下文124包括多个参数128。参数可以是缩放级别、地图类型、中心地理位置、强调对象或对象集合、导航路线、导航标记等。

参数128中的每个参数具有值(例如,数值、字符串、类型等),并且因此参数128具有多个值130。例如,缩放级别的值可以是数值。在这样的示例中,缩放级别的值可以是具有多个离散缩放级别值的缩放比例内的值。例如,缩放级别值可以是1到20之间的任何整数。然而,在其它示例中,缩放级别可以具有非离散值。另外,地图类型的值可以是卫星地图、道路地图、地势地图、混合地图、街道视图地图等。此外,地理位置的值可以是位置标识符(例如,诸如纬度和经度之类的一组坐标)。在强调对象参数的情况下,强调对象的值可以是标识对象的字符串或与对象相关联的位置标识符。另外,导航路线的值可以是限定路线的路径的点的集合(例如,坐标)。在导航标记参数的情况下,导航标记的值可以是限定标记的位置的位置标识符(例如,坐标)。

地图数据122可以从服务器104发送到第一计算设备102,服务器104将对应的地图数据132存储在地图数据库134中。地图数据库134包含在服务器104内的非易失性存储器135中。例如,第一计算设备102上的地图程序118可以从服务器104请求地图数据。作为响应,服务器104向第一计算设备102发送地图数据。服务器104还可以包括存储在地图数据库134中的、第一计算设备102中的地图程序118的实例136。服务器104还包括易失性存储器138以及用于执行地图数据库134中的指令的处理器140。服务器104还可以包括存储在地图数据库134中的虚拟墨迹标注133。另外,虚拟墨迹标注133可以与存储在第一计算设备102中的虚拟墨迹标注148同步。

可以将第一计算设备102中的交互式绘图接口126发送到显示器142以供呈现。另外,用户可以经由输入设备144将虚拟墨迹标注和其它数据输入到第一计算设备102中。输入设备144可以是被配置为与触控笔或手指、鼠标、触控板等交互的触摸屏。此外,在一个示例中,显示器可以被配置为触摸敏感的显示器,并且响应于触摸或触控笔交互而生成虚拟墨迹标注输入。在这样的示例中,虚拟墨迹标注可以仅响应于与触摸屏的触控笔和触摸交互而生成,并且可以在触摸或触控笔笔划下方渲染以给出自然书写的外观和感觉。虽然显示器142、输入设备144和第一计算设备102在图1中被描绘为单独的组件,但显示器142和/或输入设备144可以集成到第一计算设备102中。

虚拟墨迹标注输入146从输入设备144发送到第一计算设备102中的地图程序118。在一些示例中,虚拟墨迹标注输入146可以在逐个用户基础上和/或在逐个设备基础上进行分配。以这种方式,可以识别来自不同用户的墨迹输入并将其用于协作签注场景中。在接收到输入之后,虚拟墨迹标注148存储在地图数据122中。另外,响应于接收到虚拟墨迹标注的输入,地图程序118被配置为将当前地图渲染上下文与虚拟墨迹标注148进行关联。

地图程序118被配置为比较不同地图渲染上下文。例如,可以将地图渲染上下文124的所选择的参数的值彼此进行比较,以确定一个参数的值是否与另一参数的值在范围内匹配。

当所比较的参数是缩放级别时,范围可以是与第一缩放级别值或第二缩放级别值的数值偏差,例如,±2。在这样的示例中,第一缩放级别可以具有值3并且第二缩放级别可以具有值5。因此,缩放级别值3与缩放级别值5在范围(即,±2)内匹配。然而,具有值6的缩放级别与具有值3的缩放级别在范围(即,±2)内不匹配。在另一示例中,比较参数可以是地图类型。在该示例中,匹配范围可以是地图类型值的集合,例如,包括“卫星地图”和“地势地图”的集合。因此,当第一参数的值是“卫星地图”并且第二参数的值是作为一种类型的卫星地图的“地势地图”时,可以发现这些值在范围内匹配。然而,当第一参数的值是“卫星地图”并且第二参数的值是“街道视图地图”时,可以确定这些值在范围内不匹配,因为街道视图地图不是一种类型的卫星地图。简单而言,对于非数值参数值,可以通过确定给定对象是否与集合中的多个目标对象中的一个目标对象匹配或者是否是与目标对象相似类型的对象来执行范围内的匹配。

在另外的示例中,比较参数可以是中心地理位置。在一个特定示例中,匹配范围可以是围绕第一中心地理位置的预先确定的半径。当第二中心地理位置位于由该半径限定的圆内时,中心地理位置匹配。然而,如果第二中心地理位置不位于由该半径限定的圆内,则中心地理位置不匹配。当然,可以使用除圆之外的其它形状,并且实际上,可以使用其它技术来确定两个地理位置是否在范围内匹配。

在另一示例中,地图程序118可以被配置为比较地图渲染上下文的所选择的参数值以确定这些值是否在嵌套的范围内匹配。例如,如果值在第一范围内匹配,则可以再次比较这些值以确定其是否在更窄的范围内匹配。下面关于图9讨论这种嵌套范围的一个详细示例。

地图程序118可以被配置为基于对不同地图渲染上下文的比较并且具体地基于地图渲染上下文的参数值的匹配来控制虚拟墨迹标注的显示。控制虚拟墨迹标注的显示可以包括显示虚拟墨迹标注或者避免显示虚拟墨迹标注。例如,当不同地图渲染上下文的参数的值匹配时,可以在基于不同地图渲染上下文渲染的地图视图中显示虚拟墨迹标注。然而,当不同地图渲染上下文的参数的值不匹配时,可以不在地图视图中的一些地图视图中显示虚拟墨迹标注。另外,控制虚拟墨迹标注的显示可以包括基于前述比较来调整不同地图视图中的虚拟墨迹标注148的图形状态(例如,可见性、尺寸、取向、不透明度等)。例如,可以基于匹配的参数值在不同的地图视图中调整虚拟墨迹标注的不透明度、尺寸和/或取向。此外,当地图程序118确定所选择的值是否在嵌套范围内匹配时,如果值在第一范围内匹配但在包含于第一范围内的第二范围内不匹配,则程序可以调整虚拟墨迹标注的图形状态(例如,尺寸、不透明度和/或取向),如下面关于图9详细讨论的。

第一计算设备102还被配置为向第二计算设备108发送虚拟墨迹标注148。第二计算设备108包括易失性存储器150、处理器152以及非易失性存储器154。第二计算设备108还具有相关联的显示器170和输入设备172,显示器170和输入设备172具有类似于与第一计算设备102相关联的显示器142和输入设备144的功能。

在第二计算设备108中,第一计算设备102中的地图程序118的实例156可以存储在非易失性存储器154中。第二计算设备108中的地图程序的实例156可以具有与第一计算设备102中的地图程序118类似的功能。因此,第二计算设备108中的地图程序的实例156包括交互式绘图接口160中的地图视图158。地图视图158是基于地图渲染上下文164渲染的地图数据162的视图,地图渲染上下文164包括具有各种值168的参数166。地图视图158还可以包括从第一计算设备102发送的虚拟墨迹标注148以及本地生成的虚拟墨迹标注。以这种方式,可以在第一计算设备102与第二计算设备108之间共享虚拟墨迹标注。例如,用户可以协作地签注公共交互式绘图接口(例如,与即将到来的度假、商务旅行、团体自行车骑行或跑步等相关的地图),以扩展交互式绘图接口协作能力。

图2-图3示出了用于计算系统的操作的方法200。方法200可以由上面关于图1讨论的计算系统来执行,或者可以由另一合适的计算系统来实现。方法步骤在不同阶段中实现。特别地,步骤201-236在其中用户利用虚拟墨迹标注来标记交互式绘图接口的地图标注阶段期间实现;并且步骤237-246在随后的地图查看阶段期间实现,在地图查看阶段期间相同或不同的用户查看地图数据的地图视图,并且基于在虚拟墨迹标注被创建时存在的地图渲染上下文来确定是否显示虚拟标注以及如何显示虚拟标注。

在201处,该方法包括接收第一地图视图请求以基于第一地图渲染上下文来渲染所存储的地图数据的第一地图视图。可以响应于用户与地图程序的交互而生成地图视图请求。例如,用户可以在地图程序中输入位置、在导航模块中输入起点和终点、选择预先确定的地图视图等。在202处,该方法包括在第一计算设备处从服务器请求地图数据。接下来,在204处,该方法包括在服务器处接收地图数据请求。接下来,在206处,该方法包括在服务器处,响应于接收到地图数据请求而向第一计算设备发送所请求的地图数据。将认识到,可以在发送所请求的地图数据之前,在服务器中的地图数据库中取回所请求的地图数据。

在208处,该方法包括在第一计算设备处从服务器接收所请求的地图数据。接下来,在210处,该方法包括基于第一地图渲染上下文来渲染所存储的地图数据的第一地图视图。如上文所讨论的,第一地图渲染上下文中的参数可以指定根据其来渲染地图视图的缩放级别、中心地理位置、地图类型、强调对象或强调对象的集合、导航路线或导航标记。

接下来,在212处,该方法包括在显示器上的交互式绘图接口中显示第一地图视图。接下来,在214处,该方法包括接收交互式绘图接口的所渲染的地图视图上的、虚拟墨迹标注的输入。可以响应于与触摸屏、触摸板等的触控笔或触摸交互而生成虚拟墨迹标注的输入。然而,其它合适的输入设备(例如,鼠标、触控板等)可以用于墨迹输入。接下来,在216处,该方法包括将第一地图渲染上下文与虚拟墨迹标注进行关联。接下来,在218处,该方法包括将虚拟墨迹标注和第一地图渲染上下文的至少一部分存储在所存储的地图数据中。

接下来,在220处,该方法包括在第一计算设备处向服务器发送虚拟墨迹标注和第一地图上下文。在222处,该方法包括在服务器处接收虚拟墨迹标注。在224处,该方法包括在服务器处将虚拟墨迹标注和第一地图渲染上下文存储在地图数据库中。在另一示例中,虚拟墨迹标注可以直接发送到服务器而不是本地存储在第一计算设备上。

转到图3,步骤226至236示出了用于使得第二参与者能够添加第二虚拟墨迹标注的可选过程,这取决于上下文可以与在图2中添加的虚拟墨迹标注(在下文中在一些实例中称为“第一”虚拟墨迹标注)并行地在第一地图视图中显示。因此,在226处,该方法可以包括在第一计算设备处向第二计算设备发送虚拟墨迹标注。这可以例如通过第一计算设备的用户经由例如电子邮件、文本或社交网络消息向第二用户共享到包含虚拟墨迹标注的第一地图视图的链接(即,url)来实现。该链接可以包含地图服务器的服务器地址和第一地图视图的标识符,服务器可以通过该标识符来识别和服务所请求的地图视图。通过选择链接,第二计算设备处的用户可以使具有第一虚拟墨迹标注的第一地图视图被下载。以这种方式,在228处,该方法可以包括在第二计算设备处接收虚拟墨迹标注。此外,在230处,该方法可以包括:在第二显示器上的交互式绘图接口中渲染具有第一虚拟墨迹标注的第一地图视图。

在232处,该方法可以包括在第二计算设备处,在交互式绘图接口中接收第二虚拟墨迹标注的输入。虽然取决于用户的偏好,该第二虚拟墨迹标注可以被添加到与第一地图视图不同的地图视图(例如,从不同的视点的或处于不同缩放级别的不同地图视图),但出于解释的目的,将该方法描述为将第二虚拟墨迹标注添加到与第一虚拟墨迹标注相同的第一地图视图。在234处,该方法可以包括向第一计算设备发送第二虚拟墨迹标注。这可以与步骤226类似地完成,例如,通过在服务器处经由消息(例如,从第二计算设备处的用户向第一计算设备处的用户发送的电子邮件、文本或社交网络消息)向第一地图视图发送链接。第一计算设备处的用户可以点击链接以显示包括第一虚拟墨迹标注和第二虚拟墨迹标注的第一地图视图(或视情况而定显示不同的地图视图)。以这种方式,在236处,该方法可以包括从第二计算设备接收第二虚拟墨迹标注,以及在第一地图视图中与第一虚拟墨迹标注一起渲染并且显示第二虚拟墨迹标注。如果期望,则第一计算设备处的用户可以重复该过程并且将第三虚拟墨迹标注添加到第一地图视图,并且将其再次与第二计算设备的用户共享。以这种方式,步骤228-236使得用户能够跨计算设备共享墨迹标注,促进协作签注场景。将认识到,第一虚拟墨迹标注和第二虚拟墨迹标注二者都将基于其共享地图渲染上下文(即,第一地图渲染上下文)来显示,因为第一虚拟墨迹标注和第二虚拟墨迹标注二者是在相同的地图视图中创作的,并且因此在示例中在步骤236处,在第一地图视图中显示第一虚拟墨迹标注和第二虚拟墨迹标注二者。在其它示例中,可以在具有不同地图渲染上下文的不同地图视图中输入第二虚拟墨迹标注,并且因此可以基于用于显示下文中更详细描述的虚拟墨迹标注的上下文控制,各自根据其自己的上下文来显示第一虚拟墨迹标注和第二虚拟墨迹标注。

步骤237-246示出了地图查看阶段,在该地图查看阶段中查看与第一地图视图不同的第二地图视图,并且在该地图查看阶段中,基于其中在上面描述的地图标注阶段中创作虚拟墨迹标注的地图渲染上下文,做出是否显示虚拟墨迹标注(例如,上面讨论的第一虚拟墨迹标注或第二虚拟墨迹标注)以及如何显示虚拟墨迹标注的决定。虽然为了简洁起见在步骤237-246中仅讨论一个虚拟墨迹标注,但将认识到,可以针对地图数据中存在的虚拟墨迹标注中的每个虚拟墨迹标注独立地执行这些步骤中描述的过程。此外,虽然步骤237-246被描述为在第一计算设备处发生,但是这些步骤可以在任何计算设备(例如,第二计算设备或第三用户使用的第三计算设备)处发生。

在237处,该方法包括接收第二地图视图请求以基于第二地图渲染上下文来渲染第二地图视图。可以响应于与地图程序(例如,交互式绘图接口)的用户交互而生成渲染第二地图视图的请求。在一个场景中,可以通过导航离开第一地图视图来生成该第二地图视图。例如,用户可以改变交互式绘图接口的缩放级别(例如,放大/缩小)、改变交互式绘图接口的中心位置(即,交互式绘图接口中的地图显示居中的地理位置)、改变交互式绘图接口中显示的地图类型等。在另一场景中,可以不是通过导航离开第一地图视图而是以另一种方式来生成第二地图视图,例如,将新地图搜索或导航命令(例如,关键字搜索、地理坐标搜索、平移/缩放命令等)输入交互式绘图接口中。

在238处,该方法包括确定虚拟墨迹标注是否与第二地图视图内的位置相关联。这可以通过以下步骤来实现:首先确定第二地图视图居中的中心地理位置(或者通过其确定地图视图位置的其它参考点),然后通过参考缩放级别、地图显示窗口尺寸等来确定第二地图视图的周界的地理范围,并且然后确定虚拟墨迹标注的位置是否在地图周界内。在239处,该方法包括将第二地图渲染上下文与第一地图渲染上下文进行比较,这将在下面进一步详细讨论。在该比较之后,在240处,该方法包括基于对第一上下文和第二上下文的比较来控制虚拟墨迹标注的显示。步骤239和240可以包括许多辅助步骤,例如,步骤241-244。具体地,步骤239可以包括步骤241,并且步骤240可以包括步骤242-244。

在241处,作为在239处完成对地图渲染上下文的比较的一种可能方式,该方法可以包括确定第二地图渲染上下文的参数的值是否与第一地图渲染上下文的对应参数的值在范围内匹配。如果值在范围内,则可以触发虚拟墨迹标注的显示;并且如果不发生匹配,则可以避免显示,如下面描述的。在一些情况下,系统可以被配置为向用户提供对在附近但是在所显示的地图的视域之外的虚拟墨迹标注的指示。附近的虚拟墨迹标注被认为是包括在比限定所显示的视域的边界的可视范围略大的扩展范围内。因此,在一个示例中,确定值是否在范围内匹配可以包括确定值是否在可视范围和扩展范围内匹配。在这种情况下,如这里描述的匹配扩展范围内的值使得虚拟墨迹标注被标记为供显示的候选(即,可显示的),使得当调整视域以包括虚拟墨迹标注时对其进行显示。在附近但不在地图的视域内的可显示候选(即,在扩展范围内但不在可视范围内)如图11中所示在1118处指示,下文更详细地描述。

在一个示例中,步骤241中的第一地图渲染上下文和第二地图渲染上下文中的参数可以是从下列各项构成的组中选择的对:第一中心地理位置和第二中心地理位置、第一地图类型和第二地图类型、第一强调对象集合和第二强调对象集合、第一导航路线和第二导航路线以及第一导航标记和第二导航标记。另外,将认识到,参数可以具有数值或非数值。如上文所讨论的,在数值的情况下,该范围可以是与第一渲染上下文的参数的目标值的预先确定的准许偏差,例如,±2、±5、±10等。缩放级别是可以利用这样的数值表达的参数的一个示例。然而,在非数值(例如,字符串标识符)的情况下,范围可以是预先确定的字符串标识符的集合,例如,作为一个特定示例,包括来自较大的可能字符串值的集合中的字符串“卫星地图”和“地势地图”的集合。在这样的示例中,如果字符串标识符包括在预先确定的字符串标识符的集合中,则字符串标识符匹配。

如果第二地图渲染上下文的参数的值与第一地图渲染上下文的参数的值在范围内不匹配(在241处为否),则该方法前进到242。在242处,该方法包括避免在第二地图视图中渲染虚拟墨迹标注,因此将在没有虚拟墨迹标注的情况下显示第二地图视图。以这种方式,仅当在地图标注阶段中虚拟墨迹标注被创建的、第一视图的第一地图渲染上下文匹配地图查看阶段期间第二视图的后续第二地图渲染上下文时,才呈现虚拟墨迹标注。因此,仅在交互式绘图接口中显示相关的墨迹标注,并且避免非上下文虚拟墨迹标注的无关呈现。因此,仅与特定缩放级别或范围或级别相关的虚拟墨迹标注以其它缩放级别等不会示出,这使得地图视图整齐并且改进查看体验。

然而,如果第二地图渲染上下文的参数的值与第一地图渲染上下文的参数的值在范围内匹配(在241处为是),则该方法前进到243。在243处,该方法包括在第二地图视图中渲染虚拟墨迹标注,因此将在具有虚拟墨迹标注的情况下显示第二地图视图。接下来,在244处,该方法包括基于对第一地图渲染上下文和第二地图渲染上下文的比较来设置虚拟墨迹标注的图形状态。作为一些示例,图形状态可以是不透明度、尺寸和/或角取向。当图形状态是不透明度或尺寸时,可以基于参数值的匹配来增加或减小不透明度或尺寸。例如,不透明度和尺寸可以在较窄的预先确定的范围内以全比例渲染,并且对于在较窄范围以上的缩放值可以在较宽显示范围的区域内变得透明和更小,以及对于在放大时在范围以下的较宽范围的区域中的缩放值变得更加透明和更大。以这种方式,可以降低虚拟墨迹标注阻挡底层内容的可能性。图9中示出了这种配置的一个特定示例,现在将在返回图3之前对图9进行描述。

图9描绘了示例性缩放级别量表900,其具有可以用于渲染第一地图视图和第二地图视图的第一地图渲染上下文和第二地图渲染上下文中的示例缩放级别值。缩放级别量表900示意性地表示一种可能的缩放控制算法,其可以用于在240处实现对虚拟墨迹的显示的控制。在量表900上指示若干缩放级别范围(即,第一非显示范围和第二非显示范围、显示范围、第一扩缩显示范围和第二扩缩显示范围以及全比例显示范围)。这些范围影响在第一地图视图和第二地图视图中呈现的虚拟墨迹标注的呈现(即,显示/非显示)和扩缩(即,尺寸保持或增大/减小,以及不透明度扩缩)二者。

可以基于第一地图渲染上下文和第二地图渲染上下文的缩放级别值之间的期望方差来建立范围,该方差与虚拟墨迹标注的不同图形状态相关联。如所示出的,第一扩缩显示范围、全比例显示范围和第二扩缩显示范围包含在更大的显示范围内。因此,较宽范围可以影响虚拟墨迹标注的呈现状态,而较宽范围内的较窄范围可以影响虚拟墨迹标注的尺寸扩缩和不透明度扩缩(即,淡入和淡出)。以这种方式的嵌套范围使得虚拟墨迹标注能够在更大的一组地图渲染上下文中显示,而其它图形状态(例如,扩缩、不透明度等)可以基于更细粒度的范围针对更小的一组地图渲染上下文进行微调。

在所示的缩放级别量表900中,第一地图渲染上下文具有用于渲染第一地图视图的示例缩放级别10。另外,第二地图渲染上下文具有用于渲染第二地图视图的示例缩放级别12。第一地图渲染上下文和第二地图渲染上下文中的缩放级别的差可以通过用户对地图参数进行的调整或以编程方式启动而引起。如所示出的,与第二视图的第二地图渲染上下文相对应的缩放级别12位于具有上限13和下限7的显示范围内。因此,在所描绘的示例中,可以在第二地图视图中显示虚拟墨迹标注。然而,如果第二地图渲染上下文具有在第一非显示范围或第二非显示范围内的缩放级别值,则第二地图渲染上下文将阻止虚拟墨迹标注在第二地图视图中被渲染和显示。

另外,在图9中,与第二视图的第二地图渲染上下文相对应的缩放级别12包含在第二扩缩显示范围(即,12-13)内。因此,可以在具有扩缩尺寸和扩缩不透明度的第二视图中渲染虚拟墨迹标注。例如,由于缩放级别增加,因此虚拟墨迹标注的尺寸的比例可以对应地增加,而不透明度的比例可以在第二扩缩显示范围中减小。然而,当第二地图渲染上下文的缩放级别值减小到在第二扩缩显示范围内时,可以减小虚拟墨迹标注的尺寸的比例和不透明度的比例二者。

如果第二地图渲染上下文具有全比例显示范围(即,9-11)内的缩放级别值,则第二地图渲染上下文将准许在第二视图中对虚拟墨迹标注的全比例渲染。以这种方式,缩放级别的小比例调整可能不会影响虚拟墨迹标注扩缩。对缩放范围和所选择的缩放级别值的限制在本质上是示例性的,并且已经设想了许多合适的缩放范围和所选择的缩放级别值。

返回图3并且通常在图9中示出的示例性范围量表基础上建立,在步骤239处,将第二地图渲染上下文与第一地图渲染上下文进行比较可以包括在步骤241之后对参数值进行比较的其它步骤。该步骤可以包括确定第二地图渲染上下文中的参数的值是否在第二范围内,该第二范围比第一地图渲染上下文中的对应参数的值的第一范围窄并且被包含在第一范围内。例如,第一范围可以是显示范围,并且第二范围可以是全比例显示范围,如图9所示。然而,已经设想了多种范围组合,例如,显示范围和全不透明度范围,显示范围和初始取向范围等。

如果第二地图渲染上下文中的参数的值在第二范围内,则该方法包括:将虚拟墨迹标注的图形状态设置为根据比例因子在尺寸和/或不透明度方面被扩缩。可以基于第二地图渲染上下文中的参数与第一地图渲染上下文中的对应参数之间的差来确定比例因子。图形状态的扩缩可以直接与参数值的调整相对应。因此,参数值的增加/减小可以促进虚拟墨迹标注的图形方面(例如,不透明度、尺寸)的增加/减小。然而,如果第二地图渲染上下文中的参数的值不在第二范围内,则该方法可前进到步骤243。

在246处,该方法包括:基于第一地图渲染上下文和第二地图渲染上下文比较的结果,在具有虚拟墨迹标注的情况下或不具有虚拟墨迹标注的情况下渲染并且显示第二地图视图,该虚拟墨迹标注具有图形状态。例如,如上面讨论的,当第一地图渲染上下文和第二地图渲染上下文中的参数的值在范围内匹配时,可以在第二地图视图中显示虚拟墨迹标注。另一方面,当第一地图渲染上下文和第二地图渲染上下文中的参数的值在范围内不匹配时,可以不在第二地图视图中显示虚拟墨迹标注。将认识到,尽管上文的描述指代从地图标注阶段关联的“第一”地图渲染上下文,以及在地图查看阶段中的“第二”地图渲染上下文,但是如果上面的实施例是从地图查看阶段的视点来查看的,则可以使用不同的命名法来指代这些渲染上下文。例如,在地图查看阶段,可以接收地图视图请求(类似于第二地图视图请求)以基于当前地图渲染上下文(类似于第二地图渲染上下文)来渲染地图数据的地图视图(类似于第二地图视图)。此外,可以确定先前创建的虚拟墨迹标注(类似于第一虚拟墨迹标注)与地图视图内的位置相关联,该虚拟墨迹标注具有在虚拟墨迹标注的创建时捕获的先前地图渲染上下文(类似于第一地图渲染上下文)。可以将当前地图渲染上下文与关联于虚拟墨迹标注的先前地图渲染上下文进行比较,并且基于比较的结果,可以控制虚拟墨迹标注在所渲染的地图视图中的显示。

图4描绘了第一计算设备102,其中显示器142在生成虚拟墨迹标注402的地图标注阶段期间在交互式绘图接口126中呈现地图数据的地图视图400,并且图5描绘了计算设备102和显示器142,显示器142在计算系统避免显示虚拟墨迹标注的地图查看阶段期间在交互式绘图接口126中呈现地图数据的地图视图500。如上文所讨论的,地图数据可以包括与不同地理特征(例如,街道、商店、餐馆、地形等)、背景、边界、模板等相关的数据。

在图4中,基于第一地图渲染上下文来渲染地图视图400。在图4中,第一地图渲染上下文包括限定第一可视地理区域边界的数字缩放级别参数。还示出了地图视图400中的虚拟墨迹标注402。基于由用户408执行的触摸输入404和触控笔输入406来生成虚拟墨迹标注402。另外,虚拟墨迹标注402与用于渲染地图视图400的第一地图渲染上下文相关联。还在地图视图400中提供缩放控制器410。缩放控制器410使得用户能够触发地图缩放操作(即,放大/缩小)。在所描绘的示例中,如图5所示,用户可以与缩放控制器410交互以缩小到地图视图500的缩放级别。

图5示出了地图查看阶段期间的地图视图500,地图查看阶段期间的地图视图是基于不同于与图4相关联的第一地图渲染上下文的第二地图渲染上下文来渲染的。具体地,在图5中,已经减小了地图视图500的缩放级别的值。因此,地图视图500被缩小到包含城市中的高速公路的可视边界,而不是包含图4中所示的单个街道交叉路口的地图边界。如先前所讨论的,响应于与缩放控制器410的用户交互,可以缩小地图视图。计算设备102确定用于渲染图4中所示的地图视图400的第一地图渲染上下文的缩放级别值是否与用于渲染图5中所示的地图视图500的第二地图渲染上下文的缩放级别值在范围内匹配。匹配范围是数值的范围。在该示例中,范围被设置为与第一缩放级别值8距离±2,并且第二地图渲染上下文的缩放级别值是3,并且因此缩放级别值在该范围内不匹配。因此,图4中示出的虚拟墨迹标注402不在图5所示的地图视图500中渲染或显示。以这种方式,可以避免与交互式绘图接口的当前上下文无关的虚拟墨迹标注的无关呈现。在一些替代示例中,可以基于对不同地图渲染上下文中的参数的比较来改变虚拟墨迹标注402的图形状态(例如,尺寸、不透明度和/或取向)。

图6-图7示出了基于不同地图渲染上下文来渲染和显示的、显示器142上的不同地图视图的序列。图6-图7中的不同地图视图包括相似的强调对象。还在图6-图7中示出了第一计算设备102。

图6示出了基于强调对象602渲染的地图数据的第一地图视图600。在该示例中,强调对象是停车位。强调对象的值可以是位置标识符(例如,地理坐标)。在第一地图视图600中呈现的第一虚拟墨迹标注601与强调对象602相关联。具体地,第一虚拟墨迹标注601建议用户停放在所指示的停车场中。还在图6中示出了第二虚拟墨迹标注604。将认识到,第二虚拟墨迹标注604可以从第二计算设备108发送到显示器142,如图1所示。第二墨迹标注604在第一虚拟墨迹标注601中提供的信息的基础上建立,并且指示停车场在夜间通常是满的。在显示器142上渲染和显示虚拟墨迹标注604使得能够进行协作签注,其中多个用户可以共享笔记,从而增强地图程序的能力。因此,地图程序可以具有更大的适用性。包括用于调整地图的缩放级别、地图类型和地图视图600的其它方面的按钮的地图控制器610也在显示器上呈现。

图7示出了基于第二地图渲染上下文渲染的地图数据的第二地图视图700。可以基于用户与地图控制器610的交互来确定第二地图渲染上下文中的参数。然而,通过其它输入设备或编程技术进行的参数调整也可以用于确定第二地图渲染上下文的参数。第二地图渲染上下文包括在不同地图视图中呈现的强调对象602。然而,由于强调对象602在第一地图视图600和第二地图视图700二者中呈现,因此强调对象的值在范围内匹配。因此,第一虚拟墨迹标注601在没有任何视觉外观的改变的情况下在第二地图视图700中呈现。另外,还在图7中示出了第二虚拟墨迹标注604。以这种方式,可以在每个地图视图中对应地呈现跨多个地图视图相关的墨迹标注。

图10-图11示出了显示器142上的具有用户选择的虚拟墨迹标注的不同地图视图的另一序列,这些不同地图视图是基于不同的地图渲染上下文来渲染和显示的。还在图10-图11中示出了第一计算设备102。除了如下文中详细解释的内容之外,图10-图11中所示的地图视图与图6-图7中所示的地图视图类似。

图10示出了基于强调对象1002渲染的地图数据的第一地图视图1000,其被示为停车场。在第一地图视图1000中呈现第一虚拟墨迹标注1004、第二虚拟墨迹标注1006以及第三虚拟墨迹标注1008。标注1004、1006和1008中的每个标注与强调对象1002相关联。将认识到,在一个实例中,第一虚拟墨迹标注、第二虚拟墨迹标注和第三虚拟墨迹标注可以由不同的用户、计算设备等在第一地图视图中创作。然而,在另一示例中,每个标注可以由计算设备102的单个用户创作。

图11示出了基于第二地图渲染上下文渲染的地图数据的第二地图视图1100,该第二地图渲染上下文包括与用于渲染图10中的第一地图视图1000的第一地图渲染上下文不同的参数。可以以编程方式来调整参数和/或由用户来调整参数。在第二地图视图1100中,提供了墨迹标注控制器1102。墨迹标注控制器1102使得用户能够查看在第二地图视图1100内或其附近呈现的虚拟墨迹标注的列表。墨迹标注控制器1102包括在先前的地图视图(例如,图10中所示的第一地图视图1000)中创建和显示的虚拟墨迹标注的预览1104、1106和1108。具体地,预览1104、1106和1108包括对图10中所示的第一虚拟墨迹标注1004、第二虚拟墨迹标注1006以及第三虚拟墨迹标注1008的相应描绘。与虚拟墨迹标注相对应的预览1104、1106和1108可以仅在当前地图渲染上下文的参数的值与其中虚拟墨迹标注被创建的先前地图渲染上下文的参数的值在范围内匹配时在墨迹标注控制器中呈现。具体地,在所描绘的示例中,确定与第一地图视图1000中的虚拟墨迹标注1004和1006相关联的参数的值各自在第二地图视图1100中的参数的对应值的可视范围内匹配。因此,选中与第一虚拟墨迹标注1004和第二虚拟墨迹标注1006相对应的指示符1110和1112。选中的指示符表示第一虚拟墨迹标注1004和第二虚拟墨迹标注1006在第二地图视图1100中呈现。将认识到,用户可以根据其偏好来选中和取消选中指示符1104和1106,以控制虚拟墨迹标注1004和1006在第二地图视图1100中的呈现(即,启用/禁用渲染和显示)。

另一方面,确定与图10中所示的第三虚拟墨迹标注1006相关联的参数的值在第二地图视图1100中的参数的值的扩展范围内匹配。扩展范围包含图11中的第二地图视图1100的所显示的视域之外的参数。因此,与视域相对应的扩展范围略大于第二地图视图1100。响应于确定地图参数的值在扩展范围内匹配,在第二地图视图1100中呈现边界调整工具1118。另外,边界调整工具1118的预览1116在指示符1114中呈现。边界调整工具1118指示相邻的第三虚拟墨迹标注1006的方向。特别地,边界调整工具1118包括多个箭头。突出显示或以其它方式区分指向第三虚拟墨迹标注的方向的箭头。因此,提供了向用户通知附近的虚拟墨迹标注的位置的标记以及促使用户调整可视边界以包含相邻虚拟墨迹标注的控制。以这种方式,可以向用户通知与当前地图的视域邻近的相关虚拟墨迹标注。

墨迹标注控制器1102包括指示符1110-1114。如所描绘的,选中与第一虚拟墨迹标注1004和第二虚拟墨迹标注1006相对应的指示符1110和1112。选中的指示符表示第一虚拟墨迹标注1004和第二虚拟墨迹标注1006在第二地图视图1100中呈现。将认识到,用户可以根据其偏好来选中和取消选中指示符1104和1106,以控制虚拟墨迹标注1004和1006在第二地图视图1100中的呈现(即,启用/禁用渲染和显示)。边界调整工具边界调整工具边界调整工具边界调整工具。

下文提供了若干用例示例以进一步描述上文关于图1-图7、图9和图10-图11描述的计算系统和方法的能力。在一个用例示例中,响应于缩放操作(即,放大和缩小),可以增加和减小在地图视图中呈现的虚拟墨迹标注的不透明度和/或尺寸。例如,当缩小地图时,可以减小虚拟墨迹标注的不透明度和/或尺寸。另一方面,当放大地图时,可以增加虚拟墨迹标注的尺寸和/或不透明度。以这种方式,可以降低虚拟墨迹标注阻挡相关地图内容的可能性。

在另一用例示例中,当地图类型改变时,可以旋转地图中的虚拟墨迹标注的取向。例如,地图可以从卫星视图改变为街道视图。在这样的示例中,虚拟墨迹标注可以在一个方向上旋转,使得其不被街道视图中的任何对象遮挡并且可以由用户容易地查看。

在另一用例示例中,虚拟墨迹标注可以仅在导航标记被突出显示时在地图中呈现。例如,地图程序可以提供一系列顺序导航方向。当具有相关联的虚拟墨迹标注的当前方向被突出显示时,可以允许虚拟墨迹标注的呈现。然而,当后续导航方向被突出显示时,可以暂停虚拟墨迹标注的呈现。

在另一用例示例中,虚拟墨迹标注可以对应于所选择城市的地图中的商店(例如,餐馆、服装店、超市等)。当商店不再显示在地图中时,将暂停虚拟墨迹标注的呈现。因为地图视图缩小超出阈值缩放级别、地图以另一城市为中心、地图视图改变为地貌地图类型等,商店可能会从地图中消失。以这种方式,墨迹标注可视性可以直接依赖于商店的可视性。

在一些实施例中,本文中描述的方法和过程可以依赖于一个或多个计算设备构成的计算系统。特别地,这些方法和过程可以实现为计算机应用程序或服务、应用编程接口(api)、库和/或其它计算机程序产品。

图8示意性地示出了可以实现上面描述的方法和过程中的一个或多个方法和过程的计算系统800的非限制性实施例。以简化的形式示出了计算系统800。计算系统800可以采用以下形式:一个或多个个人计算机、服务器计算机、平板计算机、家庭娱乐计算机、网络计算设备、游戏设备、移动计算设备、移动通信设备(例如,智能电话)和/或其它计算设备。

计算系统800包括逻辑子系统802和数据保存子系统804。计算系统800可以可选地包括显示子系统806、输入子系统808、通信子系统810和/或图8中未示出的其它组件。

逻辑子系统802包括被配置为执行指令的一个或多个物理设备。例如,逻辑子系统可以被配置为执行作为一个或多个应用、服务、程序、例程、库、对象、组件、数据结构或其它逻辑构造的部分的指令。可以实现这样的指令以执行任务、实现数据类型、变换一个或多个组件的状态、实现技术效果或以其它方式达成期望的结果。

逻辑子系统可以包括被配置为执行软件指令的一个或多个处理器。另外或可替代地,逻辑子系统可以包括被配置为执行硬件或固件指令的一个或多个硬件或固件逻辑子系统。逻辑子系统的处理器可以是单核或多核的,并且在其处理器上执行的指令可以被配置用于顺序、并行和/或分布式处理。逻辑子系统的各个组件可选地可以分布在两个或更多个单独的设备之中,这些设备可以位于远程位置处和/或被配置用于协同处理。逻辑子系统的方面可以虚拟化,并且由在云计算配置中配置的可远程访问的联网计算设备执行。

数据保存子系统804包括被配置为保存可由逻辑子系统执行以实现本文描述的方法和过程的指令的一个或多个物理设备。当实现这样的方法和过程时,数据保存子系统804的状态可以变换——例如,以保存不同的数据。

数据保存子系统804可以包括可移除和/或内置设备。数据保存子系统804可以包括光存储器(例如,cd、dvd、hd-dvd、蓝光盘等)、半导体存储器(例如,ram、eprom、eeprom等)和/或磁性存储器(例如,硬盘驱动器、软盘驱动器、磁带驱动器、mram等)以及其它。数据保存子系统804可以包括易失性、非易失性、动态、静态、读/写、只读、随机存取、顺序存取、位置可寻址、文件可寻址和/或内容可寻址设备。

将认识到,数据保存子系统804包括一个或多个物理设备。然而,本文中描述的指令的方面可替代地可以由不是在有限的持续时间内由物理设备保存的通信介质(例如,电磁信号、光信号等)传播。

逻辑子系统802和数据保存子系统804的方面可以一起集成到一个或多个硬件逻辑组件中。这样的硬件逻辑组件可以包括例如,现场可编程门阵列(fpga)、程序专用和应用专用集成电路(pasic/asic)、程序专用和应用专用标准产品(pssp/assp)、片上系统(soc)以及复杂可编程逻辑器件(cpld)。

术语“模块”、“程序”和“引擎”可以用于描述被实现为执行特定功能的计算系统800的方面。在一些情况下,模块、程序或引擎可以经由逻辑子系统802执行由数据保存子系统804保存的指令来实例化。将理解,不同模块、程序和/或引擎可以从相同应用、服务、代码块、对象、库、例程、api、函数等来实例化。同样地,相同模块、程序和/或引擎可以由不同应用、服务、代码块、对象、例程、api、函数等来实例化。术语“模块”、“程序”和“引擎”可以包含可执行文件、数据文件、库、驱动程序、脚本、数据库记录等的个体或组。

将认识到,如本文中使用的“服务”是跨多个用户会话可执行的应用程序。服务可以是可用于一个或多个系统组件、程序和/或其它服务的。在一些实现方式中,服务可以在一个或多个服务器计算设备上运行。

当包括时,显示子系统806可以用于呈现由数据保存子系统804保存的数据的可视表示。可视表示可以采取图形用户接口(gui)的形式。由于本文中描述的方法和过程改变由数据保存子系统保存的数据,并且因此变换数据保存子系统的状态,所以显示子系统806的状态同样被变换以便可视地表示底层数据的变化。显示子系统806可以包括利用几乎任何类型的技术的一个或多个显示设备。这样的显示设备可以与逻辑子系统802和/或数据保存子系统804在共享外壳中组合,或者这样的显示设备可以是外围显示设备。

当包括时,输入子系统808可以包括一个或多个用户输入设备(例如,键盘、鼠标、触摸屏或游戏控制器)或与其接合。在一些实施例中,输入子系统可以包括所选择的自然用户输入(nui)元件部分或与其接合。这样的元件部分可以是集成或外围的,并且对输入动作的转换和/或处理可以是在板上或离板处理的。示例nui元件部分可以包括:用于语音和/或声音识别的麦克风;用于机器视觉和/或姿势识别的红外、彩色、立体和/或深度摄像头;用于动作检测和/或意图识别的头部跟踪器、眼部跟踪器、加速度计和/或陀螺仪;以及用于评估脑部活动的电场感应元件部分。

当包括时,通信子系统810可以被配置为将计算系统800与一个或多个其它计算设备通信地耦合。通信子系统810可以包括可与一种或多种不同通信协议兼容的有线和/或无线通信设备。作为非限制性示例,通信子系统可以被配置用于经由无线电话网络或者有线或无线局域网或广域网进行的通信。在一些实施例中,通信子系统可以允许计算系统800经由网络(例如,互联网)向其它设备发送和/或从其它设备接收消息。

进一步在以下段落中描述了本公开内容的主题。根据一个方面,提供了一种用于操作包括处理器和显示器的计算设备的方法。该方法包括:确定先前创建的虚拟墨迹标注与地图视图内的位置相关联,虚拟墨迹标注具有在虚拟墨迹标注的创建时捕获的先前地图渲染上下文;将当前地图渲染上下文与关联于虚拟墨迹标注的先前地图渲染上下文进行比较;以及基于比较的结果,控制虚拟墨迹标注在所渲染的地图视图中的显示。

在该方面中,为了对当前地图渲染上下文和先前地图渲染上下文进行比较,该方法还可以包括:确定当前地图渲染上下文中的参数的值是否与先前地图渲染上下文中的对应参数的值在范围内匹配,并且如果当前地图渲染上下文中的参数的值与先前地图渲染上下文中的对应参数的值在范围内匹配,则在地图视图中渲染虚拟墨迹标注,并且在具有虚拟墨迹标注的情况下显示地图视图;以及如果当前地图渲染上下文中的参数的值与先前地图渲染上下文中的对应参数的值在范围内不匹配,则避免在地图视图中渲染虚拟墨迹标注,并且在没有虚拟标注的情况下显示地图视图。

在该方面中,当前地图渲染上下文中的参数可以是地图视图的缩放级别,并且先前地图渲染上下文中的对应参数可以是在虚拟墨迹标注的创建时的缩放级别。

在该方面中,虚拟墨迹输入的显示还可以基于对虚拟墨迹标注的预览的用户选择来控制,虚拟墨迹标注的预览在所渲染的地图视图中显示的墨迹标注控制器中被呈现。

在该方面中,该方法还可以包括:基于对当前地图渲染上下文和先前地图渲染上下文的比较的结果来设置虚拟墨迹标注的图形状态。

根据另一方面,提供了一种计算设备。该计算设备包括被配置为进行以下操作的处理器:在地图标注阶段,接收第一地图视图请求以基于第一地图渲染上下文来渲染所存储的地图数据的第一地图视图,基于第一地图渲染上下文来渲染第一地图视图,在显示器上的交互式绘图接口中显示第一地图视图,在交互式绘图接口中接收所渲染的地图视图上的、虚拟墨迹标注的输入,将第一地图渲染上下文与虚拟墨迹标注进行关联,将虚拟墨迹标注和第一地图渲染上下文存储在所存储的地图数据中;在随后的地图查看阶段,接收第二地图视图请求以基于第二地图渲染上下文来渲染所存储的地图数据的第二地图视图,确定虚拟墨迹标注与第二地图视图内的位置相关联,将第二地图渲染上下文与第一地图渲染上下文进行比较,以及基于比较的结果来控制虚拟墨迹标注在第二地图视图中的显示,渲染并且显示第二地图视图。

在该方面中,为了将第二地图渲染上下文与第一地图渲染上下文进行比较,该处理器还可以被配置为:确定第二地图渲染上下文中的参数的值是否与第一地图渲染上下文中的对应参数的值在范围内匹配,并且如果第二地图渲染上下文中的参数的值与第一地图渲染上下文中的对应参数的值在范围内匹配,则在第二地图视图中渲染虚拟墨迹标注,并且在具有虚拟墨迹标注的情况下显示第二地图视图;以及如果第二地图渲染上下文中的参数的值与第一地图渲染上下文中的对应参数的值在范围内不匹配,则避免在第二地图视图中渲染虚拟墨迹标注,并且在没有虚拟标注的情况下显示第二地图视图。

在该方面中,第二地图渲染上下文中的参数可以是第二地图视图的缩放级别,并且第一地图渲染上下文中的对应参数可以是第一地图视图的第一缩放级别。

在该方面中,第一缩放级别和第二缩放级别的值可以在具有多个离散缩放级别的缩放比例内。

在该方面中,该处理器还可以被配置为:基于对第一地图渲染上下文和第二地图渲染上下文的比较的结果来设置虚拟墨迹标注的图形状态。

在该方面中,范围可以是第一范围,该处理器还可以被配置为:确定第二地图渲染上下文中的参数的值是否在第二范围内,第二范围比第一地图渲染上下文中的对应参数的值的第一范围窄并且被包含在第一范围内,并且如果第二地图渲染上下文中的参数的值在第二范围内,则将虚拟墨迹标注的图形状态设置为根据比例因子在尺寸和/或不透明度方面被扩缩,比例因子是基于第二地图渲染上下文中的参数与第一地图渲染上下文中的对应参数之间的差的。

在该方面中,第一地图渲染上下文和第二地图渲染上下文中的参数可以是从下列各项构成的组中选择的对:第一中心地理位置和第二中心地理位置,第一地图类型和第二地图类型,第一强调对象集合和第二强调对象集合,第一导航路线和第二导航路线,以及第一导航标记和第二导航标记。

在该方面中,该处理器还可以被配置为:在地图标注阶段期间,从第二计算设备接收第二虚拟墨迹标注,并且在第一地图视图中渲染第二虚拟墨迹标注。

根据另一方面,提供了一种用于操作包括处理器和显示器的计算设备的方法。该方法包括:在地图标注阶段,接收第一地图视图请求以基于第一地图渲染上下文来渲染所存储的地图数据的第一地图视图,基于第一地图渲染上下文来渲染第一地图视图,在显示器上的交互式绘图接口中显示第一地图视图,在交互式绘图接口中接收所渲染的地图视图上的、虚拟墨迹标注的输入,将第一地图渲染上下文与虚拟墨迹标注进行关联,将虚拟墨迹标注和第一地图渲染上下文存储在所存储的地图数据中;在随后的地图查看阶段,接收第二地图视图请求以基于第二地图渲染上下文来渲染所存储的地图数据的第二地图视图,确定虚拟墨迹标注与第二地图视图内的位置相关联,将第二地图渲染上下文与第一地图渲染上下文进行比较,以及基于比较的结果来控制虚拟墨迹标注在所渲染的第二地图视图中的显示。

在该方面中,为了对第二地图渲染上下文和第一地图渲染上下文进行比较,该方法还可以包括:确定第二地图渲染上下文中的参数的值是否与第一地图渲染上下文中的对应参数的值在范围内匹配,并且如果第二地图渲染上下文中的参数的值与第一地图渲染上下文中的对应参数的值在范围内匹配,则在第二地图视图中渲染虚拟墨迹标注,并且在具有虚拟墨迹标注的情况下显示第二地图视图;以及如果第二地图渲染上下文中的参数的值与第一地图渲染上下文中的对应参数的值在范围内不匹配,则避免在第二地图视图中渲染虚拟墨迹标注,并且在没有虚拟标注的情况下显示第二地图视图。

在该方面中,第二地图渲染上下文中的参数可以是第二地图视图的缩放级别,并且第一地图渲染上下文中的对应参数可以是第一地图视图的第一缩放级别。

在该方面中,第一缩放级别和第二缩放级别的值可以在具有多个离散缩放级别的缩放比例内。

在该方面中,该方法还可以包括:基于对第一地图渲染上下文和第二地图渲染上下文的比较的结果来设置虚拟墨迹标注的图形状态。

在该方面中,范围可以是第一范围,该方法还可以包括:确定第二地图渲染上下文中的参数的值是否在第二范围内,第二范围比第一地图渲染上下文中的对应参数的值的第一范围窄并且被包含在第一范围内,并且如果第二地图渲染上下文中的参数的值在第二范围内,则将虚拟墨迹标注的图形状态设置为根据比例因子在尺寸和/或不透明度方面被扩缩,比例因子是基于第二地图渲染上下文中的参数与第一地图渲染上下文中的对应参数之间的差的。

在该方面中,第一地图渲染上下文中的参数可以是第一中心地理位置,并且第二地图渲染上下文的参数可以包括第二中心地理位置。

将理解的,本文中描述的配置和/或方法在本质上是示例性的,并且这些特定实施例或示例不应该在限制性意义上考虑,因为许多变体是可能的。本文中描述的特定例程或方法可以表示任何数量的处理策略中的一种或多种。因此,说明和/或描述的各种动作可以这样来执行:以说明和/或描述的序列、以其它序列、平行地或被省略。同样地,上面描述的过程的次序可以改变。

本公开内容的主题包括各种过程、系统和配置的所有新颖和非显而易见的组合和子组合,以及本文中公开的其它特征、功能、动作和/或属性及其任何和所有等同物。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1