Az Asymptote programozási nyelv

Tutorial

  1. Rajzolás batch (kötegelt/szakaszos) módban:
  2. Húzzon egy vonalat a (0,0) koordinátából a (100,100) koordinátába, létrehozzuk a test.asy fájlt, ami tartalmazza a következőt: draw((0,0)--(100,100));
    Ekkor kiadhatjuk a következő parancsot:

    asy -V test

    Az MSDOS-t felhasználók alkalmazhatják a „Fogd és vidd” módszert, mellyel a képernyőn látható test.asy-t az Asztalon található asy ikonra "ráhúzva" ugyanezt az eredményt érjük el ( azt is megtehetjük, hogy beállíthatjuk az asy kiterjesztésű file-oknál, hogy az Asymptote legyen az alapértelmezett alkalmazás megnyitáskor). Ennek a módszernek a kimenete egy PostScript fájl lesz: test.eps. Ha inkább PDF –et szeretnénk kimenetként, használjuk parancssorból a következőt:

    asy -V -f pdf test

    Mindkét esetben a –V opció megnyissa a Nézet ablakot, így azonnal megtekintheti az eredményt:

    Vonal kirajzolása

    Itt a – csatlakozó, amivel összekapcsolódik a két pont a (0,0) és a (100, 100) egy szakasszá.

  3. Rajzolás interaktív módban
  4. A másik módszer az interaktív mód, ahol az Asymptote beolvassa az egyes parancsokat, melyeket a felhasználó ad meg. Ha ki szeretné próbálni ezt, kattintson az Asymptote ikonra vagy gépelje be az asy parancsot. Ezután írja be :

    draw((0,0)--(100,100));

    majd Enter és megkapjuk a fenti képet. Megtehetjük, hogy hozzáadunk a megjelenített ábrához a draw parancs ismétlésével vagy törölhetjük az egészet az erase-al. A quit segítségével kiléphetünk az interaktív módból.

  5. Az ábra méretezése
  6. Az Asymptote koordinátáit, mint pl. a (0,0) és a (100,100) pároknak nevezzük (pairs), és ezeket a PostScript „big points” –jai által mérjük (1 bp = 1/72 inch), az alapértelmezett vonal szélessége 0.5 bp.

  7. Címkék –Labels
  8. Címke hozzáadása könnyen végrehajtható az Asymptote-ban, mindössze 3 koordinátára van szükség az első idézőjelek közt egy LaTeX string, aztán egy koordináta, és végül egy tetszőleges eligazítási irány:

    size(3cm); draw(unitsquare); label("$A$",(0,0),SW); label("$B$",(1,0),SE); label("$C$",(1,1),NE); label("$D$",(0,1),NW);

    Címkék