CN101809624A - 在服务器计算机上呈现三维对象 - Google Patents

在服务器计算机上呈现三维对象 Download PDF

Info

Publication number
CN101809624A
CN101809624A CN200880109141A CN200880109141A CN101809624A CN 101809624 A CN101809624 A CN 101809624A CN 200880109141 A CN200880109141 A CN 200880109141A CN 200880109141 A CN200880109141 A CN 200880109141A CN 101809624 A CN101809624 A CN 101809624A
Authority
CN
China
Prior art keywords
document
presented
request
presents
dimensional object
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
Application number
CN200880109141A
Other languages
English (en)
Other versions
CN101809624B (zh
Inventor
S·塞尼
S·P·杰弗纳
G·A·普里汀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN101809624A publication Critical patent/CN101809624A/zh
Application granted granted Critical
Publication of CN101809624B publication Critical patent/CN101809624B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/16Indexing scheme for image data processing or generation, in general involving adaptation to the client's capabilities

Abstract

此处描述了用于呈现包含三维对象的文档的技术。客户计算机接收显示文档的请求。如果用于创建文档的程序不可用于显示该文档,则客户计算机向服务器计算机传送呈现该文档的请求,包括呈现包含在该文档中的任何三维对象。响应于接收到请求,服务器计算机确定文档是否包含任何三维对象。如果文档包含三维对象,则服务器计算机呈现这些三维对象。一旦呈现了三维对象,还呈现文档的剩余部分。随后响应于呈现该文档的原始请求将该文档的呈现版本返回到客户计算机。被呈现的文档随后由标准查看器应用程序显示在客户计算机上。

Description

在服务器计算机上呈现三维对象
背景
桌面生产力软件应用程序允许用户创建文字处理文档、电子表格文档、演示文档以及其它种类的文档。这些文档通常包括文本、格式、图像以及其它类型的包括三维(“3-D”)对象的对象。例如,此类文档可包括如三维文本、三维表格、三维形状、三维图形以及三维图表等三维对象。用户向文字处理或电子表格文档添加三维对象以向文档添加视觉风格是相当普遍的。
除了文档的创建之外,典型桌面生产力应用程序还允许用户查看和编辑由其他用户使用相同应用程序或兼容应用程序创建的文档。然而,为查看由另一用户创建的文档,通常必须将用于创建该文档的合适的软件应用程序或兼容应用程序安装在要在其上查看该文档的计算机上。例如,如果用户接收了来自另一用户的文字处理文档并期望查看该文档,包括其中包含的所有图像、三维对象以及其它内容,则将用于创建该文档的文字处理应用程序的副本安装在用户的计算机上通常是必要的。
在许多情况下,如果用户没有将用于创建文档的应用程序的副本安装在他们的计算机上,则用户可能完全无法查看该文档。在其它情况下,用户可能必须定位、下载以及安装用于在他们的计算机上显示文档的兼容查看器应用程序以查看文档。然而,用户定位、安装并执行此类查看器应用程序可能是困难的。在又一些其它情况下,应用程序或查看器应用程序的兼容版本可能对用户希望在其上查看文档的设备的类型而言不可用。例如,用户可能希望在用于创建文档的应用程序或查看器应用程序的版本不存在的个人数字助理(“PDA”)或无线移动电话上查看文档。对具有查看文档以及包含在其中的所有图像、三维对象以及其它内容的需要,但不拥有用于创建文档的必要应用程序的用户而言,这可能是极端令人挫败的。
此处所做出的本发明正是对于这些和其它考虑事项而提出的。
概述
此处描述了用于在服务器计算机上呈现包含三维对象的文档的技术。具体而言,通过利用此处所提出的技术和概念,可在服务器计算机上呈现包含一个或多个三维对象的文档以供使用在客户计算机上执行的诸如万维网(“web”)浏览器应用程序等标准查看器应用程序进行显示。因为在服务器计算机上呈现文档(包括包含在其中的任何三维对象),所以将用于创建该文档的应用程序或该文档类型的指定查看器应用程序安装在客户计算机上是不必要的。
根据此处所提出的一个方面,客户计算机接收显示诸如文字处理文档、演示文档或电子表格文档等文档的请求。该请求可来自于例如响应于查看文档的用户请求。响应于此类请求,客户计算机确定用于创建该文档的应用程序是否可用于该客户计算机来显示该文档。如果用于创建文档的应用程序不可用以显示该文档,则客户计算机向服务器计算机传送呈现该文档的请求,包括呈现包含在该文档中的任何三维对象。
响应于接收到呈现文档的请求,服务器计算机解析文档以确定该文档是否包含任何三维对象。例如,服务器计算机可解析文档以确定任何三维表格、图表、图形、形状或文本是否被包含在文档中。如果文档包含三维对象,则服务器计算机呈现这些三维对象。通过呈现过程,将三维对象变换成二维图像。在一实施例中,以诸如可移植网络图形(“PNG”)格式等web标准图像格式来呈现图像。根据各实施例,相同或不同的服务器计算机可执行三维对象的呈现。以此方式,可将该呈现过程缩放到多个服务器计算机。
一旦呈现了三维对象,还将该文档的剩余部分呈现成web标准图像格式,包括将任何被呈现的三维对象合成到该文档中。随后响应于呈现该文档的原始请求将该文档的呈现版本返回到客户计算机。因为被呈现的文档是使用web标准图像格式的,所以可通过在许多类型的设备上普遍可用的诸如web浏览器应用程序等标准查看器应用程序将被呈现的文档显示在客户计算机上。文档的呈现版本以及包含在其中的任何被呈现的三维对象在由标准查看器应用程序显示时看上去与由创建该文档的应用程序显示时基本类似。根据各实施例,可一次呈现文档的单个页面,包括包含在其中的任何三维对象,而不是呈现整个文档。
应当理解,上述主题也可被实现为计算机控制的装置、计算机进程、计算系统或诸如计算机可读介质等制品。通过阅读以下详细描述和查阅相关联的附图,这些和各种其它特征将是显而易见的。
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本概述并不旨在标识出所要求保护的主题的关键特征或必要特征,本概述也不旨在用于限定所要求保护的主题的范围。此外,所要求保护的主题不限于解决在本发明的任一部分中提及的任何或所有缺点的实现方式。
附图简述
图1是示出由此处所提出的各实施例提供的说明性操作环境和若干软件组件的各方面的网络图;
图2-4是示出在此处所提出的一实施例中提供的客户计算机、前端服务器计算机以及后端服务器计算机的各自的操作的各方面的流程图。
图5是示出用于能够实现本文所提出的各实施例的各方面的计算系统的说明性计算机硬件和软件体系结构的计算机体系结构图。
详细描述
以下详细描述涉及用于在服务器计算机上呈现三维对象的技术。通过对此处所提出的技术和概念的使用,可在服务器计算机上呈现包含一个或多个三维对象的文档以供使用在客户计算机上执行的标准查看器应用程序进行显示。此过程消除了对将用于创建文档的应用程序、或用于文档类型的指定查看器应用程序安装在客户计算机上以查看文档的需要。
尽管此处所述的主题是在结合操作系统和应用程序在计算机系统上的执行而执行的程序模块的一般上下文中提出的,但本领域技术人员可以认识到,可结合其它类型的程序模块来执行其它实现方式。一般而言,程序模块包括执行特定任务或实现特定的抽象数据类型的例程、程序、组件、数据结构和其它类型的结构。此外,本领域的技术人员可以理解,此处所述的主题可以使用其它计算机系统配置来实践,这些其它计算机系统配置包括手持式设备、多处理器系统、基于微处理器或可编程的消费电子产品、小型计算机、大型计算机等。
在以下详细描述中,参考了构成详细描述的一部分并作为说明示出了各具体实施例或示例的附图。现在参考附图(若干附图中相同的标号表示相同的元素),将描述用于在服务器计算机上呈现三维对象的计算系统和方法的各方面。
现在转到图1,将提供关于由此处所提出的各实施例提供的说明性操作环境和若干软件组件的细节。具体而言,图1示出用于在服务器计算机上呈现三维对象的系统100的各方面。系统100包括客户计算机104、一个或多个前端服务器计算机106A-106N、以及一个或多个后端服务器计算机108A-108N。如图1所示,客户计算机104、前端服务器计算机106A、以及后端服务器计算机108A通过诸如网络117等一个或多个局域网和广域网互连。应该理解,可利用比图1中示出的多得多的网络连接。
图1中示出的客户计算机104包括能够执行操作系统和一个或多个应用程序的标准台式或膝上型计算机系统。具体而言,根据各实施例,客户计算机104可用于执行文档创建应用程序112。文档创建应用程序112包括用于创建可能或可能不包括一个或多个诸如3-D对象116等三维对象的文档114的应用程序。
根据各实现方式,文档创建应用程序112包括用于创建文字处理文档、演示文档或电子表格文档的应用程序。应该理解,此处所述的实现方式可与文档创建应用程序一起使用以创建具有包含在其中的3-D对象的任何类型的文档。根据其它方面,3-D对象116包括三维表格、三维图表、三维图形、三维形状或三维文本对象。然而,应该理解,3-D对象116可包括任何类型的具有三维特性的对象。
如图1所示,客户计算机104还可用于执行客户机查看器应用程序112。根据一实现方式,客户机查看器应用程序110包括被配置成显示根据标准图像格式被格式化的图像的应用程序。例如,在一实现方式中,客户机查看器应用程序110包括能够显示PNG图像文件的应用程序。客户机查看器应用程序112还可被配置成显示其它类型的web标准图像格式。在一具体实现方式中,客户机查看器应用程序110包括能够显示以web标准图像格式被格式化的图像的web浏览器应用程序。然而,应该理解,可将此处所述的由客户机查看器应用程序110执行的功能集成到其它类型的能够显示web标准图像格式的程序中。
如以下将详细讨论的,客户计算机104可用于接收显示诸如文档114等文档的请求。响应于接收到此类请求,客户计算机104确定文档创建应用程序112是否可用于呈现并显示文档114。如果文档创建应用程序112不可用于显示文档114,则客户计算机104利用由前端服务器计算机106A和后端服务器计算机108A提供的功能来呈现文档114。例如,如果文档创建应用程序112未被安装在客户计算机104上或被安装了但是不起作用,则文档创建应用程序112可能是不可用的。
在客户计算机104接收到显示文档创建应用程序112对其不可用的文档114的请求时,客户计算机104将请求118A传送到前端服务器计算机106A。在图1中示出的实施例中,请求118A包括呈现请求120和文档114。然而,在其它实施例中,请求118A包括呈现请求120和对文档114的引用。在此实施例中,不将文档114与请求118A一起传送。相反,客户计算机103将文档114存储在可由前端服务器计算机106A和后端服务器计算机108A访问的联网存储位置上。以此方式,不需要将文档114与请求118A一起传送。
如果文档114包含任何诸如3-D对象116等3-D对象,则也将这些对象与请求118A一起传送。请求118A还可包括关于客户计算机104和由前端服务器计算机106A和后端服务器计算机108A用于呈现文档114的客户机查看器应用程序110的能力的信息。例如,客户计算机104可传送关于与其连接的显示设备的分辨率的信息。此信息可由前端服务器计算机106A和后端服务器计算机108A利用来确定应该呈现文档114的分辨率。
在前端服务器计算机106A接收到请求118A时,该前端服务器计算机106A确定文档114是否包含任何三维对象。如果三维对象被包含在文档114中,则前端服务器计算机106A向后端服务器计算机108A传送呈现该三维对象的请求118B。该请求118B包括要呈现的三维对象116。后端服务器计算机108A接收请求118B并启动3-D呈现过程121。
该3-D呈现过程121取得3-D对象116并将该3-D对象呈现成图像。根据各实施例,诸如PNG等标准图像格式可用于呈现3-D对象116。也可以利用其它类型的图像格式。在3-D呈现过程121完成了呈现3-D对象116时,将响应122返回到前端服务器计算机106A。响应122包括被呈现的3-D对象124。
在前端服务器计算机106A接收到响应122时,利用前端呈现过程119来呈现文档114的其它部分。这可包括例如呈现文档114中的其它内容并将被呈现的3-D对象124合成到被呈现的文档128中。如同3-D呈现过程121,前端呈现过程119将文档114呈现成诸如PNG等web标准图像格式。以此方式,可通过能够呈现web标准图像格式的任何标准查看器应用程序来显示来自前端呈现过程119的输出。
一旦前端呈现过程119完成,前端服务器计算机106A即向客户机查看器应用程序110传送响应126。响应126包括被呈现的文档128和任何被呈现的3-D对象124。一旦响应126由客户机查看器应用程序110接收,客户机查看器应用程序110即在客户计算机104的显示设备上显示被呈现的文档128。
应该理解,虽然上文参考图1所述的过程使得整个文档114由服务器计算机106A和108A呈现,但是其它实现方式可使得一次呈现文档114的一些子部分。例如,根据一实现方式,文档114的各个页面,包括包含在其中的任何3-D对象可由服务器计算机106A和108A呈现并返回给客户机查看器应用程序110。一次呈现文档114的一些页面减少了前端服务器计算机106A和后端服务器计算机108A的计算要求。
还应该理解,尽管结合单个前端服务器计算机106A和单个后端服务器计算机108A来描述参考图1所述的过程,但是也可利用多个计算系统。例如,可利用多个前端服务器计算机106A-106N来接收来自客户计算机104的请求118A。类似的,可利用多个后端服务器计算机108A-108N来并行地呈现3-D对象。根据其它实现方式,可通过在后端服务器计算机108A-108N中的每一个上利用诸如多个中央处理单元或多核中央处理单元等多个处理单元来获取可伸缩性。以此方式,可并行地执行许多3-D对象的呈现。在其它实现方式中,此处所提出的发生在多个计算系统上的处理可在单个计算系统上执行。
还应该理解,被呈现的文档118,包括包含在其中的任何被呈现的3-D对象124由前端服务器计算机106A和后端服务器计算机108A以完全视觉保真度来呈现。完全视觉保真度指的是前端服务器计算机106A和后端服务器计算机108A在不损失视觉质量的情况下呈现文档114以及包含在其中的任何三维对象116的能力。以此方式,被呈现的文档128以及包含在其中的任何被呈现的3-D对象124将如同文档114由文档创建应用程序112显示那样以基本上类似的方式向客户计算机104的用户表现。将在以下参考图2-5提供关于图1中示出的各计算系统和软件组件的其它细节。
现在参考图2-4,将提供关于此处所提出的用于在服务器计算机上呈现三维对象的各实施例的其它细节。具体而言,图2-4是示出在此处所提出的一实施例中的客户计算机104、前端服务器计算机106A以及后端服务器计算机108A的各自的操作的各方面的流程图。一起描述图2-4以示出客户计算机104、前端服务器计算机106A以及后端服务器计算机108A之间的交互。
应理解,此处所述的逻辑操作被实现为(1)一系列计算机实现的动作或运行于计算系统上的程序模块,和/或(2)计算系统内的互连的机器逻辑电路或电路模块。实现方式是取决于计算系统的性能和其它要求的选择的问题。因此,这里所描述的逻辑操作在不同情况下称为状态操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可用软件、固件、专用数字逻辑以及它们的任何组合来实现。还应当理解,可以实现比各附图所示的并在此处描述的更多或更少操作。这些操作也可按与这里所描述的不同的次序来执行。
例程200在操作202开始,其中客户计算机104接收显示文档114的请求。此类请求可例如来自于响应于查看文档114的内容的用户请求。从操作202例程200继续至操作204,其中客户计算机104确定文档创建应用程序112是否可用于显示文档114。如果文档创建应用程序112是可用的,则例程200继续至操作206,其中客户计算机104使得文档创建应用程序112打开文档114并显示该文档。从操作206,例程200继续到操作214并在那里结束。
如果文档创建应用程序112是不可用的,则例程200从操作204分支到操作208。在操作208,客户计算机104向前端服务器计算机106A传送请求118。如上所述,请求118包括对前端服务器计算机106呈现文档114的请求并包括文档114以及包含在其中的任何三维对象116。
在例程300的操作302,前端服务器计算机106A接收请求118A。在操作304,响应于接收到此请求,前端服务器计算机106A解析文档114。一旦该解析完成,例程300即继续至操作306,其中前端服务器计算机106A确定是否有任何三维内容被包含在文档114中。如果没有三维内容被包含在文档114中,则例程300从操作306分支到以下所述的操作312。然而,如果文档114包含一个或多个3-D对象116,则例程300从操作306继续至操作308。在操作308,前端服务器计算机106A向后端服务器计算机108A传送请求118B。如上所述,请求118B包括对后端服务器计算机108A呈现3-D对象116的请求。
在例程400的操作402,后端服务器108A接收请求118B。例程400随后继续至操作404,其中执行3-D呈现过程121以将3-D对象116呈现成被呈现的3-D对象124。一旦完成了3-D呈现过程121,在操作406,将包括被呈现的3-D对象124的响应121返回到前端服务器计算机106A。从操作406,例程400继续到操作408并在那里结束。
在例程300的操作310,前端服务器计算机106A接收被呈现的3-D对象124。从操作310,例程300继续至操作312,其中文档114由前端呈现过程119呈现,包括将被呈现的3-D对象124合成到被呈现的文档128中。一旦前端呈现过程完全呈现了文档128,则例程300继续至操作314,其中将包括被呈现的文档128和被呈现的3-D对象124的响应126返回给客户计算机104。
在例程200的操作210,客户计算机104接收响应126。响应于接收到包括被呈现的文档128的响应126,例程200继续至操作212,其中客户机查看器应用程序110显示包括包含在其中的任何被呈现的3-D对象124的被呈现的文档128。从操作212,例程200继续到操作214并在那里结束。
应该理解,尽管例程200、300、400示出了呈现整个文档114的过程,但是可利用类似过程来一次呈现文档114的单个页面。还应该理解,尽管文档114的呈现被描述为由前端服务器计算机106A和后端服务器计算机108A执行,但是这些过程也可由单个服务器计算机执行。具体而言,可在单个服务器计算机上执行前端呈现过程119和3-D呈现过程121。还可利用其它类型的实现方式来最大化此处所述的各计算机的网络性能和处理器使用率。
图5示出了用于能够执行本文所描述的用于以上述方式在服务器计算机上呈现三维对象的软件组件的计算机500的说明性计算机体系结构。图5中示出的计算机体系结构示出常规台式、膝上型、或服务器计算机且可用于执行此处所呈现的被描述为在客户计算机104、前端服务器计算机106A-106N、或后端服务器计算机108A-108N上执行的软件组件的任何方面。
图5所示的计算机体系结构包括中央处理单元502(“CPU”)、包括随机存取存储器514(“RAM”)和只读存储器(“ROM”)516的系统存储器508、以及将存储器耦合至CPU 502的系统总线504。基本输入/输出系统被存储在ROM 516中,该系统包含帮助诸如在启动期间在计算机500中的元件之间传递信息的基本例程。计算机500还包括用于存储操作系统518、应用程序和其它程序模块的大容量存储设备510,这将在本文中更为详尽地描述。
大容量存储设备510通过连接至总线504的大容量存储控制器(未示出)连接到CPU 502。大容量存储设备510及其相关联的计算机可读介质为计算机500提供非易失性存储。尽管本文所包含的计算机可读介质的描述指的是大容量存储设备,如硬盘或CD-ROM驱动器,但本领域的技术人员应理解,计算机可读介质可以是可由计算机500访问的任何可用计算机存储介质。
作为示例而非限制,计算机可读介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机可读介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其它固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、蓝光(BLU-RAY)或其它光学存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机500访问的任何其它介质。
根据各实施例,计算机500可以使用通过诸如网络520等网络与远程计算机的逻辑连接在联网环境中操作。计算机500可以通过连接至总线504的网络接口单元506来连接到网络520。应当理解,网络接口单元506也可用于连接至其它类型的网络和远程计算机系统。计算机500还可以包括用于接收和处理来自多个其它设备的输入的输入/输出控制器512,这些设备包括键盘、鼠标或者电子指示笔(未在图5中示出)。类似地,输入/输出控制器可以提供至显示屏、打印机或其它类型的输出设备(也未在图5中示出)的输出。
如前简述的那样,多个程序模块和数据文件可以存储在计算机500的大容量存储设备510和RAM 514内,包括适于控制联网的台式计算机、膝上型计算机或服务器计算机的操作的操作系统518。大容量存储设备510和RAM 514还可以存储一个或多个程序模块。具体而言,大容量存储设备510和RAM 514可存储客户机查看器应用程序110、前端呈现过程119、以及3-D呈现过程121,其每一个都在上文参考图1-4详细描述。大容量存储设备510和RAM 514还可存储其它类型的程序模块。
基于上文,应该理解,此处提供了用于在服务器计算机上呈现三维对象的技术。尽管用对计算机结构特征、方法动作和计算机可读介质专用的语言描述了此处呈现的本主题,但可以理解,所附权利要求书中定义的本发明不必限于此处所述的具体特征、动作或介质。相反,具体特征、动作和介质是作为实现权利要求的示例形式公开的。
上述主题仅作为说明提供,并且不应被解释为限制。可对此处所述的主题作出各种修改和改变,而不必遵循所示和所述的示例实施例和应用,且不背离所附权利要求书中所述的本发明的真正精神和范围。

Claims (20)

1.一种用于在服务器计算机(108A)上呈现三维对象(116)的方法,所述方法包括:
接收显示文档(114)的请求;
响应于所述请求,确定用于创建所述文档(114)的应用程序(112)是否可用于显示所述文档(114)以及
响应于确定用于创建所述文档(114)的应用程序(112)不可用于显示所述文档(114),向所述服务器计算机(106A)传送呈现所述文档的请求,包括呈现包含在所述文档(114)中的任何三维对象(116)。
2.如权利要求1所述的方法,其特征在于,还包括:
响应于对所述服务器计算机呈现所述文档的请求,从所述服务器计算机接收所述文档的呈现版本;以及
执行查看器应用程序以显示所述文档的呈现版本。
3.如权利要求1所述的方法,其特征在于,对所述服务器计算机呈现所述文档的请求包括呈现所述文档的单个页面的请求,其中从所述服务器计算机接收所述文档的呈现版本包括接收所述文档的单个页面的呈现版本,且其中执行查看器应用程序以显示所述文档的呈现版本包括执行查看器应用程序以显示所述文档的单个页面的呈现版本。
4.如权利要求2所述的方法,其特征在于,从所述服务器计算机接收到的所述文档的呈现版本基本上类似于由用于创建所述文档的应用程序生成的文档的呈现。
5.如权利要求4所述的方法,其特征在于,所述文档的呈现版本包括图像,且其中所述查看器应用程序包括用于显示所述图像的应用程序。
6.如权利要求5所述的方法,其特征在于,所述图像是根据web标准图像格式来格式化的。
7.一种其上存储有计算机可执行指令的计算机可读介质,所述指令在由计算机执行时使得所述计算机执行如权利要求1所述的方法。
8.一种用于在服务器计算机(108A)上呈现三维对象(116)的方法,所述方法包括:
接收呈现文档(114)的请求;
响应于接收到所述请求,解析所述文档(114)以确定所述文档(114)是否包含三维对象(116);以及
响应于确定所述文档包含三维对象(116),在所述服务器计算机(108A)上呈现所述三维对象(116)、呈现包括被呈现的三维对象(124)的所述文档(114)以创建被呈现的文档(114)、以及响应于呈现所述文档(114)的请求提供被呈现的文档(128)。
9.如权利要求8所述的方法,其特征在于,还包括响应于确定所述文档不包含三维对象:
呈现所述文档;以及
响应于呈现所述文档的请求提供被呈现的文档。
10.如权利要求8所述的方法,其特征在于,呈现文档的所述请求包括呈现文档的单个页面的请求,其中解析所述文档以确定所述文档是否包含三维对象包括解析所述文档的单个页面以确定所述页面是否包含三维对象,其中呈现包括被呈现的三维对象的所述文档以创建被呈现的文档包括呈现包括所述被呈现的三维对象的文档的单个页面以创建所述文档的被呈现的页面,且其中响应于呈现所述文档的请求提供被呈现的文档包括响应于呈现所述文档的单个页面的请求提供所述文档的被呈现的页面。
11.如权利要求8所述的方法,其特征在于,所述被呈现的文档基本上类似于由用于创建所述文档的应用程序生成的文档的呈现。
12.如权利要求8所述的方法,其特征在于,所述被呈现的文档包括图像,所述图像是根据万维网(web)标准图像格式来格式化的。
13.一种其上存储有计算机可执行指令的计算机可读介质,所述指令在由计算机执行时使得所述计算机执行如权利要求8所述的方法。
14.一种用于在服务器计算机(108A)上呈现三维对象(116)的系统,所述系统包括:
用于接收呈现文档(114)的请求、解析所述文档(114)以确定所述文档是否包含三维对象(116)、以及响应于确定所述文档(114)包含三维对象(116)向第二服务器组件(121)传送呈现所述三维对象(116)的请求的第一服务器组件(119);以及
用于从所述第一服务器组件(119)接收呈现所述三维对象(116)的请求、呈现所述三维对象(116)、以及响应于所述请求将被呈现的三维对象(124)返回给所述第一服务器组件(119)的第二服务器组件(121)。
15.如权利要求14所述的系统,其特征在于,所述第一服务器组件还用于:
从所述第二服务器组件接收所述被呈现的三维对象;
呈现包括所述被呈现的三维对象的文档以创建被呈现的文档;以及
响应于呈现所述文档的请求提供所述被呈现的文档。
16.如权利要求15所述的系统,其特征在于,响应于确定所述文档不包含三维对象,所述第一服务器组件还用于:
呈现所述文档以创建被呈现的文档;以及
响应于呈现所述文档的请求提供所述被呈现的文档。
17.如权利要求16所述的系统,其特征在于,所述第一服务器组件执行在第一服务器计算机上,所述第二服务器组件执行在第二服务器计算机上。
18.如权利要求16所述的系统,其特征在于,所述第一服务器组件和所述第二服务器组件在单个服务器计算机上执行。
19.如权利要求16所述的系统,其特征在于,所述被呈现的文档基本上类似于由用于创建所述文档的应用程序生成的文档的呈现。
20.如权利要求19所述的系统,其特征在于,所述被呈现的文档包括图像,所述图像是根据万维网(web)标准图像格式来格式化的。
CN200880109141XA 2007-09-24 2008-08-27 在服务器计算机上呈现三维对象 Expired - Fee Related CN101809624B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/859,888 2007-09-24
US11/859,888 US8134553B2 (en) 2007-09-24 2007-09-24 Rendering three-dimensional objects on a server computer
PCT/US2008/074523 WO2009042337A1 (en) 2007-09-24 2008-08-27 Rendering three-dimensional objects on a server computer

Publications (2)

Publication Number Publication Date
CN101809624A true CN101809624A (zh) 2010-08-18
CN101809624B CN101809624B (zh) 2013-02-13

Family

ID=40471105

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880109141XA Expired - Fee Related CN101809624B (zh) 2007-09-24 2008-08-27 在服务器计算机上呈现三维对象

Country Status (6)

Country Link
US (1) US8134553B2 (zh)
EP (1) EP2201529A4 (zh)
JP (1) JP5389809B2 (zh)
KR (1) KR101618378B1 (zh)
CN (1) CN101809624B (zh)
WO (1) WO2009042337A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751950B2 (en) 2004-08-17 2014-06-10 Ice Edge Business Solutions Ltd. Capturing a user's intent in design software
US20050071135A1 (en) 2003-09-30 2005-03-31 Vredenburgh David W. Knowledge management system for computer-aided design modeling
WO2009100538A1 (en) 2008-02-13 2009-08-20 Dirtt Environmental Solutions, Ltd. Rendering and modifying cad design entities in object-oriented applications
EP2252951B1 (en) 2008-03-11 2021-05-05 Ice Edge Business Solutions, Ltd. Automatically creating and modifying furniture layouts in design software
EP2504783A4 (en) * 2009-11-24 2015-02-25 Ice Edge Business Solutions Inc SECURE SHARING OF DESIGN REPRESENTATIONS ON A NETWORK
US20110161410A1 (en) * 2009-12-31 2011-06-30 Centrifuge Systems, Inc. Massive-scale interactive visualization of data spaces
EP2718861A4 (en) 2011-06-11 2015-03-18 Dirtt Environmental Solutions AUTOMATIC REUSE OF STRUCTURAL COMPONENTS
WO2014108214A1 (en) * 2013-01-14 2014-07-17 Neweb Client-server system for a web-based furniture shop
US20150215390A1 (en) * 2014-01-30 2015-07-30 Crytek Gmbh Apparatus and Method for Multi-User Editing of Computer-Generated Content
US9607411B2 (en) * 2014-04-23 2017-03-28 Ebay Inc. Specular highlights on photos of objects
US9520002B1 (en) 2015-06-24 2016-12-13 Microsoft Technology Licensing, Llc Virtual place-located anchor
US10304247B2 (en) 2015-12-09 2019-05-28 Microsoft Technology Licensing, Llc Third party holographic portal
KR102419972B1 (ko) * 2016-03-03 2022-07-14 한국전자통신연구원 영상 표시를 위한 클라이언트 장치, 서버 장치 및 영상 표시 방법
US10506017B2 (en) 2016-05-20 2019-12-10 Adobe Inc. Manipulation of PDF file content through HTTP requests

Family Cites Families (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434578B1 (en) * 1996-06-26 2002-08-13 Microsoft Corporation Generating instruction sequences using independently executable pane renderers
US5936641A (en) * 1997-06-27 1999-08-10 Object Technology Licensing Corp Graphics hardware acceleration method, computer program, and system
US5991713A (en) * 1997-11-26 1999-11-23 International Business Machines Corp. Efficient method for compressing, storing, searching and transmitting natural language text
US6396500B1 (en) 1999-03-18 2002-05-28 Microsoft Corporation Method and system for generating and displaying a slide show with animations and transitions in a browser
US6798417B1 (en) * 1999-09-23 2004-09-28 International Business Machines Corporation Just in time graphics dispatching
US6384821B1 (en) 1999-10-04 2002-05-07 International Business Machines Corporation Method and apparatus for delivering 3D graphics in a networked environment using transparent video
US6377257B1 (en) 1999-10-04 2002-04-23 International Business Machines Corporation Methods and apparatus for delivering 3D graphics in a networked environment
US7050079B1 (en) 2000-01-04 2006-05-23 International Business Machines Corporation System and method for dynamically generating viewable graphics
EP1402405A2 (en) * 2000-02-16 2004-03-31 Real Consulting LLC A system and method for automating the assembly, processing and delivery of documents
US7210099B2 (en) * 2000-06-12 2007-04-24 Softview Llc Resolution independent vector display of internet content
US6704024B2 (en) * 2000-08-07 2004-03-09 Zframe, Inc. Visual content browsing using rasterized representations
US7523411B2 (en) * 2000-08-22 2009-04-21 Bruce Carlin Network-linked interactive three-dimensional composition and display of saleable objects in situ in viewer-selected scenes for purposes of object promotion and procurement, and generation of object advertisements
US7246044B2 (en) * 2000-09-13 2007-07-17 Matsushita Electric Works, Ltd. Method for aiding space design using network, system therefor, and server computer of the system
US7358986B1 (en) * 2000-09-13 2008-04-15 Nextengine, Inc. Digital imaging system having distribution controlled over a distributed network
US6657647B1 (en) * 2000-09-25 2003-12-02 Xoucin, Inc. Controlling the order in which content is displayed in a browser
US7170521B2 (en) 2001-04-03 2007-01-30 Ultravisual Medical Systems Corporation Method of and system for storing, communicating, and displaying image data
US20070028166A1 (en) 2002-04-10 2007-02-01 Allen Hundhausen System and processes for dynamic document construction
JP2002351778A (ja) * 2001-05-30 2002-12-06 Nippon Telegr & Teleph Corp <Ntt> 3次元表示コンテンツ送信制御方法及びシステム及び受信装置及びサーバ及び3次元表示端末及び3次元表示コンテンツ送信制御プログラム及び3次元表示コンテンツ送信制御プログラムを格納した記憶媒体
US20030014478A1 (en) * 2001-06-29 2003-01-16 Noble Alan C. Dynamically distributed client-server web browser
US20030128234A1 (en) * 2002-01-09 2003-07-10 International Business Machines Corporation Utilizing document white space to persistently display designated content
JP2003271506A (ja) * 2002-03-14 2003-09-26 Seiko Epson Corp 構造化文書表示システム、構造化文書表示装置、構造化文書処理装置、構造化文書表示方法および構造化文書処理プログラム
DE60224926T2 (de) 2002-08-02 2009-01-22 Sap Ag Verfahren und Rechnersystem zur Behandlung von inkrementalen Daten in Klient-Server Kommunikation.
EP1406183A3 (en) * 2002-10-01 2004-04-14 Sap Ag Method and system for refreshing browser pages
WO2004042519A2 (en) 2002-11-01 2004-05-21 Parker-Hannifin Corporation Human-machine interface system and method
US20050005028A1 (en) * 2003-07-01 2005-01-06 Jong Huang Automated image markup system and method
JP2005135375A (ja) * 2003-10-08 2005-05-26 Sharp Corp 立体表示システム、データ配信装置、端末装置、データ処理方法、プログラム及び記録媒体
JP2005165873A (ja) * 2003-12-04 2005-06-23 Masahiro Ito Web3D画像表示システム
US7170526B1 (en) 2004-01-26 2007-01-30 Sun Microsystems, Inc. Method and apparatus for redirecting the output of direct rendering graphics calls
US7583269B2 (en) 2004-02-17 2009-09-01 Sun Microsystems, Inc. Window system 2D graphics redirection using direct texture rendering
US7954050B2 (en) * 2004-06-25 2011-05-31 Icesoft Technologies Canada Corp. Systems and methods for rendering and increasing portability of document-based user interface software objects
US7620892B2 (en) * 2004-07-29 2009-11-17 Xerox Corporation Server based image processing for client display of documents
US7667862B2 (en) 2004-10-05 2010-02-23 Isee Media Inc. Method and system for streaming images to wireless devices
TWI280514B (en) 2004-12-07 2007-05-01 Nvlsoft Corp System and method for providing 3D image production service
US20060248166A1 (en) * 2005-04-29 2006-11-02 Jovan Milosevic System and method for client side rendering of a web page
US7991916B2 (en) * 2005-09-01 2011-08-02 Microsoft Corporation Per-user application rendering in the presence of application sharing
KR101329619B1 (ko) * 2006-01-13 2013-11-14 씨아이이 디지털 랩스, 엘엘씨 컴퓨터 네트워크 기반 3차원 렌더링 시스템
US7640311B2 (en) * 2006-03-31 2009-12-29 Research In Motion Limited Method for viewing non-image attachments on a portable electronic device
US7673327B1 (en) * 2006-06-27 2010-03-02 Confluence Commons, Inc. Aggregation system
US8065275B2 (en) * 2007-02-15 2011-11-22 Google Inc. Systems and methods for cache optimization

Also Published As

Publication number Publication date
EP2201529A1 (en) 2010-06-30
KR20100067651A (ko) 2010-06-21
CN101809624B (zh) 2013-02-13
US8134553B2 (en) 2012-03-13
WO2009042337A1 (en) 2009-04-02
US20090079729A1 (en) 2009-03-26
KR101618378B1 (ko) 2016-05-04
JP5389809B2 (ja) 2014-01-15
JP2011502292A (ja) 2011-01-20
EP2201529A4 (en) 2016-07-20

Similar Documents

Publication Publication Date Title
CN101809624B (zh) 在服务器计算机上呈现三维对象
US9665841B2 (en) Cross-platform application framework
CN101910990B (zh) 经由web界面创建并编辑动态图
US20200097537A1 (en) Templating process for a multi-page formatted document
US9542926B2 (en) Synchronizing the playing and displaying of digital content
EP3651482A1 (en) Message extension app store
CN104412225A (zh) 与主机兼容的可下载应用的标识
US8074167B2 (en) Cross domain presence of web user interface and logic
CN103608770A (zh) 用于演示文稿应用的嵌入式web查看器
CN102007509A (zh) 通过基于web的桌面生产力应用程序来插入多媒体文件
CN111936970B (zh) 交叉应用特征链接和教育消息传送
US11899908B2 (en) Image template-based AR form experiences
JP2010514054A (ja) ビジュアル情報ユニットでリアルタイム情報を提供する方法
CN105027116A (zh) 电子阅读器内平面书籍到富书籍的转换
US20090037809A1 (en) Server based control of ad placement in client software
JP2017526052A (ja) プレビューからの情報処理デバイス上のコンテンツのアンロック
CN104919448A (zh) 用于显示数字版本的设备、方法和系统
CN103597452A (zh) 灾难数据中心中的爬行新鲜度
US20120054313A1 (en) Interpreting web application content
Griffey Gadgets and gizmos: personal electronics and the library
US11693676B2 (en) Computer based unitary workspace leveraging multiple file-type toggling for dynamic content creation
KR20160087287A (ko) 전자책 설명을 위한 방송 콘텐츠 제공 방법, 및 이를 수행하는 전자 장치
KR20090040485A (ko) 디지털 멀티미디어 디자인 포토 북과 그 제작방법 및모바일 서비스 제공방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150506

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150506

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130213

Termination date: 20190827

CF01 Termination of patent right due to non-payment of annual fee