Lazarus 2.2.2 (2022.05.19.)
Letöltés

  • Oldal:
  • 1

TÉMA:

Kördarab rajzolás 2022 okt. 09 09:07 #2611

  • Tomi
  • Tomi profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 62
  • Köszönetek: 1
Akkor a balra, fent, jobbra, lent paraméterek jelölik azt a téglalap alakú területet, amelyen belül a rajzolás történik?

Kördarab rajzolás 2022 okt. 08 13:30 #2610

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 485
  • Köszönetek: 85
Az előző válaszomban a második két paraméter értelmezését rosszul írtam. Most javítottam a helyes értelmezésre, mely a következő:
RadialPie( balra, fent, jobbra, lent, kezdoszog * 16, vegeszog * 16 );
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 2.3.0 -- FPC 3.3.1-- GNU/Linux 5.4.0 x86_64

Kördarab rajzolás 2022 okt. 08 09:17 #2609

  • Tomi
  • Tomi profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 62
  • Köszönetek: 1
Köszönöm a választ! Nagyjából sikerült is vele boldogulnom, de csak nagyjából és még nem is értés szintjén megy a dolog. Tehát, egy fektetett ellipszis bal fölső negyedét sikerült kirajzolnom így:
palyakep.canvas.radialpie(iderakx,ideraky,iderakx+palyakep.width div 8 * 2,ideraky+palyakep.height div 8 * 2,90*16,90*16);
ennek alapján úgy értelmeztem, hogy az első négy paraméter azt a téglalap alakú területet jelöli, amelyen belül a kirajzolás megtörténik. De viszont itt vajon miért kellett a "* 2"-t is odaírnom, azaz miért kellett 2-vel szoroznom a 3. és 4. paraméter értékét, hogy a megfelelő nagyságban rajzolódjon ki az ellipszisdarab?
És vajon ennek a tükörképe miért nem rajzolódik ki ugyanezen koordinátákon ugyanekkora méretben? Mert erre:
palyakep.canvas.radialpie(iderakx,ideraky,iderakx+palyakep.width div 8 ,ideraky+palyakep.height div 8,0,90*16);
csak egy negyedakkora ellipsziscikk rajzolódik ki, ráadásul a 2-vel való szorzást is el kell hagynom, hogy egyáltalán rajzoljon valamit.
Akkor rosszul értelmezem és/vagy használom az első négy paraméterét a függvénynek?

Kördarab rajzolás 2022 okt. 06 17:52 #2607

  • Gábor
  • Gábor profilkép
  • Adminisztrátor
  • Adminisztrátor
  • Hozzászólások: 485
  • Köszönetek: 85
Használd a TCanvas.RadialPie() eljárást, a paramétereket az alábbi módon értelmezve és használva:
RadialPie( bal, fent, szélesség, magasság, kezdoszog * 16, vegeszog * 16 );
helyett
RadialPie( bal, fent, szélesség, magasság, kezdoszog * 16, vegeszog * 16 );

Ha a kezdőszög értéke nulla akkor az 3 óránál van. A szögek -360 és 360 közötti értékek lehetnek. A szögértékek 16-tal szorzása szükséges a pontos megjelenítéshez (részletek a RadialPie() eljárás leírásában).
Hogyan kérdezzünk okosan? / Mit kell tennünk kérdezés előtt? -- Lazarus 2.3.0 -- FPC 3.3.1-- GNU/Linux 5.4.0 x86_64

Kördarab rajzolás 2022 okt. 05 14:57 #2606

  • Tomi
  • Tomi profilkép Témaindító
  • Haladó forumozó
  • Haladó forumozó
  • Hozzászólások: 62
  • Köszönetek: 1
Sziasztok!
Olyan alakzatot szeretnék kirajzolni, amely egy kör negyedrészét ábrázolja, pontosabban inkább egy ellipszis negyedrészét, tehát a sugár X és Y irányban eltérő.
Ha jól láttam, akkor a Pie() függvény alkalmas ilyen körszelet rajzolására, de nem értem a paramétereit, és így eléggé furcsa alakzatok jönnek ki.
Valaki elmagyarázná, hogy mivel és hogyan rajzolható ki ilyen alakzat?

  • Oldal:
  • 1