HU/dxDrawImageSection: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
 
(10 intermediate revisions by the same user not shown)
Line 1: Line 1:
__NOTOC__  
__NOTOC__  
{{Client function hu}}  
{{Client function hu}}  
Differing from [[dxDrawImage]], this function only draws a part of an image on the screen for a single frame. In order for the image to stay visible continuously, you need to call this function with the same parameters on each frame update (see [[onClientRender]]).
A [[dxDrawImage]]-tól eltérően ez a function csak a kép egy részét rajzolja ki a képernyőre. Annak érdekében, hogy a kép folyamatosan látható maradjon, ezt a function-t minden képfrissítésnél ugyan azokkal a paraméterekkel kell meghívni (lásd [[onClientRender]]).


Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos, hogy elkerüljük a lehetséges elmosodását a képnek.<br/>
Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos, hogy elkerüljük a lehetséges elmosodását a képnek.<br/>
Line 18: Line 18:


===Kötelező paraméterek===
===Kötelező paraméterek===
*'''posX:''' A kép abszolút pozíciója a képernyő bal szélső oldalától számolva.
*'''posX:''' A kép abszolút X pozíciója a képernyő bal szélétől számolva.
*'''posY:''' A kép abszolút pozíciója a képernyő tetejétől számolva.
*'''posY:''' A kép abszolút Y pozíciója a képernyő bal szélétől számolva.
*'''width:''' Az abszolút képszélesség
*'''width:''' A kép abszolút szélessége
*'''height:''' Az magasság képszélesség
*'''height:''' A kép abszolút magassága
*'''u:''' the absolute X coordinate of the top left corner of the section which should be drawn from image
*'''u:''' A képből kirjazolt rész abszolút X kordinátája a képernyő felső sarkából számolva
*'''v:''' the absolute Y coordinate of the top left corner of the section which should be drawn from image
*'''v:''' A képből kirjazolt rész abszolút Y kordinátája a képernyő felső sarkából számolva
*'''usize:''' the absolute width of the image section
*'''usize:''' A kép részének az abszolút szélessége
*'''vsize:''' the absolute height of the image section
*'''vsize:''' A kép részének az abszolút magassága
*'''image:''' Either a [[material]] element or a [[filepath]] of the image which is going to be drawn. (.dds images are also supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring. Use a texture created with [[dxCreateTexture]] to '''speed up drawing'''.
*'''image:''' Either a [[material]] element or a [[filepath]] of the image which is going to be drawn. (.dds images are also supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring. Use a texture created with [[dxCreateTexture]] to '''speed up drawing'''.


Line 32: Line 32:
*'''rotationCenterOffsetX:''' Az abszolút X offset a kép közepétől számolva.
*'''rotationCenterOffsetX:''' Az abszolút X offset a kép közepétől számolva.
*'''rotationCenterOffsetY:''' Az abszolút Y offset a kép közepétől számolva.
*'''rotationCenterOffsetY:''' Az abszolút Y offset a kép közepétől számolva.
*'''color:''' the color of the image, a value produced by [[tocolor]] or hexadecimal number in format: 0xAARRGGBB (AA = alpha, RR = red, GG = green, BB = blue).
*'''color:''' A kép színe, [[tocolor]] által előállított érték, vagy hexadecimális szám: 0xAARRGGBB (AA = átlátszóság, RR = piros, GG = zöld, BB = kék).
*'''postgui :''' A bool representing whether the image should be drawn on top of or behind any ingame GUI (rendered by CEGUI).
*'''postgui :''' Egy igaz/hamis érték, mely azt képviseli, hogy a vonal bármelyik ingame GUI mögött, vagy fölött legyen-e (CEGUI által rajzolt).


===Visszatérési érték===
===Visszatérési érték===
Line 39: Line 39:


==Példa==  
==Példa==  
The example draws a section of an image. (You can use [http://i1325.photobucket.com/albums/u630/Tourmalinelisa2/128x128.jpg this] image to test.)
Ez a példa kirajzolja a kép egy részét. (Használhatja [http://i1325.photobucket.com/albums/u630/Tourmalinelisa2/128x128.jpg ezt] a képet a teszteléshez.)
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
addEventHandler('onClientRender', root, function()
addEventHandler('onClientRender', root, function()

Latest revision as of 17:21, 23 October 2018

A dxDrawImage-tól eltérően ez a function csak a kép egy részét rajzolja ki a képernyőre. Annak érdekében, hogy a kép folyamatosan látható maradjon, ezt a function-t minden képfrissítésnél ugyan azokkal a paraméterekkel kell meghívni (lásd onClientRender).

Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos, hogy elkerüljük a lehetséges elmosodását a képnek.
A kettő négyzetei: 2px, 4px, 8px, 16px, 32px, 64px, 128px, 256px, 512px, 1024px, stb...


[[{{{image}}}|link=|]] Tipp: Használd a(z) dxCreateTexture által létrehozott textúrákat, hogy felgyorsítsd a rajzolását a képnek.
[[{{{image}}}|link=|]] Tipp: Ahhoz, hogy megelőzd a kép sarkainak hibáját amikor felrajzolsz egy képet, tedd a(z) textureEdge-et "clamp"-ra, amikor meghívod a dxCreateTexture funkciót.

Szintaxis

bool dxDrawImageSection ( float posX, float posY, float width, float height,
                          float u, float v, float usize, float vsize, mixed image,
                        [ float rotation = 0, float rotationCenterOffsetX = 0, float rotationCenterOffsetY = 0,
                          int color = white, bool postGUI = false ] )

Kötelező paraméterek

  • posX: A kép abszolút X pozíciója a képernyő bal szélétől számolva.
  • posY: A kép abszolút Y pozíciója a képernyő bal szélétől számolva.
  • width: A kép abszolút szélessége
  • height: A kép abszolút magassága
  • u: A képből kirjazolt rész abszolút X kordinátája a képernyő felső sarkából számolva
  • v: A képből kirjazolt rész abszolút Y kordinátája a képernyő felső sarkából számolva
  • usize: A kép részének az abszolút szélessége
  • vsize: A kép részének az abszolút magassága
  • image: Either a material element or a filepath of the image which is going to be drawn. (.dds images are also supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring. Use a texture created with dxCreateTexture to speed up drawing.

Tetszőleges paraméterek

  • rotation: A kép tengelyforgása fokokban mérve.
  • rotationCenterOffsetX: Az abszolút X offset a kép közepétől számolva.
  • rotationCenterOffsetY: Az abszolút Y offset a kép közepétől számolva.
  • color: A kép színe, tocolor által előállított érték, vagy hexadecimális szám: 0xAARRGGBB (AA = átlátszóság, RR = piros, GG = zöld, BB = kék).
  • postgui : Egy igaz/hamis érték, mely azt képviseli, hogy a vonal bármelyik ingame GUI mögött, vagy fölött legyen-e (CEGUI által rajzolt).

Visszatérési érték

Visszatérési értéke true, ha sikerült, egyébként false.

Példa

Ez a példa kirajzolja a kép egy részét. (Használhatja ezt a képet a teszteléshez.)

addEventHandler('onClientRender', root, function()
  dxDrawImageSection(400, 200, 64, 64, 0, 0, 64, 64, 'img.jpg') -- Draw a certain section
  dxDrawImage(400, 300, 128, 128, 'img.jpg') -- Draw the whole image to be able to identify the difference
end)

Lásd még

Fordította