Wikipedysta:Delimata/Brudnopis/Metapost

Z Wikibooks, biblioteki wolnych podręczników.
Przejdź do nawigacji Przejdź do wyszukiwania
MPlogo.svg
Wikibooks
Jest dostępna wersja do druku podręcznika Wikipedysta:Delimata (edycja)


Spis treści

  1. Wprowadzenie Etap rozwoju: 00% (w dniu 26.07.2008)
  2. Zaczynamy Etap rozwoju: 00% (w dniu 26.07.2008)
  3. Jednostki, rysowanie odcinków, etykiety Etap rozwoju: 00% (w dniu 26.07.2008)
  4. Punkty przecięcia Etap rozwoju: 00% (w dniu 26.07.2008)
  5. Krzywe Etap rozwoju: 00% (w dniu 26.07.2008)
  6. Okręgi, półokręgi i ćwierćokręgi Etap rozwoju: 00% (w dniu 26.07.2008)
  7. Elementy programowania Etap rozwoju: 00% (w dniu 26.07.2008)
  8. Kierunki Etap rozwoju: 00% (w dniu 26.07.2008)
  9. Wypełnianie obszarów Etap rozwoju: 00% (w dniu 26.07.2008)

Dodatki:

  1. Galeria przykładów
  2. Lista słów kluczowych systemu MetaPost

Wikipedysta:Delimata/Brudnopis/MetaPost/WprowadzenieMetaPost/Wprowadzenie

Wprowadzenie[edytuj]

Niniejszy podręcznik jest pomyślany przede wszystkim jako zbiór praktycznych ćwiczeń i przykładów pozwalających na szybkie rozpoczęcie tworzenia rysunków w systemie MetaPost.

Część zamieszczonych tu przykładów została zaczerpnięta z pewnymi modyfikacjami z tutoriala MetaPost by Doing autorstwa André Heck.

Wikipedysta:Delimata/Brudnopis/MetaPost/ZaczynamyMetaPost/Zaczynamy

Zaczynamy zabawę[edytuj]

Jak i czym skompilować. Co z tym można zrobić.

MetaPost jest językiem programowania przeznaczonym do tworzenia grafiki wektorowej, głównie będącej ilustracjami książek. Rysunki w systemie MetaPost powstają jako wynik procesu kompilacji kodu źródłowego.

MetaPost został stworzony przez Johna Hobby w oparciu o system METAFONT prof. Donalda Ervina Knutha. Pliki wynikowe MetaPosta nadają się do włączenia do dokumentów tworzonych w systemie LaTeX.

Plik źródłowy[edytuj]

Pliki źródłowe systemu MetaPost posiadają rozszerzenie .mp. W jednym pliku źródłowym można zawrzeć kilka rysunków. Rysunki rozpoczyna się i kończy poleceniami odpowiednio beginfig i endfig. Ostatnim i wymaganym słowem przetwarzanym przez system MetaPost w pliku jest słowo end. Tak jak w systemie LaTeX w kodzie można umieszczać komentarze (treści nie interpretowane przez kompilator). Komentarz taki ciągnie się od znaku % do końca linii. Struktura najprostszego pliku źródłowego MetaPosta wygląda więc następująco:

beginfig(1)
    %...
endfig;

beginfig(2)
    %...
endfig;

end;

Powyższy kod nie zawiera jeszcze żadnych treści. Znaki komentarza uwidaczniają miejsca w których powinien pojawić się kod poszczególnych rysunków.

Kompilacja[edytuj]

Aby skompilować plik o nazwie plik.mp należy wywołać polecenie

mpost plik.mp

Co dalej?[edytuj]

\includegraphics{plik.1}
\usepackage{graphicx}
\DeclareGraphicsRule{*}{mps}{*}{}

A nie można inaczej?[edytuj]

mptopdf

http://www.tlhiv.org/MetaPost/tools/mptosvg/

Wikipedysta:Delimata/Brudnopis/MetaPost/Jednostki, rysowanie odcinków, etykietyMetapost/Jednostki, rysowanie odcinków, etykiety

