|english version |

Edukacja
Rozwój
Środowisko

Zajęcia informatyczne

2011-02-24 13:42

Zajęcia informatyczne w Gimnazjum w Zabierzowie prowadzone są dla uczniów tej szkoły i mają na celu przybliżenie uczestnikom podstaw programowania na podstawie narzędzi wykorzystywanych przez firmy informatyczne. Zajęcia odbywają się raz w tygodniu przez 1,5h i są prowadzone przez nauczyciela informatyki Panią Lucynę Krupę oraz wolontariusza Pana Marcina Wojasa.

W tym semestrze celem zajęć jest przedstawienie technik programowania grafiki wektorowej w dwóch oraz trzech wymiarach. Na zajęciach budujemy programy, których zadaniem jest wykonywanie różnych operacji na figurach 2D oraz 3D. Figury te są przesuwane, powiększane oraz pomniejszane, obracane wg różnych osi, wyświetlane w perspektywie, tworzone odbicia lustrzane. W tym celu dla grafiki dwuwymiarowej wprowadzamy takie pojęcia jak:

·         punkt 2 wymiarowy (x, y) – Point

·         figura będąca tablicą punktów – Point[]

·         obraz będący tablicą figur – Point[][]

·         macierz przekształceń M2 (m00, m01, m10, m11) – Martix

Odpowiednimi pojęciami wprowadzonymi na potrzeby grafiki trójwymiarowej są:

·         punkt 3 wymiarowy (x, y, z) – Point3

·         figura 3 wymiarowa składająca się z tablicy punktów (Point3) – Figure3

·         obraz 3 wymiarowy będący tablicą figur – Figure3[]

·         macierz przekształceń M3 (m00, m01, m02, m10, m11, m12, m20, m21, m22) – Matrix3

Do przetwarzania obrazów 2 i 3 wymiarowych wykorzystujemy rachunek macierzowy, polegający na mnożeniu punktów obrazu i macierzy przekształcenia:

P’ = P*M

Przykładowe macierze przekształceń 2 wymiarowych:

·         skalowanie (powiększanie oraz pomniejszanie) o czynnik k -

·         obracanie o kąt α -

·         odbicie lustrzane względem osi X –

 

Do przetwarzania grafiki za pomocą rachunku macierzowego przygotowaliśmy jedną z podstawowych metod, której zadaniem jest wykonanie mnożenia i wektora. Tutaj na przykładzie dwóch wymiarów deklaracja klasy Matrix oraz metoda mnożenia wszystkich punków figury:

Point[][] figury = new Point[][] { … };

 

private void mulMatrix(Matrix mx)

{

    for (int licznik = 0; licznik < figury.Length; ++licznik)

    {

        for (int licznik2 = 0; licznik2 < figury[licznik].Length; licznik2++)

        {

            figury[licznik][licznik2] = mx.Mul(figury[licznik][licznik2]);

        }

    }

}

 

public class Matrix

{

    double M00, M01, M10, M11;

 

    public Matrix(double m00, double m01, double m10, double m11)

    {

        M00 = m00;

        M01 = m01;

        M10 = m10;

        M11 = m11;

    }

 

    public Point Mul(Point pt)

    {

        return new Point(pt.X * M00 + pt.Y * M10, pt.X * M01 + pt.Y * M11);

    }

}

Postępy w przygotowaniu programów można śledzić na podstronie (wymaga aby była zainstalowa wtyczka silverlight).

 

Zajęcia informatyczne są częścią projektu  „Drugi Festiwal Nauki w Zabierzowie”, który jest realizowany wspólnie z Gimnazjum w Zabierzowie i dofinansowany przez Kraków Airport (Międzynarodowy Port Lotniczy im. Jana Pawła II Kraków-Balice Sp. z o.o. z siedzibą w Balicach). Dotacja Kraków Airport została udzielona w ramach konkursu grantowego pod nazwą „Wspieramy sąsiadów”.

OPP
Jesteśmy Organizacją Pożytku Publicznego
KRS: 0000209264
i nie prowadzimy dzialności gospodarczej
Adres
Fundacja Edukacja-Rozwój-Środowisko
ul. Szkolna 7
32-082 Bolechowice

Numer konta:
75 16801062 0000300008978372
w INVEST-BANK SA, Oddział w Krakowie
CMS by RISE

Design

www.topsolutions.pl