• C++ Builder muhitida grafika va Canvas-grafikasining funktsiyalari
  • Grafika bilan ishlan uchun funktsiyalar




    Download 33.14 Kb.
    bet2/4
    Sana28.10.2022
    Hajmi33.14 Kb.
    #28451
    1   2   3   4
    Bog'liq
    Mavzu Borland C Builderning grafik vositalari. Reja
    2 5262614962408262335
    Grafika bilan ishlan uchun funktsiyalar
    Eng oddiy funktsiyalar grafik primitivlar deb ataladi. Primitivlarni, shartli ravishda quyidagi guruhlarga bo’lish mumkin:konturlar chizishning primitivlari va yuzali figuralar. Grafik primitizlarni chiqarish, shakl yuziga to’g’ri keladi. Bu yuza Canvas deb ataladi.
    Kontur primitivlari: chiziqlar (line), to’g’riburchaklar (rectangle), yoy (arc), aylanalar (circle), ellipslar (ellipse), ko’pburchaklar (drawpoly) va boshqa ichi bo’yalmaydigan shakllar.
    Yuzali ichi to’ldiriluvchan shakllarga, bo’yaladigan to’g’riburchaklar (FillRect), dumaloq va ellipssimon sektorlar (Pie) kiradi. Agarda siz chizadigan shakl yopiq, ammo bo’yalmaydigan bo’lsa, masalan, (Poligon) ko’pburchagi, u holda (FloodFill, FillStyle) bo’yash funktsiyasi yordamida uni shtrixlash mumkin.Chizish rangini tanlash uchun, grafik primitivlarning rang berish funktsiyasidan foydalaniladi (Pen- >Color).
    Jadval 1 - kanvaning metod va xossalari

    Metod (Funktsiya)

    xossa

    harakat

    MoveTo

    PenPos

    Qalamning dastlabki holatini aniqlaydi

    LineTo

    PenPos

    Berilgan nuqtagacha togri chiziq chizadi




    Rectangle




    To’g’riburchak chizadi

    Ellipse




    Ellips chizadi

    Arc




    Yoy chizadi

    Polyline




    Siniq chiziq chizadi

    PolyBezier




    Qiyshiq Beze chizadi

    Chord




    Sektor chizadi

    DrawFocusRect




    To'g'ri burchakli to'rtburchak chizadi

    FrameRect




    To’g’riburchak atrofidan ramka chiqaradi

    Pie




    Aylana sektorini chiqaradi

    TextOut




    Tekst chizig’ini chiqaradi

    TextHeight




    Tekst chizig’i balandligini belgilaydi

    TextWidth




    Tekst chizig’ini chiqarish uchun kenglikni belgilaydi

    TextRect




    To’g’ri burchak ichida matn yozish

    FillRect




    Belgilangan to’g’riburchakni rang bilan va dastlabki cho’tka shakli bilan to’ldirish.

    FloodFill




    Kanva maydonini (istalgan shaklda) berilgan rang bilan to’ldirish




    Pen

    Qalamning rangi, uslubi, kengligi va rejimini o’rnatish uchun ishlatiladi




    Brush

    Kanvaning fon va grafik shaklida rang va tuzilishini o’rnatish uchun ishlatiladi




    Font

    Berilgan rang, o’lcham, va usuldagi shriftni o’rnatish uchun ishlatiladi




    Pixels

    Berilgan kanva pikseli rangini o’qish va yozish uchun ishlatiladi

    CopyRect

    CopyMode

    CopyMode rejimida kanvaning to’g’riburchak maydonini ko’chiradi

    BrushCopy




    Rang almashtirish bilan kanvaning to’g’riburchak maydonini ko’chiradi

    Draw




    Kanvaning berilgan joyida, bitli obraz, piktogramma, metafaylni chizadi

    StretchDraw




    Berilgan togriburchakni toliq toldirish uchun bitli obraz, piktogramma, metafaylni chizadi

    C++ Builder muhitida grafika va Canvas-grafikasining funktsiyalari


    Polotno (Canvas) C++ Builder polotno grafikasi, shakl “polotnosi” ustida grafik primitivlarni chizish uchun mo’ljallangan. Dastur grafikani Canvas(Canvas -chizish uchun polotno) xossasi to’g’ri keladigan shakl (yoki Image komponenti) yuziga chiqarishi mumkin. Image komponenti yoki shakl yuzida chiziq, aylana, to’g’riburchak, yoki boshqa bir grafik element (primitiv) paydo bo’lishi uchun, Canvas xossasiga mos keluvchi metod qo’llash (jad. 2) mumkin.
    Masalan,
    Forml->Canvas->Rectangle( 10,10,50,50);
    Shakl ustida to’g’riburchak chizadi.
    Jadval 2-grafik primitivlarini o’chirish usullari

    Usul

    Xarakat

    LineTo(x,y)

    Belgilangan nuqtadan, koordinatalari berilgan nuqtagacha chiziq chizadi

    Rectangle (xl,yl,x2,y2)

    Chap tepa va o’ng past burchaklari xl,yl,x2,y2 - koordinatali bo’lgan to’g’ri to’rtburchak chizadi

    FillRect (xl,yl,x2,y2)

    Diagonal burchaklari x\,yl,x2,y2 - koordinatali bo’lgan bo’yalgan to’g’ri to’rtburchak chizadi




    FrameRect (xl,yl,x2,y2)

    Diagonal burchaklari xl,yl,x2,y2 - koordinatali bo’lgan to’g’ri to’rtburchak konturini chizadi

    RoundRect
    (xl, yl,x2,y2,x3,y3)

    Burchaklari dumaloqlashgan to’g’ri to’rtburchak chizadi

    Ellipse (xl,yl,x2,y2)

    Ellips yoki aylana chizadi, xl,yl,x2,y2 - ichiga ellips chiziladigan to’g’ri to’rtburchakning, yoki ichiga aylana chiziladigan kvadratning koordinatalari

    Polyline (points,n)

    Siniq chiziq chizadi, points - TPoint tipining massivi.



    Polyline metodi, ketma ketlikda, koordinatalari massivda joylashgan nuqtalarni tekis kesmalar bilan bog’lab siniq chiziq chizib boradi: birinchisini ikkinchisi bilan, ikkinchisini uchinchisi bilan va h.k.
    Grafik primitivlarni chiqarish metodlari Canvas xossasiga, ustida chizish mumkin bo’lgan abstrakt polotno sifatida qaraydi. Polotno, alohida nuqtalar-piksellardan tashkil topgan. Polotno yuzasida pikselning o’rni gorizontal (X) va vertikal (Y) koordinatalar bilan ifodalanadi. Koordinatalar pastdan tepaga va chapdan o’ngga tomon o’sib boradi. (rasm. 1). Shakl yuzasida chapdan tepadagi piksel koordinatalari (0,0), o’ngdan pastdagisi - (ClientWidth, ClientHeight).
    Elementlari polotno nuqtalarining rangi haqida ma’lumot saqlaydigan massivni tashkil etuvchi Pixels xossalari orqali alohida piksellarga yo’l ochish mumkin.
    Pen ob’ektining xossalari (3 jadval) geometrik shaklning chegaralarini yoki chiziq kengligi va tipini, rangini belgilab beradi. Brush ob’ekti xossalari (jadval 4) to’g’rito’rtburchak, sektor, aylana yoki yopiq konturlar ichlarini bo’yash usuli va rangini belgilab beradi.
    Jadval 3 -Pen ob’ektining xossalari

    Xossasi

    Aniqlaydi

    Color

    Chiziq rangini

    Width

    Chiziq kengligini (pikselda beriladi)

    Style

    Chiziq korinishini (psSolid - toliq; psDash - punktirli, uzun shtrixlar; psDot - punktirli, qisqa shtrixlar; psDashDot - punktirli, uzun va qisqa shtrixlar ketmaketligi; psDashDotDot - punktirli, bitta uzun va ikkita qisqa shtrixlar ketmaketligi; psClear - chiziq korinmaydi (maydon chegaralarini korsatish lozim bolmagan xolatlarda ishlatiladi -masalan, togritortburchakda)

    Jadval 4 -Brush ob’ektining xossalari



    Xossasi

    Aniqlaydi

    Color

    Yopiq maydonning bo’yalish rangi

    Style

    Maydoni to’ldirish uslubi (bsSolid - to’liq bo’yash. Shtrixlash: bsHorizontal - gorizontal; bsVertical - vertikal; bsFDiagonal - oldinga egik chiziqlar bilan diagonal; bsBDiagonal - orqaga egik chiziqlar bilan diagonal; bsCross - katak; bsDiagCross - diagonal katak

    Quyidagi buyruqlar olimpiada xalqalari ifoda etuvchi bayroq chizadi - (rasm.


    9):
    bayroq polotnosi
    Image1->Canvas->Pen->Width = 1;
    Image1->Canvas->Pen->Color q = clBlack;
    Image1->Canvas->Brush->Color = clCream;
    Image1 ->Canvas->Rectangle(30,30,150,150);
    Image1->Canvas->Pen->Width =2; // xalqalar kengligi

    Download 33.14 Kb.
    1   2   3   4




    Download 33.14 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Grafika bilan ishlan uchun funktsiyalar

    Download 33.14 Kb.