DBE(3X11) | X FUNCTIONS | DBE(3X11) |
̾??¶
DBE - ???֥??Хåե???ĥ
????¶
???֥??Хåե???ĥ(Double Buffer Extension, DBE)?ϡ?X ???????ɥ??????? ???????Ȥ????ǥ??֥??Хåե????????Ѥ???ɸ??Ū????ˡ?????롣 ???֥??Хåե????Ǥϡ????̥Хåե??????̥Хåե??ȸƤФ???2?ĤΥХ? ?ե??????Ѥ??롣????ξ?ԤȤ⥤??????ݻ????롣 ???̥Хåե??ϥ桼???˸????????̥Хåե??ϥ桼???????ϸ????ʤ??????˥ ????????Ϣ³?????ե졼???ϡ????˥??????????줿?ե졼?ब???̥Хåե? ??ɽ???????Ƥ????֤ˡ????̥Хåե??˥????????????롣
???????ե졼???ν??????Ǥ????ȡ????̥Хåե??????̥Хåե????????ϸ??? ???????????ե졼?ब???????褦?ˤʤ롣????Ū?ˤϤ??θϡ??桼???ˤ? ????Ū???Լ????ʤ??Ȥ??ʤ????֤ν??????˸????롣???Τ褦?ˤ??ơ??????? ???????????줿????????????桼???˸??????졢???????ե졼???????? ???????Ƥ??????֤⤺?äȥ?????ϸ????????֤ˤ??롣???̤Ȥ??ơ? ?????Ĥ??Τʤ????˥???????????????롣
????¶
Concepts
???γ?ĥ?ˤ??ꡢ???ץꥱ?????????ϥ??????ɥ??ǥ??֥??Хåե??????ѤǤ? ???褦?ˤʤ롣 ?????ϡ????̥Хåե??ȸƤФ???2???ܤΥХåե??????????????????ɥ????? ?̥Хåե??Ȥ????Ȥ??˻Ȥ????ᡢ1?İʾ??????̥Хåե???̾?? (XID) ?????ɥ??˴?Ϣ?Ť??뤳?Ȥ??ޤࡣ ???̥Хåե???̾???ϡ? XdbeBackBuffer ???Υɥ??????֥??Ǥ??롣
DBE ??????Ū?ʥ??֥??Хåե????Υ??ǥ??????롣1?Ĥ? XID, ?Ĥ? ?ꥦ?????ɥ??Ͼ??????̥Хåե??Ȥ??롣1?İʾ???¾?? XID, ?Ĥޤ? ???̥Хåե?̾?ϡ????????̥Хåե??Ȥ??롣?Хåե??θ塢?????? ?ɥ???(??????)???̥Хåե??Ȥ?³???????̥Хåե?̾?ϡ?(??????)???? ?Хåե??Ȥ?³???롣???????äơ????̥Хåե??????????????褦?? ???륢?ץꥱ???????????ġ??륭?åȤϡ????????ɥ????Ф??????Ƥ??????ꥯ ?????ȤˤĤ??????̥Хåե?̾?????Ѥ??롣???̥Хåե??????????????? ???Ȥ??륢?ץꥱ?????????ΰ????ϡ????????ɥ??ؤ????Ƥ??????ꥯ?????Ȥ? ?Ĥ??ơ????????ɥ? XID ???Ȥ???
ʣ???Υ??饤?????Ȥ??ġ??륭?åȤϡ?Ʊ?쥦?????ɥ????ǥ??֥??Хåե??? ?????Ѥ??뤳?Ȥ??Ǥ??롣 DBE ?ϥ??????ɥ??????֥??Хåե??ݡ??Ȥ??Ƥ??뤫?䤤???碌???ꥯ?? ???Ȥȡ????ݡ??Ȥ??Ƥ????????????̥Хåե?̾???䤤???碌???ꥯ?????Ȥ? ???ʤ???X ???????ɥ??????ƥ?????Ʊ?????ˤ??ꡢ?????϶??????֤? ???????Ǥ??롣???????ˡ?DBE ??Ʊ?????????ɥ????Ф???ʣ???????̥Хåե? ̾??¸?ߤ??뤳?Ȥ??????????????????Ƥ?Ʊ??ʪ??Ū???̥Хåե??Ȥ??롣 ???????ɥ????Ф??ƽ????????̥Хåե?̾?????????Ƥ??줿???????Υ????? ?ɥ??ϥ??֥??Хåե??????Ĥ褦?ˤʤꡢ???̥Хåե?̾?????Υ??????ɥ??? ?б??Ť??????롣
³???ơ??????????̥Хåե??????????Ƥ??줿???????ο????????̥Хåե? ̾?????????ɥ??˴?Ϣ???Ƥ??????????????????????ɥ??ϴ??˥??֥??Хåե? ???????ɥ??Ǥ??ꡢ???Υ??????ɥ??ϲ????Ѳ????ʤ??? ???????ɥ????˴??????뤫?????????ɥ????Ф??????Ƥ????̥Хåե?̾?????? ???????ޤǡ????Υ??????ɥ??ϥ??֥??Хåե??????ġ?
???̤ˡ????̥Хåե??????̥Хåե???Ʊ???褦?˰??????롣?ä˽??פ????? ???????Ĥ?????:
?ɥ??????֥??????????˼????ؿ??ˤϡ????? XdbeBackBuffer ???Ϥ??Ƥ⤫?ޤ??ʤ??? ?????ˤ??ꥢ?ץꥱ?????????ϡ?¾?Υɥ??????֥??????褹???Τ?Ʊ???褦?? XdbeBackBuffer ??ľ?????褹?뤳?Ȥ???ǽ?Ȥʤ롣
Window ?????ͤ????????˼????ؿ??? XdbeBackBuffer ???Ϥ??ȥ??顼?ˤʤ롣
XdbeBackBuffer ?ϡ?Window ???????ꤵ???Ƥ????֤??͡????٥??ȡ????顼?Ȥ??????????Ƥ? ?뤳?ȤϤʤ???
?Хå????ȥ??䥻???֥????????????֥??Хåե??Υ??????ɥ???Ŭ?Ѥ??? ?????硢??????ξ???ΥХåե???Ʊ???褦??Ŭ?Ѥ????롣
XClearArea() ?? XClearWindow() ?????֥??Хåե??Υ??????ɥ??Ǽ¹Ԥ??줿???硢???̥Хåե??????̥Хåե? ??Ʊ???ΰ褬???ꥢ?????롣
?ɥ??????֥????????????ؿ??˥??????ɥ????Ϥ????Ȥ???ư???ϡ????γ?ĥ?? ???Ѥ????ʤ??????????ɥ??????̥Хåե??ϸߤ???Ʊ???Ǥ??롣?????ϡ????? ?ե??å????????ƥ????Ȥ??ط????Ƥ????? XGetImage() ?? XGetSubImage() ?ΰ?̣?䡢???֥??????ɥ??⡼?ɤΰ?̣?˽??????Ȥ??ޤࡣ???????ɥ??????? Ū?? XGetImage() ?? XGetSubImage() ???Ϥ????Ƥ??뤫?ɤ????????뤤??????Ū?˻??Ȥ????Ƥ??뤫?ɤ???(?Ĥޤꡢ ???襦?????ɥ????ؿ????Ϥ??줿)?ˤ??????餺??????(?Ĥޤ??Ļ???)?Хåե? ?????˻??Ȥ????롣 ???Τ??ᡢ DBE ?ͥ??ƥ??֤Υ?????????????פ??륯?饤?????Ȥϡ????? ???̥Хåե??????????롣 ???̥Хåե????Ф??? XGetImage() ?? XGetSubImage() ?ϡ?????????ϰ????ˤ??롢?طʥХåե??α????줿?ΰ????Ф???̤?????? ????????Ƥ??֤???
?طʥХåե??ؤ??????ϡ?GC ?? subwindow ?⡼?ɤ? ClipByChildren ?Ǥ??? ???̥Хåե??ؤ??????ǻȤ??????Ϥ??Υ????å??ΰ??????Ѥ??롣 ???֥??Хåե??Υ??????ɥ??????襦?????ɥ??? subwindow ?⡼?ɤ? IncludeInferiors ?Ǥ??? GC ???Ȥä????褵???????硢???֥??Хåե????? ???ɥ????طʥХåե????Ф????ƶ??ϡ????֥??Хåե??Υ??????ɥ??????襦?? ???ɥ??ο????˰?¸???롣??????Ʊ???Ǥ????С????֥??Хåե??Υ??????ɥ? ???طʥХåե??????Ƥ??Ѳ????ʤ??????????ۤʤ??????ϡ????֥??Хåե??? ???????ɥ????طʥХåե??????Ƥϡ?IncludeInferiors ?????褬?Ԥ??줿?? ???????ˤĤ???̤?????Ǥ??롣
DBE ???ɲä????뿷???????٥??ȤϤʤ???DBE ?? XdbeBackBuffer ?ȸƤФ??뿷?????ɥ??????֥??Υ????פ??ɲä????ʳ??ˤϡ????ߤΥ??٥??? ?ΰ?̣????ĥ???ʤ???
?ꥯ?????Ȥؤα????Ȥ??ơ??ɥ??????֥????ޤ?(?㤨?? GraphicsExpose)?? ?٥??ȡ??֤??͡????顼?????????줿???硢???Υɥ??????֥??ϥꥯ?????Ȥ? ???ꤵ?줿???Τˤʤ롣
DBE ?ϥ??֥??Хåե????ݡ??Ȥ??Ƥ????ӥ??奢?????Τ餻?롣
DBE ?ϥ????ߥ???Ĵ????Ʊ???ε?ǽ?ϻ??äƤ??ʤ??????Τ褦?ʵ?ǽ??ɬ?פ? (?㤨?С??ե졼???졼?Ȥδ?????)???ץꥱ?????????ϡ?X ???????? ????ɸ?൬???Ǥ??? Synchronization Extension ?Ȥ??뤳?ȡ?
???????ɥ?????????
???֥??Хåե??Υ??????ɥ????˴????줿?Ȥ??????????ɥ??˴ط?????ξ???? ?Хåե????˴????졢???????ɥ??˴ط????????Ƥ????̥Хåե?̾?ϲ??????? ?롣
???֥??Хåե??Υ??????ɥ??Υ????????ѹ????줿???硢?ɤ????ΥХåե??? ?????????????Ȥʤ롣???????ɥ??Υ????????礭???ʤä????硢?Хåե??ؤ? ?ƶ??ϼ??????Хåե??? gravity ?ӥå??ͤ?º?Ť??뤫?ɤ????˰?¸???롣 gravity ?ӥå??ͤ??????????Ƥ????С?ξ???ΥХåե??????Ƥϥ??????ɥ??? gravity ?ӥå??ͤ˽??äư?ư?????Ĥ????ΰ??ϥ??????ɥ????طʿ????ɤ??? ?֤????롣?ɤ????ξ????⡢???????ɥ????طʿ????ɤ??Ĥ֤??줿?ΰ????Ф? ?? Expose ???٥??Ȥ??????????롣 ?ؿ? XGetGeometry() ?? XdbeBackBuffer ???Ф??Ƽ¹Ԥ??줿???硢?֤????? x, y ??ɸ?????????? 0 ?ˤʤ롣
Shepe ??ĥ ShapeRectangles, ShapeMask, ShapeCombine, ShapeOffset ?????֥??Хåե??Υ??????ɥ????Ф??Ƽ¹Ԥ??줿???硢ξ???ΥХåե??Ͽ? ???????????ɥ??????˰??פ????褦???ѷ??????롣?????κ?ʬ (D = ?????? - ??????) ?ϡ??ɤ????ΥХåե??Ǥ⥦?????ɥ????طʿ????ɤ? ?Ĥ֤??졢D ???Ф??? Expose ???٥??Ȥ??????????롣
ʣ???ʥ????å?ư??
?֥??ǥ?????(???Ѷ?)?פθ줬?????褦?ˡ?ʣ???ʥ????å?ư???ϥꥯ?????? ?Υ??롼??/???Ȥ???ɽ?????롣???Υꥯ?????ȤΥ??롼?פ??ޤȤᡢ??ǽ?? ???粽???뤿?ᡢ?????ˤ??? atomic ??ư?????Ȥ߹??ळ?Ȥ??Ǥ??롣?ºݤ? ?Ϻ?Ŭ???Τ?????ǧ???????뤳?Υ??ǥ??????Υ??åȤϡ???????¸?Ǥ??롣?? ?ǥ???????ɽ???Ȳ????????????뤿?ᡢ???ǥ??????ϼ???2?Ĥδؿ??ƤӽФ? ?Ƕ??ޤʤ????Фʤ??ʤ?: XdbeBeginIdiom(), XdbeEndIdiom(). ????-??λ???Ȥǥ??ǥ????????Ǥ??ʤ??????ϡ??????ˤ???ǧ???ϹԤ????? ?¹???ǽ?ϰ????ʤ롣
?㤨?С????ץꥱ??????????2?ĤΥ??????ɥ??ΥХåե??????????̥Х? ?ե????????Υץ졼?????????ꥢ???褦?Ȥ??????硢???ץꥱ?????????ϰʲ? ?θƤӽФ????ʲ??ν????ǥ??롼?פȤ???:
2?ĤΥ??????ɥ????Ф??? XID ???Ѥ??? XdbeSwapBuffers(). ?ɤ????Υ??????ɥ??⥹???å?ư?? Untouched ?????Ѥ??롣
?????Υ??????ɥ??????̥Хåե????Ф??? XFillRectangle().
?⤦?????Υ??????ɥ??????̥Хåե????Ф??? XFillRectangle().
XdbeEndIdiom().
?ؿ? XdbeBeginIdiom() ?? XdbeEndIdiom() ?Ϥ??켫?ΤǤ?ư???ϹԤ??ʤ????????Υꥯ?????ȤΥ??롼??/???ǥ??? ???Ȥ??Ʒ??礹?뤳?Ȥ??Ǥ????????ˤϥޡ??????Ȥ??ư????졢?????Ǥʤ??? ????ǧ???Ǥ??ʤ??ꥯ?????ȤΥ??롼??/???ξ?????̵?뤵???롣???????δ? ???ƤӽФ??ν????????????????????б????????Ƥ??ʤ??????ˤϡ????顼???? ???줺?ؿ????̾??̤??¹Ԥ????뤬????ǽ?ϰ????ʤäƤ??ޤ???
XdbeSwapBuffers() ?ǥ??????˴ޤ???ɬ?פϤʤ????㤨?Х????å?ư?? Copied ??ɬ?פ????? ???Υץ졼?????ԡ????٤??Ǥʤ??????ˤϡ? XdbeSwapBuffers() ?ǤϤʤ? XCopyArea() ???Ȥ????롣 XdbeSwapBuffers() ?????ǥ??????˴ޤޤ??????硢?????? XdbeBeginIdiom() ?θƤӽФ???ľ???Ǥʤ????Фʤ??ʤ????ޤ??? XdbeSwapBuffers() ?????ǥ??????˴ޤޤ??????硢???Υꥯ?????ȤΥ????å?ư???????????????? ???å?ư?¾?Υꥯ?????ȤȽŤʤäƤ????С????ǥ??????κǸ??Υꥯ???? ?Ȥϡ??̡??Υꥯ?????Ȥ?Ϣ³???Ƽ¹Ԥ??????褦?˹Ԥ????ʤ????Фʤ??ʤ??? ?㤨?С????ꤷ???????å?ư? Untouched ?Ǥ??ꡢ XdbeSwapBuffers() ?θƤӽФ??θ??˥??????ɥ??????̥Хåե????Ф??ƥ??饤?????ȤΥ????å? Ĺ???????Ѥ??? XFillRectangle() ???Ԥ??줿???硢?????????̥Хåե?(???ǥ??????θ?)?ϡ????ǥ????ब???? ??ǧ???????ʤ??ä????Τ褦?ˤʤ롣
???饤?????ȥ??ץꥱ?????????̤Υ??ǥ??????ץ??벽????1?Ĥμ? ³?????ƤӽФ????褦?ˤʤ??ִʰס״ؿ?????API ?Ԥ????????????ץꥱ?? ????????ȯ?Ԥ????Ѥ??뤳?Ȥ??????????????롣???????δؿ??ϡ? XdbeBeginIdiom(), ???ǥ????ࡢ XdbeEndIdiom() ?θƤӽФ??????????롣???????δؿ??λ??Ѥϡ????ϰϤμ??????ϤäƤκ??? ????ǽ???ݾڤ??롣
??Ϣ????¶
XdbeAllocateBackBufferName(), XdbeBeginIdiom(), XdbeDeallocateBackBufferName(), XdbeEndIdiom(), XdbeFreeVisualInfo(), XdbeGetBackBufferAttributes(), XdbeGetVisualInfo(), XdbeQueryExtension(), XdbeSwapBuffers().
Release 6.5 | X Version 11 |