XvCg`
_[`s@ɂ́A܂łɈĂڕ`̑ɁA XvCg`Ƃ@݂܂Bł́ÃXvCg`ɂĐ܂B
X|T[N
XvCg`
XvCg`Ƃ́A{Q[Ȃǂł 2DCG SɁAn[hEFAŎĂ̋@\A \tgEFAIɎ̂łB XvCg`̊TÓAAjf̐ߒɂA Z̊TOƔɂ悭Ă܂B ̓Iɂ́A܂`悷}`摜̐A XvCgƌĂuwv_[ɓo^Ă܂B āA`掞ɂ̃XvCg_[ŏd˂čA1 ̊G܂B
XvCg`悪ɈЗ͂̂́A Aj[VȂǂsłB ႦAAj[V̒ɁÂƓȂ̂Ƃ܂傤B ̏ꍇAʂɕ\Gڕ`ŗpӂƁAAj[Ṽt[Ɂu ܂wiNAA đSĂ̐}`摜 draw nŕ`悷 vƂsȂȂ܂B
ŃXvCg`gpƁA ŏɑSĂ̐}`摜XvCgƂēo^ĂAƂ͖̕`掞ɁA XvCgςނ̂ŁAvŐLqVvɂȂꍇ܂B
ȂAXvCg`́Axʂłڕ`菭LłBApn[hEFAł̕`ȂƂAVCSSL̂悤ȃXNvgł̕`@\ɂẮAقǃXvCggi`\ȂǁjłȂACɂقǂ̑̊͐܂BPɁAǂ̕R[hVvɏ邩Ƃϓ_őIׂOKłB
XvCg̊{
ڕ`ƈقȂAXvCg̓vOsɓA FςȂǁAIɊp܂B ŁA̓IȃXvCg̐OɁA XvCgIɊp邽߂̊{ɂďqׂĂ܂B
XvCg̐
ۂ̃XvCgɂ͗lXȎނ̂̂܂A͑Snew`Sprite Ő ܂B`̕ɂ̓XvCg̎ނɌŗL̖̂܂B̓IȐ͎͂ň܂B
- ̌` -̊́AXvCgÃXvCgɌŗL̎ʔԍłuXvCgIDvԂ܂B
XvCg̓o^
XvCǵA_[ɓo^ȂΕ`悳܂B _[ɃXvCgo^ɂ́AmountSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- spriteID: o^XvCg̃XvCgID w肵܂B
- rendererID: o^惌_[ID w肵܂B
XvCg̕`
_[ɂׂẴXvCgo^A ̃XvCgdˍ킹čA1 ̃OtBbNXɕ`悷Kv܂B ɂ paintGraphics2D gp܂B
- dl -͈ȉ̒ʂłF
- rendererID: _[IDw肵܂B
̊R[܂ŁAXvCg͍̍sȂ̂łӂB
eXvCg
XvCgɂ́Aw}``悷́A eLXg`悷́A摜`悷̂ȂǁAlXȎނ݂̂̂܂B ȉł́AeXvCg̐Ǝgp@܂B
ȂAȉɓoꂷ͑SāA߂lƂāAXvCgIDԂ܂B
_XvCg
_XvCgɂ́AnewPointSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x, y: _̍Ww肵܂B
- radius: _̔aw肵܂B
XvCg
XvCgɂ́AnewLineSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x1, x2: ̎n_̍Ww肵܂B
- x2, y2: ̏I_̍Ww肵܂B
`XvCg
`XvCgɂ́AnewRectangleSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x, y: 㒸_̍Ww肵܂B
- width, height: ƍw肵܂B
- fill: true ̏ꍇɓhԂ`Afalse ̏ꍇɋÊ݂̕`ƂȂ܂B
ȉ~XvCg
ȉ~XvCgɂ́AnewEllipseSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x, y: Oڒ`̍㒸_̍Ww肵܂B
- width, height: Oڒ`̕ƍw肵܂B
- fill: true ̏ꍇɓhԂ`Afalse ̏ꍇɋÊ݂̕`ƂȂ܂B
ȉ~́AŎw肵`̈ɓڂ悤ɕ`悳܂B
p`XvCg
p`XvCgɂ́AnewPolygonSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x[], y[]: p`\钸_̍WAzŎw肵܂B
- fill: true ̏ꍇɓhԂ`Afalse ̏ꍇɋÊ݂̕`ƂȂ܂B
܂XvCg
܂XvCgɂ́AnewPolylineSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x[], y[]: p`\钸_̍WAzŎw肵܂B
eLXgXvCg
eLXgXvCgɂ́AnewTextSprite gp܂B
- ̌` -͈ȉ̒ʂłF
- x, y: eLXgn_̃A_[Cij̍Ww肵܂BW͉ʍ_( 0, 0 )ƂAEX AY Ŏw肵܂B
- lineWidth, lineHeight: eLXg̍sƍsԊuw肵܂B`掞ɍseLXǵAʼnsĎ̍sɕ`悳܂B
- text: \eLXge
tHgTCY̐ݒ
eLXg̕`ɎgptHg̑傫ύXꍇ́AsetSpriteFontSize gp܂B
- ̌` -͈ȉ̒ʂłF
- spriteID: XvCgID w肵܂B
- fontSize: tHg̑傫pti|CgAʼnjPʂŎw肵܂B
pt Ƃ̂̓tHg̑傫w肷ʓIȒPʂŁAʕ\ۂɈ̊ƂȂ̂͑12pt Oł傤B10pt ƂׂA15pt Ə傫߂̕ƂȂ܂BŒӂȂȂȂ̂́A1pt sNZɑΉ邩Ƃ̂͊ɂĈقȂƂ_łBقȂ鎖͂܂Aꕶ萔sNZ鎖͂悭܂B]āAeLXg`悷ۂ́A܂VrAł͂ȂAx鎖z肵CAEg鎖܂B
摜XvCg
摜XvCgɂ́AnewImageSprite p܂B
- dl -int x, int y, int width, int height, int graphicsID
)
͈ȉ̒ʂłF
- x, y: 摜`悷鍶㒸_̍Ww肵܂B
- width, height: 摜`悷镝ƍw肵܂B
- graphicsID: `悷摜e\OtBbNXf[^ID w肵܂B
x, x ɂ́A摜`悷鍶㒸_̍WAwidth, height ɂ͕ƍw肵܂BŌ̈graphicsID ɂ́A`悷OtBbNXf[^ID w肵܂B
Ɏw肷OtBbNXf[^IDɂ́AGraphicsCunewGraphics( string fileName )ʼn摜t@Cǂݍ̂Aʂ̃_[ŕ`悵̂Ȃǂpł܂B
vO
ł́Aňe`gpĂ݂܂傤Bȉ̂悤ɋLqAsĂ݂ĂB
ȂA摜̕`sꍇ́AvOƓtH_ɁuTest.pngvƂOPNG `摜t@CuĂsĂi炩_E[hł܂jB
import Graphics;
import Graphics2D;
import GUI;
// OtBbNXf[^ƃ_[̐
int graphicsID = newGraphics( );
int rendererID = newGraphics2DRenderer( 800, 600, graphicsID );
// \ʂ̐
int windowID = newWindow( 0, 0, 800, 600, " Hello 2DCG ! " );
int labelID = newImageLabel( 0, 0, 800, 600, graphicsID );
mountComponent( labelID, windowID );
// wiF𔒂ɐݒ肵ăNA
setGraphics2DColor( rendererID, 255, 255, 255, 255 );
clearGraphics2D( rendererID );
// =========================
// `揈
// =========================
// (0,0)(100,100)ԐXvCgiԐFj
int lineSpriteID = newLineSprite( 0, 0, 100, 100 );
setSpriteColor( lineSpriteID, 255, 0, 0, 255 );
mountSprite( lineSpriteID, rendererID );
// (100,100)(500~300)̒`XvCgiFj
int rectSpriteID = newRectangleSprite( 100, 100, 500, 300, true );
setSpriteColor( rectSpriteID, 0, 0, 255, 255 );
mountSprite( rectSpriteID, rendererID );
// (100,100)(500~300)̑ȉ~XvCgiΐFj
int ovalSpriteID = newEllipseSprite( 100, 100, 500, 300, true );
setSpriteColor( ovalSpriteID, 0, 255, 0, 255 );
mountSprite( ovalSpriteID, rendererID );
// p`A܂XvCgpx zAy zp
int x[ 3 ];
x[ 0 ] = 100;
x[ 1 ] = 300;
x[ 2 ] = 300;
int y[ 3 ];
y[ 0 ] = 100;
y[ 1 ] = 100;
y[ 2 ] = 300;
// x zAy z_Ƃ鑽p`XvCgiFj
int pgSpriteID = newPolygonSprite( x, y, true );
setSpriteColor( pgSpriteID, 255, 255, 0, 255 );
mountSprite( pgSpriteID, rendererID );
// x zAy z_Ƃ܂XvCgiԐFj
int plSpriteID = newPolylineSprite( x, y );
setSpriteColor( plSpriteID, 255, 0, 0, 255 );
mountSprite( plSpriteID, rendererID );
// (100,100)ɃeLXgXvCgiFj
string text = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int txtSpriteID = newTextSprite( 300, 50, 250, 35, text );
setSpriteColor( txtSpriteID, 0, 0, 0, 255 );
setSpriteFontSize( txtSpriteID, 30 );
mountSprite( txtSpriteID, rendererID );
// 摜t@CuTest.pngvǂݍ݁A摜XvCg
int graphicsID2 = newGraphics( "Test.png" );
int imSpriteID = newImageSprite( 350, 100, 300, 200, graphicsID2 );
mountSprite( imSpriteID, rendererID );
// =========================
// `揈 ܂
// =========================
// o^ĂXvCgĕ`
paintGraphics2D( rendererID );
// ʂ̕`
paintComponent( labelID );
paintComponent( windowID );
Sample.vcssl
̃vOsƁAEBhE\ȀɗlXȐ}`\܂B

ɎgptHǵAɂĈقȂ܂BtHgꍇɂsetSpriteFont( int SpriteID, string fontName )gpĂB