Grafický editor – 9. díl
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Grafický editor – 9. dílGrafický editor – 9. díl

 
Hledat
Vybavení pro Laser Game
Spuštěn Filmový magazín
Laser Game Brno
Laser Game Ostrava

Grafický editor – 9. díl

Google       Google       18. 4. 2006       9 394×

Původně jsem měl v plánu vás seznámit s tvorbou elips a kruhů, které jsou necelé, jenže plány se mění. Sice by to byla možnost, ale určitě víc využijete kruhů a elips, které jsou vevnitř vybarvené, a proto se podíváme prve na to, jak vybarvovat různé části obrázků, abychom mohli vytvářet plné elipsy a kružnice. Ale nebude na to psát vlastní funkci.

Reklama
Reklama

Psaní vlastní funkce by bylo moc zdlouhavé a složité. Proto využijeme API funkce ExtFloodFill. Kód bude vypadat takto:


Private Declare Function ExtFloodFill Lib "gdi32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal crColor As Long, ByVal wFillType As Long) As Long
    
Private Sub Vybarvi(Img As PictureBox, X As Single, Y As Single, mode As Boolean, clr As Long, gclr As Long)
    On Error Resume Next
    Imgp = Img.Point(X, Y)
    Img.FillColor = clr
    Img.FillStyle = vbSolid
    If mode = True Then
        rtn = ExtFloodFill(Img.hdc, X, Y, gclr, 0)
    End If
    If mode = False Then
        rtn = ExtFloodFill(Img.hdc, X, Y, Imgp, 1)
    End If
End Sub

Private Sub Picture1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    Vybarvi Picture1, X, Y, True, &H663322, 0
End Sub

Co tento kód umí? No umí vybarvovat části obrázků, které mají něco společného. To, čím bude tato společná vlastnost, má na starost parametr mode. Pokud bude mít hodnotu False, bude se vybarvovat každá plocha, která má stejnou barvu a je spojená. Pokud ale dáme do parametru mode True, budeme využívat speciální typ vybarvování a ten funguje tak, že se vybarví určitá část ohraničená nějakou barvou. Zatím nepočítejte s tím, že by se brala v potaz tolerance nebo tak, to už jsou techniky pokročilejší, na které si budeme muset psát vlastní algoritmy anebo si hledat knihovny.

Ještě bych se vrátil ke kódu a popsal parametry. První z nich (Img) určuje obrázek, ve kterém pracujeme. X a Y určují souřadnice. Mode, jak jsem psal, určuje mód vybarvování, Clr barvu, kterou se vybarvuje a poslední gclr se používá, jen když je mode na true a určuje barvu ohraničení, kterým se vybarvování řídí.

Příště tedy ony slibované částečné kruhy a elipsy.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jiří ChytilAutor programuje ve VB, zajímá se o elektrotechniku, studuje na SOŠ Elektrotechnické - obor číslicová technika.
Web    

Nové články

Obrázek ke článku Využití .htaccess na malém webu

Využití .htaccess na malém webu

V dnešní době existuje spoustu cms, které mnohdy ale vůbec nepotřebujeme a stačila by nám pouze základní funkčnost k úpravě url, přesměrování. K tomuto účelu je ideální .htaccess soubor, který nám se všemi těmato úpravami umí pomoct.

Reklama
Reklama
Obrázek ke článku Češi tlačí obce do otevřené komunikace – Mobilní Rozhlas si loni pořídilo dalších 171 měst a obcí

Češi tlačí obce do otevřené komunikace – Mobilní Rozhlas si loni pořídilo dalších 171 měst a obcí

Obyvatelé Česka se mnohem více zapojují do veřejného dění. Umožňují jim to přímo samosprávy, které stále častěji využívají nástroje takzvané chytré komunikace a participace. Dokládají to data za rok 2019 ekosystému Mobilní Rozhlas, lídra v oblasti chytré obecní komunikace. Zapojilo se do něj 171 nových měst a obcí, zaregistrovalo celkem 100 tisíc občanů a místní samosprávy jeho prostřednictvím rozeslaly třikrát více adresných zpráv než v roce 2018

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032020 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý