A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
| Előző változat mindkét oldalon Előző változat Következő változat | Előző változat | ||
|
muszaki_informatika:raylib_vis_functions [2024/01/28 17:31] knehez |
muszaki_informatika:raylib_vis_functions [2024/02/28 10:11] (aktuális) knehez |
||
|---|---|---|---|
| Sor 1: | Sor 1: | ||
| + | ====== 2D alap kiinduló kód ====== | ||
| + | A következő programváz jó kiinduló pont a 2D grafikai fejlesztésekhez. | ||
| + | <sxh c> | ||
| + | #include <raylib.h> | ||
| + | |||
| + | int main() { | ||
| + | // Initialization | ||
| + | const int screenWidth = 800; | ||
| + | const int screenHeight = 450; | ||
| + | InitWindow(screenWidth, screenHeight, "Graphics"); | ||
| + | |||
| + | SetTargetFPS(60); // Set FPS | ||
| + | |||
| + | while (!WindowShouldClose()) { // Main game loop | ||
| + | // Update | ||
| + | |||
| + | // Draw | ||
| + | BeginDrawing(); | ||
| + | |||
| + | ClearBackground(RAYWHITE); // Clear the background | ||
| + | | ||
| + | /// put here your code | ||
| + | | ||
| + | EndDrawing(); | ||
| + | } | ||
| + | CloseWindow(); | ||
| + | return 0; | ||
| + | } | ||
| + | </sxh> | ||
| ====== Szinusz függvény ábrázolása 2D-ben ====== | ====== Szinusz függvény ábrázolása 2D-ben ====== | ||
| Sor 57: | Sor 86: | ||
| return 0; | return 0; | ||
| } | } | ||
| - | |||
| </sxh> | </sxh> | ||
| + | |||
| + | A 6. és 7. sorban megadjuk a képernyő méretet pixelekben. Ezt a két értéket kapja meg paraméterként az //InitWindow()// függvény. | ||
| + | |||
| + | A 22.-es sorban egy vízszintes vonalat rajzolunk a képernyő közepére. Majd egy függőlegeset ami középen metszi. | ||
| + | |||
| + | A 26. sorban kezdődő ciklus i változója szögben számol, a kezdőértéke -400 a vége +399 fok lesz. | ||
| + | |||
| + | Nem pontokban, hanem szakaszokban gondolkodunk, hogy folytonos legyen a kirajzolás, ezért a 30. sorban 1 fokkal jobbra is kiszámoljuk a függvényt értékét. A 29. sorban az y1 értéke -1 és +1 közzé esik a sin() definíciója miatt ezért beszorozzuk 100-al, hogy függőlegesen széthúzzuk. | ||
| + | |||
| + | A 34. sortól azért számoljuk át az értékeket, mert a koordináta rendszer kezdőpontja valójában a bal felső sarokban van és a függőleges tengely fentről lefelé növekszik. | ||
| + | |||
| + | ===== Térbeli ábrázolás ===== | ||
| A következő példa egy kétváltozós függvényt **sinf(sqrtf(x*x + y*y))** térben ábrázol | A következő példa egy kétváltozós függvényt **sinf(sqrtf(x*x + y*y))** térben ábrázol | ||