IPC분류정보
국가/구분 |
United States(US) Patent
등록
|
국제특허분류(IPC7판) |
|
출원번호 |
US-0693630
(2003-10-23)
|
등록번호 |
US-7511718
(2009-03-31)
|
발명자
/ 주소 |
- Subramanian,Sriram
- Blanco,Leonardo E.
- Curtis,Donald B.
- Beda,Joseph S.
- Schneider,Gerhard A.
- Schechter,Greg D.
- Smith,Adam M.
- Vandenberg,Eric S.
- Calkins,Matthew W.
- Gallo,Kevin T.
- Stokes,Michael
- Goel,Rajat
|
출원인 / 주소 |
|
대리인 / 주소 |
|
인용정보 |
피인용 횟수 :
37 인용 특허 :
65 |
초록
▼
A media integration layer including an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure in order to output graphics. Via the interfaces, program code adds child visuals to other visuals to
A media integration layer including an application programming interface (API) and an object model allows program code developers to interface in a consistent manner with a scene graph data structure in order to output graphics. Via the interfaces, program code adds child visuals to other visuals to build up a hierarchical scene graph, writes Instruction Lists such as geometry data, image data, animation data and other data for output, and may specify transform, clipping and opacity properties on visuals. The media integration layer and API enable programmers to accomplish composition effects within their applications in a straightforward manner, while leveraging the graphics processing unit in a manner that does not adversely impact normal application performance. A multiple-level system includes the ability to combine different media types (such as 2D, 3D, Video, Audio, text and imaging) and animate them smoothly and seamlessly.
대표청구항
▼
What is claimed is: 1. A computer-implemented method for arranging graphics data for processing into an output, the method comprising: receiving a function call via an application programming interface (API) provided by a media integration layer (MIL), the API providing access to the functionality
What is claimed is: 1. A computer-implemented method for arranging graphics data for processing into an output, the method comprising: receiving a function call via an application programming interface (API) provided by a media integration layer (MIL), the API providing access to the functionality of the MIL, the MIL comprising a plurality of objects, the objects including a plurality of types of VisualManager objects, the types of VisualManager objects comprising screen, print, and surface, each VisualManager object comprising the methods DeviceUnitsFromMeasureUnits, Dispose, Equals, Finalize, GetHashCode, GetType, HandleMessage, MeasureUnitsFromDeviceUnits, MemberwiseClone, ReferenceEquals, SetContext, and ToString, the objects including a plurality of types of Visual objects, each Visual object comprising the methods ClearValue, Equals, Finalize, GetHashCode, GetLocalValueEnumerator, GetType, GetValue, HitTestCore, InvalidateProperty, MemberwiseClone, OnDelavedinvalidate, OnPropertInvalidated, ReadLocalValue, ReferenceEquals, SetContext, SetValue, ToString, ValidateProperty, and ValidatePropertyCore, each VisualManager object connecting a Visual Tree to a particular medium, the Visual Tree comprising nodes which are visual objects, each VisualManager object having a relationship with a window in which graphic data is output, and each VisualManager managing a rendering process to the particular medium; interpreting the function call; connecting, by a VisualManager, a Visual Tree to a render target which is a particular medium, the Visual Tree comprising a plurality of Visuals; causing data in a scene graph data structure to be modified; traversing each node of the Visual Tree; rendering, by a VisualRenderer, the Visual Tree to the particular medium. 2. The method of claim 1 wherein causing data in a scene graph data structure to be modified comprises invoking a function to initialize a new instance of a non-drawing visual class. 3. The method of claim 2 further comprising, receiving a function call via an interface corresponding to a transform associated with the visual. 4. The method of claim 1 wherein causing data in a scene graph data structure to be modified comprises invoking a function to initialize a new instance of a drawing visual class. 5. The method of claim 4 further comprising, receiving a function call via an interface to open the drawing visual instance for rendering, and in response, causing a drawing context to be returned, the drawing context providing a mechanism for rendering into the drawing visual. 6. The method of claim 1 further comprising, receiving brush data in association with the function call, and wherein causing data in a scene graph data structure to be modified comprises invoking a brush function to modify a data structure in the scene graph data structure such that when a frame is rendered from the scene graph, an area will be filled with visible data corresponding to the brush data. 7. The method of claim 6 wherein receiving 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 a function call via an interface corresponding to an image effect to apply to the image. 12. The method of claim 1 further comprising, receiving pen data in association with the function call, and wherein causing data in a scene graph data structure to be modified comprises invoking a pen function that defines an outline of a shape. 13. The method of claim 1 wherein causing data in a scene graph data structure to be modified comprises invoking a geometry-related function to represent an ellipse in the scene graph data structure. 14. The method of claim 1 wherein causing data in a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure 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 causing data in a scene graph data structure to be modified comprises invoking a function 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 causing data in a scene graph data structure to be modified comprises invoking a function 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 a scene graph data structure to be modified comprises invoking a function via a common 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 a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure 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 a scene graph data structure to be modified comprises mapping a two-dimensional surface onto the three dimensional visual. 30. The method of claim 1 wherein causing data in a scene graph data structure 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 at another layer of the media integration layer. 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 1 wherein receiving a function call via an API comprises receiving markup, and wherein causing data in a scene graph data structure to be modified comprises parsing the markup into a call to an interface of an object. 34. The method of claim 1 wherein causing data in a scene graph data structure 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 a scene graph data structure to be modified comprises changing a mutable value of an object in the scene graph data structure. 36. A computer program product comprising one or more computer-readable storage media having computer-executable instructions encoded thereon which, when executed by suitable computing equipment, implement the method of claim 1.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.