Markup language and object model for vector graphics
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G09G-005/00
G06T-013/00
G06F-003/00
출원번호
US-0693633
(2003-10-23)
등록번호
US-7417645
(2008-08-26)
발명자
/ 주소
Beda,Joseph S.
Gallo,Kevin T.
Smith,Adam M.
Wong,Gilman K.
Subramanian,Sriram
출원인 / 주소
Microsoft Corporation
대리인 / 주소
Workman Nydegger
인용정보
피인용 횟수 :
34인용 특허 :
65
초록▼
An element object model and a vector graphics markup language for using that element object model in a manner that allows program code developers to consistently interface with a scene graph data structure to produce graphics. The vector graphics element object model generally corresponds to shape e
An element object model and a vector graphics markup language for using that element object model in a manner that allows program code developers to consistently interface with a scene graph data structure to produce graphics. The vector graphics element object model generally corresponds to shape elements and other elements including image and video elements that correlate with a scene graph object model of the scene graph. Markup may be parsed into data including elements in an element tree that is translated into the objects of a scene graph data structure. Other markup may be translated directly into data and calls that create the scene graph objects. The markup language provides distinct ways to describe an element, including a simple string format or complex property syntax, which may be named, enabling reuse in other locations in the markup.
대표청구항▼
What is claimed is: 1. In a computing environment, a computer-implemented method for composing vector graphics, the method comprising: an application programming interface (API) receiving a plurality of function calls for composing vector graphics, the function calls comprising calls defined by a m
What is claimed is: 1. In a computing environment, a computer-implemented method for composing vector graphics, the method comprising: an application programming interface (API) receiving a plurality of function calls for composing vector graphics, the function calls comprising calls defined by a markup language and an object model, the markup language providing a string format and an object notation for describing a resource, and the markup language comprising an element class, the element class comprising a shape class, an image class, a video class, and a canvas class, and the object model comprising a base visual object which is a container for graphical content, a container visual object which is a visual object that does not directly contain graphical content but contains one or more child drawing visual objects, and drawing visual objects which are visual objects that can contain graphical content and which comprise child objects which are organized in a zero-based, z-order space; a parser/translator a) interpreting each of string format calls and object notation calls within the markup language, b) accessing a type converter, the type converter configured to convert string format calls to visual API objects, c) adding elements to an element tree within an element and layout system, and d) communicating resource-level data to a visual API; an element and layout system translating data comprising an element tree into calls to the visual API; the visual API a) accepting input from the parser translator, from the element and layout system, and directly from non-markup programming languages, b) interfacing with a scene graph, c) being configured to create scene graph objects, and d) providing access to a compositing and animation engine; a compositing and animation engine interfacing with the visual API, and the compositing and animation engine managing the composing, animating, and rendering of the scene graph; and causing a change in a graphics display in response to the modification of data in the scene graph. 2. The method of claim 1 wherein causing data in the scene graph to be modified comprises causing initialization of a new instance of a visual class. 3. The method of claim 2 wherein causing data in the scene graph to be modified comprises invoking code to associate a transform with a visual object in the scene graph. 4. The method of claim 1 wherein causing data in a scene graph data structure to be modified comprises invoking code to place a drawing visual into the scene graph. 5. The method of claim 4 further comprising, causing a drawing context to be returned, the drawing context providing a mechanism for rendering into the drawing visual. 6. The method of claim 2 wherein causing data in the scene graph to be modified comprises invoking code to associate brush data with a visual object in the scene graph. 7. The method of claim 6 wherein the brush data comprises receiving data corresponding to a solid color. 8. The method of claim 6 wherein receiving brush data comprises receiving data corresponding to a linear gradient brush and a stop collection comprising at least one stop. 9. The method of claim 6 wherein receiving brush data comprises receiving data corresponding to a radial gradient brush. 10. The method of claim 6 wherein receiving brush data comprises receiving data corresponding to an image. 11. The method of claim 10 further comprising, receiving markup corresponding to an image effect to apply to the image. 12. The method of claim 1 further comprising, receiving markup corresponding to pen data that defines an outline of a shape. 13. The method of claim 1 wherein the markup corresponds to a shape class comprising at least one of the set containing rectangle, polyline, polygon, path, line and ellipse shapes. 14. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a geometry-related function to represent a rectangle in the scene graph data structure. 15. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a geometry-related function to represent a path in the scene graph data structure. 16. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a geometry-related function to represent a line in the scene graph data structure. 17. The method of claim 1 wherein the markup is related to hit-testing a visual in the scene graph data structure. 18. The method of claim 1 wherein causing data in a scene graph data structure to be modified comprises invoking a function related to transforming coordinates of a visual in the scene graph data structure. 19. The method of claim 1 wherein the markup is related to calculating a bounding box of a visual in the scene graph data structure. 20. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function via a common application programming interface to a visual object in the scene graph data structure. 21. The method of claim 1 further comprising invoking a visual manager to render a tree of at least one visual object to a rendering target. 22. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place a container object in the scene graph data structure, the container object configured to contain at least one visual object. 23. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place image data into the scene graph data structure. 24. The method of claim 23 wherein causing data in the scene graph to be modified comprises invoking a function to place an image effect object into the scene graph data structure that is associated with the image data. 25. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place data corresponding to text into the scene graph data structure. 26. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to provide a drawing context in response to the function call. 27. The method of claim 26 wherein the function call corresponds to a retained visual, and further comprising, calling back to have the drawing context of the retained visual returned to the scene graph data structure. 28. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place a three-dimensional visual into the scene graph data structure. 29. The method of claim 28 wherein causing data in the scene graph to be modified comprises mapping a two-dimensional surface onto the three-dimensional visual. 30. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place animation data into the scene graph data structure. 31. The method of claim 30 further comprising communicating timeline information corresponding to the animation data to a composition engine. 32. The method of claim 31 wherein the composition engine interpolates graphics data based on the timeline to animate an output corresponding to an object in the scene graph data structure. 33. The method of claim 32 wherein the composition engine is at a low-level with respect to the scene graph. 34. The method of claim 1 wherein causing data in the scene graph to be modified comprises invoking a function to place an object corresponding to audio and/or video data into the scene graph data structure. 35. The method of claim 1 wherein causing data in the scene graph to be modified comprises changing a mutable value of an object in the scene graph data structure.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (65)
Celi ; Jr. Joseph ; Wagner Jonathan M. ; Louie Roger, Advanced graphics driver architecture with extension capability.
Esslinger Mark A. ; Clarke Allan D. ; Howard Robert M. ; Matchett Douglas K. ; Neuse Douglas M. ; Palmer James R. ; West Carolyn W., Apparatus for and method of displaying running of modeled system designs.
Grinstein, Georges G.; Leger, Jeffrey R.; Lee, John Peter; MacPherson, Bradford E.; Southard, David A., Apparatuses, methods, computer programming, and propagated signals for modeling motion in computer applications.
Hayes ; Jr. Kent Fillmore, Client-server system with central application management allowing an administrator to configure user and group contexts during application configuration without relaunching the application.
Marrin, Christopher F.; Kent, James R.; Myeb, Robert K.; Broadwell, Peter G., Declarative markup for scoring multiple time-based assets and events within a scene composition system.
Beda,Joseph S.; Smith,Adam M.; Schneider,Gerhard A.; Gallo,Kevin T.; Michail,Ashraf A., Intelligent caching data structure for immediate mode graphics.
Cooper,Michael Richard; Dutta,Rabindranath; Lawrence,Kelvin Roderick, Method and apparatus for converting programs and source code files written in a programming language to equivalent markup language files.
Butterfield Stephen R. (Manhattan Beach CA) Phillips Donald E. (Garden Grove CA) Renshaw Barbara B. (Manhattan Beach CA) Nelson Steven K. (Harbor City CA) Hossley Robert F. (El Segundo CA), Method and apparatus for displaying a page with graphics information on a continuous synchronous raster output device.
Weinberg,Paul N.; Hazi,Ariel; Sullivan,Dave L.; Tinari,Philip A.; Alexandrov,Alexander K.; Brookler,David E., Method and apparatus for dynamically formatting and displaying tabular data in real time.
Lindberg, Henrik; Hallgren, Thomas, Method and system for transferring information between a user interface and a database over a global information network.
Cunniff Ross ; Saunders Bradley L., Method for fast downloading of textures to accelerated graphics hardware and the elimination of extra software copies of.
Milne Steve H. (Palo Alto CA) Denman Matthew L. (Los Gatos CA) Tindell James M. (LaHonda CA) Tobias ; II John C. (Sunnyvale CA) Dilts Michael R. (Saratoga CA) Edelman Bradley A. (Cupertino CA), Multimedia synchronization system.
Pascucci Gregory A. ; Rasmussen David E. ; Decious Gaylon M. ; Garbe James R. ; Hyzer Susan M. ; Woest Karen L. ; Vairavan Vairavan ; Koch David L. ; Gottschalk ; Jr. Donald A. ; Burkhardt Dennis E. , Networked facilities management system.
Grantham Brad ; Jones Michael T. ; Segal Mark G. ; Tanner Chris ; Walker Chris ; Rohlf John, Platform independent application program interface for interactive 3D scene management.
Farros Royal P. ; Schuyler James A. ; Babcock Gaylon W. ; Finn Michael J. ; Sax Michael N. ; Johnson Alan D., Printing system with pre-defined user modifiable forms and local and remote printing.
Chen Shuang ; Fujisaki Tetsunosuke ; Kobayashi Makoto,JPX ; Ohshima Mitsuru,JPX ; Yoshida Yoichi,JPX, Server for reconfiguring control of a subset of devices on one or more kiosks.
Swedberg,Gregory; David,Paul; Arsov,Andrey; Curtis,Don; Blanco,Leonardo E., System and method for a unified composition engine in a graphics processing system.
Anderson Michael David ; O'Donnell Susan ; Varma Narendra,AUX, System and method for animating an object in three-dimensional space using a two-dimensional input device.
Ward Alan D. ; Barzee Rex A. ; Lefebvre Kevin T. ; Dyer Don W. ; Dugger James G.,DEX, System and method for asynchronously accessing a graphics system for graphics application evaluation and control.
Cifra,Christopher; Chandhoke,Sundeep, System and method for invoking execution of a sequence of operations that includes motion control, machine vision, and data acquisition (DAQ) functionality.
Tanner,Christopher C.; Amaud,Remi Simon Vincent; Jones,Michael T.; Webb,Richard D.; McClendon,Brian, System and method for leveraging independent innovation in entertainment content and graphics hardware.
David,Paul C.; Schneider,Gerhard A.; Calkins,Matthew W.; Ungureanu,Oreste Dorin; Michail,Ashraf; Arsov,Andrey E.; Blanco,Leonardo E., System and method for managing visual structure, timing, and animation in a graphics processing system.
Haskell, Barin Geoffry; Puri, Atul; Schmidt, Robert Lewis, Systems and methods for playing, browsing and interacting with MPEG-4 coded audio-visual objects.
Beda, Joseph S.; Smith, Adam M.; Schneider, Gerhard A.; Gallo, Kevin T.; Michail, Ashraf A., Intelligent caching data structure for immediate mode graphics.
Kawatani, Satoshi, Plan display device that displays enlarged/reduced image of original image with indication and plan display program for displaying same.
Douros, Bryan Phil; Atterbury, Matthew Darcy; Stanfill, Craig W.; Wholey, III, Joseph Skeffington; Bromley, H. Mark, Processing transactions in graph-based applications.
Wakeling, Tim; Buxbaum, Mark; Staknis, Mark, Task managing application for performing tasks based on messages received from a data processing application initiated by the task managing application.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.