Jednostki, rysowanie odcinków, etykiety[edytuj]

Zadanie -- zilustrować geometryczny dowód tw. Pitagorasa

MP-Pythagoras-1.svg
beginfig(1)
    u := 1cm; 
    draw (0,0)--(3u,0)--(0,4u)--cycle;
    draw (0,0)--(3u,0)--(3u,-3u)--(0,-3u)--(0,0);
    draw (0,0)--(0,4u)--(-4u,4u)--(-4u,0)--(0,0;
    draw (3u,0)--(0,4u)--(4u,7u)--(7u,3u)--(3u,0);
    draw (-0.5u,0)--(-3.5u,4u);
    draw (0,3.5u)--(-4u,0.5u);
    draw (1.5u,2u)--(5u,2u);
    draw (5u,1.5u)--(5u,5u);
    draw (5.5u,5u)--(2u,5u);
    draw (2u,5.5u)--(2u,2u);
endfig;
end;

Wikipedysta:Delimata/Brudnopis/MetaPost/Punkty przecięciaMetaPost/Punkty przecięcia

Punkty przecięcia[edytuj]

Zadanie -- zilustrować tw. Cevy, Menelaosa. MP-Ceva.svg

beginfig(1);
    z0=(0cm,0cm);
    z1=(5cm,0cm);
    z2=(3cm,3cm);

    label.llft(btex $A$  etex, z0);
    label.lrt(btex $B$ etex, z1);
    label.top(btex $C$ etex, z2); 

    draw z0 -- z1 -- z2 -- cycle;

    z3=(4cm,1cm);
    z4=whatever[z0,z3]=whatever[z1,z2];
    z5=whatever[z1,z3]=whatever[z2,z0];
    z6=whatever[z2,z3]=whatever[z0,z1];

    draw z0 -- z4;
    draw z1 -- z5;
    draw z2 -- z6;

    label.urt(btex $A'$  etex, z4);
    label.ulft(btex $B'$ etex, z5);
    label.bot(btex $C'$ etex, z6); 
endfig;

Wikipedysta:Delimata/Brudnopis/MetaPost/KrzyweMetaPost/Krzywe

Krzywe[edytuj]

Zadanie -- zilustrować sumę, różnicę, część wspólną zbiorów.

Wikipedysta:Delimata/Brudnopis/MetaPost/Okręgi, półokręgi i ćwierćokręgiMetaPost/Okręgi, półokręgi i ćwierćokręgi

Okręgi, półokręgi i ćwierćokręgi[edytuj]

Zadanie -- narysować ilustracje do przybliżonej kwadratury koła Adama Adamandego Kochańskiego

Kochanski-1.svg Kochanski-2.svg

Wikipedysta:Delimata/Brudnopis/MetaPost/Elementy programowaniaMetaPost/Elementy programowania

Pętle "for"[edytuj]

Zadanie -- zilustrować metodę Newtona numerycznego znajdowania miejsc zerowych funkcji.

Wikipedysta:Delimata/Brudnopis/MetaPost/KierunkiMetaPost/Kierunki

Kierunki[edytuj]

Zadanie -- zilustrować pochodną funkcji jako tangens kąta jaką tworzy styczna do wykresu w danym punkcie z osią odciętych.

Wikipedysta:Delimata/Brudnopis/MetaPost/Wypełnianie obszarówMetaPost/Wypełnianie obszarów

Wypełnienia[edytuj]

Zadanie -- zilustrować całkę oznaczoną funkcji od do zadanej wartości.

Zadanie -- zilustrować definicję całki oznaczonej Riemanna.

Zadanie -- zilustrować drugie prawo Keplera

MP-Kepler.svg

Polecenie clip[edytuj]

Zadanie - wykonać Longimetr Steinhausa

Longimeter-1.svg

Kolor w systemie MetaPost[edytuj]

Zadanie -- zilustrować syntezę addytywną i substraktywną kolorów.

Inne podręczniki[edytuj]