Pouze tento týden sleva až 80 % na e-learning týkající se PHP. A zároveň využij akce až 30 % zdarma při nákupu e-learningu. Více informací.
Hledáme asistenty pro kurzy programování - pohodová brigáda. Více info
PHP week
Avatar
matesax
Redaktor
Avatar
matesax:19.8.2012 17:36

Dobrý den,
co potřebuji se dá přirovnat k vykreslování lissajousových obrazců. (abyste měli představu). Tak jsem si zvolil Graphics Path. Pole bodů samozřejmě není problém - proto jsem si také Graphics Path vybral. Mám ale problém s parametrem pole bytů. Udělal jsem výčet:

public enum PathPointType
{
    Start = 0,
    Line = 1,
    Bezier = 3,
    Bezier3 = 3,
    PathTypeMask = 7,
    DashMode = 16,
    PathMarker = 32,
    CloseSubpath = 128
}

A vytvořil pole:

byte[] types = new byte[2] { (byte) PathPointType.Start, (byte) PathPointType.Line };

Ovšem to mi není bráno - teprve začínám, proto to má jen 2 prvky. Chtěl jsem jen zjistit, jak to funguje - jen něco vykreslit - cokoliv - pak už bych to snad zvládl sám...

Tak mi buďto pomozte s tímto, nebo navrhněte lepší řešení (nevím, jestli na to jdu správně). Děkuji.

 
Odpovědět
19.8.2012 17:36
Avatar
matesax
Redaktor
Avatar
matesax:19.8.2012 17:50

Smazal jsem výčet a použil System.Drawin­g.Drawing2D - moc jsem se do toho zamotal. Problém ale setrvává - nic se nevykreslí.

Point[] points = new Point[2] { new Point(0, 0), new Point(20, 20) };
byte[] types = new byte[2] { (byte) PathPointType.Start, (byte) PathPointType.Line };
Image figures = new Bitmap(414, 414);

Graphics plot = Graphics.FromImage(figures);

plot.DrawPath(new Pen(new SolidBrush(Color.AliceBlue), 2), new GraphicsPath(points, types));

return figures;
 
Nahoru Odpovědět
19.8.2012 17:50
Tento výukový obsah pomáhají rozvíjet následující firmy, které dost možná hledají právě tebe!
Avatar
matesax
Redaktor
Avatar
Odpovídá na matesax
matesax:19.8.2012 19:53

Pardon - chyba byla v barvě - příliš světlá a tak jsem nevyděl výsledek. Omlouvám se za zbytečné téma...

 
Nahoru Odpovědět
19.8.2012 19:53
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.