|
|
Görbe rajzolása nem Bezier módszerrel
|
|
Példaprogram letöltése
6560 bájt
|
A GDI+ lehetőséget biztosít arra is, hogy ne csak Bezier görbéket használjuk olyan esetben, amikor görbe vonalak rajzolásával kell foglalkoznunk.
Ez a másik lehetőség a Graphics osztály DrawCurve függvénye. Itt meg kell adnunk egy olyan tömböt, melyben a görbe töréspontjainak a koordinátája szerepel minden elemben, Point típusban.
private void Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
Pen p = new Pen(Color.Red, 1);
Point[] po = {
new Point(100, 100),
new Point(100, 25),
new Point(200, 55),
new Point(250, 20),
new Point(300, 100),
new Point(350, 200),
new Point(250, 250),
new Point(350, 320),
new Point(450, 350),
new Point(350, 450)
};
A kirajzoláshoz a DrawCurve első paramétereként egy Pen objektumot kell megadnunk, mely a rajzolandó görbe vonal tulajdonságait határozza meg. Másodikként jöhet a tömb, mely a töréspont koordinátákat tárolja. Ezt követően egy számot kell megadnunk, mely azt mondja meg, hogy az imént megadott tömböt hányadik elemétől kezdve kell felhasználni. Negyedik paraméterben pedig azt szabályozhatjuk, hogy hány töréspont kerüljön kirajzolásra ebből a tömbből. A DrawCurve függvény utolsó paramétere lesz számunkra a legérdekesebb: itt határozhatjuk meg, hogy a görbe mennyire legyen görbe. Itt egy 0 és 100 közötti számot kell megadnunk. Ha nullát adunk, akkor a görbéből egyenes lesz, vagyis a megadott töréspontok egy-egy egyenes vonallal lesznek összekötve. Ha ez az érték nagyobb nullánál, a görbének annál nagyobb lesz az íve.
e.Graphics.DrawCurve(p, po, 0, trackBar2.Value, (float)trackBar3.Value / 100);
}
Ha arra lenne szükségünk, hogy zárt görbét rajzoljunk, akkor a DrawClosedCurve hívásával elérhetjük, hogy a kezdő és a végpont automatikusan összekötésre kerüljön. Ennek paraméterezése megegyezik a DrawCurve függvénnyel, azzal a különbséggel, hogy a harmadik és negyedik paraméter itt elmarad.
|
Könyv
Ez a cikk megtalálható ebben a könyvben:
C# Software Offline 2001 évkönyv 270. oldal
Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!
|