Method for creating, exporting, sharing, and installing graphics functional blocks
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-009/45
G06F-009/44
출원번호
US-0477003
(2009-06-02)
등록번호
US-9778921
(2017-10-03)
발명자
/ 주소
Quennesson, Kevin
Sabatelli, Alessandro
Koelling, Troy
Matas, Michael
출원인 / 주소
Apple Inc.
대리인 / 주소
Blakely, Sokoloff, Taylor & Zaffman LLP
인용정보
피인용 횟수 :
0인용 특허 :
12
초록▼
Systems, apparatuses, computer readable media, and methods for creating, exporting, sharing, and installing graphics functional blocks are described herein. In one embodiment, a selection is received from a graphical user interface (GUI) for one or more patches of multiple linked patches representin
Systems, apparatuses, computer readable media, and methods for creating, exporting, sharing, and installing graphics functional blocks are described herein. In one embodiment, a selection is received from a graphical user interface (GUI) for one or more patches of multiple linked patches representing a graphics composition. In response to the selection, a dependency analysis is performed to determine one or more related patches that have a dependency relationship with the selected patches. Based on the dependency analysis, source code associated with the selected patches and the related patches is extracted without extracting source code of unselected and unrelated patches. Thereafter, the selected patches, the related patches, and the extracted source code are exported into a composition file to be shared with another user. Other methods and apparatuses are also described.
대표청구항▼
1. A machine-implemented method, comprising: importing a motion graphics composition comprising a plurality of linked patches into an editing window of a graphical user interface (GUI), the plurality of linked patches collectively representing a motion graphics composition, wherein each patch compri
1. A machine-implemented method, comprising: importing a motion graphics composition comprising a plurality of linked patches into an editing window of a graphical user interface (GUI), the plurality of linked patches collectively representing a motion graphics composition, wherein each patch comprises a subroutine of source code that, when compiled and executed, renders a graphics object of the motion graphics composition;displaying, in the editing window of the GUI, the plurality of linked patches, wherein the plurality of linked patches includes a first patch and a second patch, the second patch having an input port visually and dependently linked with an output port of the first patch, wherein the links between linked patches define a dependency and a data flow that defines an order in which graphics motion data is processed between the linked patches for the motion graphics composition;in response to selecting one or more patches from the displayed plurality of linked patches, performing a dependency analysis of the selected patches to determine one or more related patches that have a dependency relationship with the selected patches, including identifying a relationship between the first patch and the second patch in which a value that is output by the first patch is used as an input value by the second patch;extracting source code associated with the selected patches and the related patches based on the dependency analysis without extracting source code of unselected and unrelated patches; andexporting the selected patches, the related patches, and the extracted source code as a composition file to be shared with another user to enable the user to recreate the motions graphics composition without having to rewrite the extracted source code. 2. The method of claim 1, further comprising: displaying a viewing window of the GUI to instantly display a result of rendering of the plurality of linked patches displayed in the editing window. 3. The method of claim 2, further comprising: displaying a toolbar within the editing window having a plurality of buttons;receiving an activation from a first button displayed on the toolbar for exporting; andin response to the activation of the first button, performing the dependency analysis and extracting source code of the selected patches and the related patches. 4. The method of claim 3, further comprising exporting into a composition file, prompting a user for a filename of the composition file to be shared with another user, including a copyright statement and a brief description of the composition file. 5. The method of claim 3, further comprising: in response to an activation of a second button from the toolbar, creating a macro patch representing the selected patches from the editing window;replacing the selected patches with the macro patch in the editing window; andreconnecting the macro patch with patches previously connected with the replaced patches. 6. The method of claim 1, further comprising: importing a second composition file having a plurality of patches, the plurality of patches being exported from another user;determining whether one or more of the patches in the second composition file exist in a local system; andreplacing the one or more patches that exist in the local system with the corresponding one or more patches from the second composition file. 7. The method of claim 6, wherein determining whether one or more patches exist comprises: searching in the local system based on an identifier of each patch from the second composition file to determine whether a particular patch from the second composition file exists in the local system; andcomparing a version of each patch that exists in the local system with a version of the corresponding patch from the second composition file. 8. The method of claim 1, wherein the first patch comprises a plurality of output ports wherein at least one of the output ports is not linked to a selected patch and is not linked to a related patch; and wherein extracting source code associated with the first patch excludes extracting source code associated with the at least one output port that is not linked to a selected patch and is not linked to a related patch. 9. The method of claim 1, wherein each patch renders a motion graphics object. 10. The method of claim 1, the patch further comprising: compiled source code such that the patch is executable without recompilation. 11. The method of claim 1, further comprising: automatically comparing patches of the imported graphics composition against patches stored locally; andreplacing at least one patch stored locally with a patch extracted from the imported graphics composition, in response to determining that the at least one patch imported with the composition has a newer version than the locally stored patch. 12. The method of claim 1, wherein a workflow defined by the selected patches, related patches, and extracted source code is invoked in response to an application that references the composition file receiving a user interaction. 13. The method of claim 1, further comprising extracting compiled source code associated with the selected patches and related patches based on the dependency analysis such that the selected patches are executable without recompilation. 14. A machine-readable storage medium having instructions stored therein, which when executed by a machine, cause the machine to perform a method, the method comprising: importing a motion graphics composition comprising a plurality of linked patches into an editing window of a graphical user interface (GUI), the plurality of linked patches collectively representing the motion graphics composition, wherein each patch comprises a subroutine of compiled source code that, when compiled and executed, renders a graphics object of the motion graphics composition;displaying, in the editing window of the GUI, the plurality of linked patches, wherein the plurality of linked patches includes a first patch and a second patch, the second patch having an input port visually and dependently linked with an output port of the first patch, wherein the links between linked patches define a dependency and a data flow that defines an order in which graphical motion data is processed between the linked patches for the motion graphics composition;in response to selecting one or more patches from the displayed plurality of linked patches, performing a dependency analysis of the selected patches to determine one or more related patches that have a dependency relationship with the selected patches, including identifying a relationship between the first patch and the second patch in which a value that is output by the first patch is used an input value by the second patch;extracting source code associated with the selected patches and the related patches based on the dependency analysis without extracting source code of unselected and unrelated patches; andexporting the selected patches, the related patches, and the extracted source code as a composition file to be shared with another user to enable the user to recreate the motions graphics composition without having to rewrite the extracted source code. 15. The machine-readable storage medium of claim 14, wherein the method further comprises: displaying a viewing window of the GUI to instantly display a result of rendering of the plurality of linked patches displayed in the editing window. 16. The machine-readable storage medium of claim 15, wherein the method further comprises: displaying a toolbar within the editing window having a plurality of buttons;receiving an activation from a first button displayed on the toolbar for exporting; andin response to the activation of the first button, performing the dependency analysis and extracting source code of the selected patches and related patches. 17. The machine-readable storage medium of claim 16, wherein the method further comprises exporting into a composition file, prompting a user for a filename of the composition file to be shared with another user, including a copyright statement and a brief description of the composition file. 18. The machine-readable storage medium of claim 16, wherein the method further comprises: in response to an activation of a second button from the toolbar, creating a macro patch representing the selected patches from the editing window;replacing the selected patches with the macro patch in the editing window; andreconnecting the macro patch with patches previously connected with the replaced patches. 19. The machine-readable storage medium of claim 14, wherein the method further comprises: importing a second composition file having a plurality of patches, the plurality of patches being exported from another user;determining whether one or more of the patches in the second composition file exist in a local system; andreplacing the one or more patches that exist in the local system with the corresponding one or more patches from the second composition file. 20. The machine-readable storage medium of claim 19, wherein determining whether one or more patches exist comprises: searching in the local system based on an identifier of each patch from the second composition file to determine whether a particular patch from the second composition file exists in the local system; andcomparing a version of each patch that exists in the local system with a version of the corresponding patch from the second composition file. 21. The machine-readable storage medium of claim 14, wherein the first patch comprises a plurality of output ports wherein at least one of the output ports is not linked to a selected patch and is not linked to a related patch; and wherein extracting source code associated with the first patch excludes extracting source code associated with the at least one output port that is not linked to a selected patch and is not linked to a related patch. 22. A system, comprising: a graphical user interface GUI having an editing window configured to import a composition comprising a plurality of linked patches into the editing window of the GUI, the editing window configured to display the plurality of linked patches, wherein the plurality of linked patches includes a first patch and a second patch, the second patch having an input port visually and dependently linked with an output port of the first patch, wherein the links between patches define a dependency and a data flow that defines an order in which graphical motion data is processed between the linked patches for the motion graphics composition;a dependency analyzer configured to perform, in response to selecting one or more patches from the displayed plurality of linked patches, a dependency analysis of the selected patches to determine one or more related patches that have a dependency relationship with the selected patches, including identifying a relationship between the first patch and the second patch in which a value that is output by the first patch is used as an input value by the second patch;a code generator configured to extract source code associated with the selected patches and the related patches based on the dependency analysis without extracting source code of unselected and unrelated patches; andan exporter configured to export the selected patches, the related patches, and the extracted source code as a composition file to be shared with another user to enable the user to recreate the motions graphics composition without having to rewrite the extracted source code. 23. The system of claim 22, further comprising a graphical user interface (GUI), wherein the GUI comprises: a viewing window to instantly display a result of rendering of the plurality of linked patches displayed in the editing window. 24. The system of claim 23, wherein the GUI further comprises a toolbar displayed within the editing window, the toolbar having a plurality of buttons, including a first button to receive a user input for exporting, wherein in response to the activation of the first button, the dependency analyzer is configured to perform the dependency analysis and the code generator is configured to extract source code of the selected patches.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (12)
Zhang Roger ; Dye Robert ; McKaskle Greg ; Cifra Chris, Code node for a graphical programming system which invokes execution of textual code.
Schaumont Patrick,BEX ; Vernalde Serge,BEX ; Cockx Johan,BEX, Design environment and a method for generating an implementable description of a digital system.
Conway,Matthew J.; Jacquot,Stephen A.; Proffitt,Dennis R.; Robertson,George G., Methods, apparatus and data structures for providing a user interface to objects, the user interface exploiting spatial memory and visually indicating at least one object parameter.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.