PyX jest pakietem Pythona do grafiki wektorowej. Pozawala zatem tworzyd pliki EPS oraz PDF.



Podobne dokumenty
Projektowanie graficzne. Wykład 2. Open Office Draw

4. Rysowanie krzywych

Zajęcia nr 15 JavaScript wprowadzenie do JavaScript

WIZUALIZACJA INFORMACJI TEKSTOWEJ WSTĘP DO HTML 5 CANVAS

Jarosław Kuchta Podstawy Programowania Obiektowego. Podstawy grafiki obiektowej

Delphi podstawy programowania. Środowisko Delphi


Wartości x-ów : Wartości x ów można w Scilabie zdefiniować na kilka sposobów, wpisując odpowiednie polecenie na konsoli.

Obiektowy PHP. Czym jest obiekt? Definicja klasy. Składowe klasy pola i metody

Moduł Grafika komputerowa i multimedia 312[01].S2. Ćwiczenia Podstawy programu Autocad 2011 Prosta

GRAFIKA WEKTOROWA. WYKŁAD 1 Wprowadzenie do grafiki wektorowej. Jacek Wiślicki Katedra Informatyki Stosowanej

Jak uzyskać efekt 3D na zdjęciach z wykorzystaniem programu InkScape

CPT-CAD - Program do tworzenia dokumentacji geologicznej i geotechnicznej

C-geo definicja/edycja obiektów, zapis danych w formacie shape

Programowanie: grafika w SciLab Slajd 1. Programowanie: grafika w SciLab

Szybkie tworzenie grafiki w GcIde

Wizualne systemy programowania. Wykład 11 Grafika. dr Artur Bartoszewski -Wizualne systemy programowania, sem. III- WYKŁAD

Pascal - grafika. Uruchomienie trybu graficznego. Moduł graph. Domyślny tryb graficzny

zajęcia 2 Definiowanie wektorów:

Technologie informacyjne: Excel i Python

4.6 OpenOffice Draw tworzenie ilustracji

Paweł Kaźmierczak. styczeń 2009

SCENARIUSZ LEKCJI. Streszczenie. Czas realizacji. Podstawa programowa

Komputerowy skład w L A T E X

znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.

Latex. Laboratorium 6. Akademia im. Jan Długosza.

Obsługa grafiki w Delphi, rysowanie na płótnie, obsługa myszki, zapisywanie obrazków do plików, bitmapy pozaekranowe.

Animacje cz. 2. Rysujemy koło zębate

KATEGORIA OBSZAR WIEDZY

FUNKCJE. Kurs ZDAJ MATURĘ Z MATEMATYKI MODUŁ 5 Teoria funkcje cz.1. Definicja funkcji i wiadomości podstawowe

Lazarus dla początkujących, część II

Sylabus Moduł 4: Grafika menedżerska i prezentacyjna

Wprowadzenie do rysowania w 3D. Praca w środowisku 3D

Gambit Centrum Oprogramowania i Szkoleń Sp. z o.o.

Zastosowania informatyki w geologii ćwiczenia 1,2 INKSCAPE 1

Inkscape. Menu. 1 SVG (ang. Scalable Vector Graphics) uniwersalny format dwuwymiarowej, statycznej i

Instrukcja InPro BMS Siemens FC700A InPro Professional 4.1

Grafika w LaTeXu Łukasz Daros & Jakub Jakubiec

Następnie zdefiniujemy utworzony szkic jako blok, wybieramy zatem jak poniżej

Tik Z wiadomości wstępne

W tej instrukcji zostanie opisany sposób w jaki tworzy się, edytuje i usuwa obiekty na mapie. Następnie wybierz Rysuj

Laboratorium 7 Blog: dodawanie i edycja wpisów

Zajęcia komputerowe klasy I-III- wymagania

Dodatkowe pakiety i polecenia L A TEXowe

ECDL/ICDL CAD 2D Moduł S8 Sylabus - wersja 1.5

Zadanie 1. Tworzenie nowej "strony sieci WEB". Będziemy korzystad ze stron w technologii ASP.NET.

Wprowadzenie do Scilab: funkcje i wykresy

xmlns:prism= c. <ContentControl prism:regionmanager.regionname="mainregion" />

Sigplus. Galeria w Joomla

Edytor tekstu Word 2007


Wykład VII PASCAL - grafika;

BOC INFORMATION TECHNOLOGIES CONSULTING. Zadania. Przykład bankowy

Kurs Adobe Photoshop Elements 11

1. Operacje na plikach i katalogach Chcąc przeprowadzić analizę danych należy załadować/wczytać dane do R, a wyniki z pewnością chcemy zapisać.

1. Operacje na plikach i katalogach Chcąc przeprowadzić analizę danych należy załadować/wczytać dane do R, a wyniki z pewnością chcemy zapisać.

FUNKCJA LINIOWA, RÓWNANIA I UKŁADY RÓWNAŃ LINIOWYCH

BIOWEB INSTRUKCJA URUCHOMIENIA W IDE ECLIPSE RATIONAL SOFTWARE ARCHITECT

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Nr sprawy: 23/2011 Załącznik nr 2 do umowy PROGRAM SZKOLENIA WRAZ Z HARMONOGRAMEM CZASOWO-MERYTORYCZNYM SZKOLENIA

Obsługa programu Paint materiały szkoleniowe

GIS / Projekt obiektu elektroenergetycznego. Ćwiczenia 2 Mapa wektorowa PG/ Warstwy

Dokumentacja WebMaster ver 1.0

VinCent Administrator

Konfiguracja programu

3.4. Opis konfiguracji layoutów.

Przewodnik po obszarze roboczym

Instalacja NOD32 Remote Administrator

Język programowania zbiór reguł określających, które ciągi symboli tworzą program komputerowy oraz jakie obliczenia opisuje ten program.

WAŻNE! colour.me Google Fonts tutaj

Podstawy technologii WWW

Zad. 6: Sterowanie robotem mobilnym

narzędzie Linia. 2. W polu koloru kliknij kolor, którego chcesz użyć. 3. Aby coś narysować, przeciągnij wskaźnikiem w obszarze rysowania.

1. Przypisy, indeks i spisy.

Aby przejść do edycji w tym module należy wybrać zakładkę "Dla Pracowników" -> "Sprawdziany".

GEO-INFO V Konwerter formatów TANGO i SHAPE wer

Wymagania na poszczególne oceny z informatyki dla klasy VI

Grafika komputerowa. Dla DSI II

Akademia Górniczo-Hutnicza

3. FUNKCJA LINIOWA. gdzie ; ół,.

Tworzenie prostych obrazów wektorowych w programie CorelDRAW 12

TIME MARKER. Podręcznik Użytkownika

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

Programowanie obiektowe

Ćwiczenie 6 Animacja trójwymiarowa

Ćw. I Projektowanie opakowań transportowych cz. 1 Ćwiczenia z Corel DRAW

Laboratorium 9 (Więcej Aktywności, w Androidzie)

Microsoft PowerPoint 2003 efektywne tworzenie i prezentacji multimedialnych

Program powinien otworzyć się z pierwszym formularzem. Jeśli nie, otwórz pierwszy formularz, wybierając go z listy - Shift+F12.

VIII. Krótki opis programu GeoGebra. Opracowanie. Zofia Walczak

Tytuł: GRAPHER Podręcznik użytkownika ISBN: Autor: Zbigniew Galon Rok wydania: 2014 Stron: 500 Wydawca: Gambit COiS Sp. z o.o.

Zakład Systemów Rozproszonych

Zad. 5: Sterowanie robotem mobilnym

Automatyzacja i robotyzacja procesów technologicznych

Nazwa implementacji: Nauka języka Python pętla for. Autor: Piotr Fiorek

Politechnika Warszawska Wydział Mechatroniki Instytut Automatyki i Robotyki

Wstęp 7 Rozdział 1. OpenOffice.ux.pl Writer środowisko pracy 9

Lista 3 Funkcje. Środkowa częśd podanej funkcji, to funkcja stała. Jej wykresem będzie poziomy odcinek na wysokości 4.

ARKUSZ KALKULACYJNY komórka

Transkrypt:

PyX jest pakietem Pythona do grafiki wektorowej. Pozawala zatem tworzyd pliki EPS oraz PDF. Aby go zainstalowad należy rozpakowad pakiet o nazwie PyX-0.10 do odpowiedniego katalogu. Będzie on dostępny pod adresem: http://zsi.tech.us.edu.pl/~nowak/python/pyx-0.10.rar Jeśli zostanie on zapisany w katalogu D:\Program Files (x86)\pyx-0.10\ to uruchamiamy konsolę (linię poleceo CMD) i wpisujemy następującą komendę: pyton setup.py install jak na rysunku poniżej: Użytkownik może zatem zapisad w kodzie Pythona nawet najbardziej skomplikowaną grafikę. W ramach pakietu mamy kilka modułów: canvas, path, deco, style, color, connector Text, box Trafo, unit graph (wliczając submodules)i graph.axis (wliczając submodules) epsfile Podstawowa grafika Formaty wyjściowe Tex/LaTex Transformacja liniowa Grafy, wykresy Pliki EPS Wszystkie te moduły zaimportujemy jedną linią kodu: from pyx import * Moduł path pozwala tworzyd postskryptowe ścieżki, które są blokami zawierającymi grafikę: linie proste, kąty, figury, krzywe. Takie elementy (path) nie są ze sobą połączone, nazywamy je podścieżkami (subpaths). Ścieżki tworzymy używając metod: moveto, lineto, curveto. Przykład 1: Tworzymy ścieżkę o która jest linią prostą od punktu (0,0) do (1,1) from pyx import * p=path.path(path.moveto(0,0),path.lineto(1,1)) Ostatnia linia będzie równoważną do linii: p=path.line(0,0,1,1) Póki nie użyjemy instrukcji która by tę grafikę gdzieś zapisała nie zobaczymy efektu wykonania powyższego kodu.

Efekt wyrysowania stworzonych elementów będzie widoczny dopiero gdy użyjemy elementu typu Canvas (płótno). c=canvas.canvas() Do niego trzeba załadowad elementy typu path. c.stroke(p) p.writeepsfile("line") # to spowoduje zapisanie efektu do pliku lines.eps p.writepdffile("line")# to spowoduje zapisanie efektu do pliku lines.pdf Kod: Będzie miał efekt następujący: Przykład 2: Załóżmy, że chcemy stworzyd grafikę złożoną z kilku elementów (subpaths): cross=path.path(path.moveto(0,0),path.rlineto(1,1),path.moveto(1,0), path.rlineto(-1,1))

a) 4 oddzielne linie b) Jedna otwarta ścieżka c) Jedna zamknięta ścieżka d) Wypełniona scieżka (zamykana zawsze). Pierwszy element (a) jest stworzony przy użyciu linii od punktu (0,0) do (1,1) ale z użyciem metody rlineto. Uwaga! ważna zasada jest taka, że każdorazowo metoda moveto zaczyna nowy element grafiki, zatem jeśli chcemy narysowad kwadrat nie powinniśmy użyd do tego następującego kodu: rect1=path.path(path.moveto(0,0),path.lineto(0,1), path.moveto(0,1),path.lineto(1,1), path.moveto(1,1),path.lineto(1,0), path.moveto(1,0),path.lineto(0,0)) ponieważ to stworzy 4 odrębne linie, i nie będzie możliwe wypełnienie tej figury. By to było możliwe lepiej użyd następującego kodu: rect2=path.path(path.moveto(0,0),path.lineto(0,1), path.lineto(1,1),path.lineto(1,0), path.lineto(0,0)) Ale uważny widz zauważy, że taki kwadrat jest nadal figurą w której w jednym rogu jest ona niedomknięta. Zatem najwłaściwszym będzie użycie kodu: rect3=path.path(path.moveto(0,0),path.lineto(0,1), path.lineto(1,1),path.lineto(1,0), path.closepath()) Dyrektywa closepath dodaje linie proste z bieżącego punktu do pierwszego punktu i następne zamyka całą ścieżkę. To odpowiada rysunkowi (c). Wypełnienie ścieżki będzie możliwe dopiero po użyciu następnego kodu: c.stroke(rect2,[deco.filled([color.grey(0.95)])]) Zmiana kolorów będzie możliwa dzięki komendzie: c.stroke(path,[deco.filled([color.rgb.green])]) Kod: Ma efekt następujący:

Warto wspomnied także i to, że do rysowania kwadratów można użyd wprost odpowiedniej do tego komendy: rect2=path.rect(0,0,1,1) zamiast rysowad 4 linie i je łączyd. Przykład 3 Kod: Da efekt: Zaś kod: Efekt następujący:

W ramach zajęd słuchacz powinien zaznajomid się z następującymi klasami: class line(x0,y0,x1,y1) [linia prosta z punktu (x0, y0) do punktu (x1, y1)]. class curve(x0,y0,x1,y1,x2,y2,x3,y3) [krzywa Beziera z punktami kontrolnymi od (x0, y0) do (x3, y3)]. class rect(x,y,w,h) *kwadrat zamknięty od lewego punktu (x, y), szerokości (w) i wysokości (h)+ class circle(x,y,r) *okrąd o środku w punkcie (x, y) i promieniu (r)+. Klasa CANVAS pozwala na użycie następujących jej właściwości (metod): class canvas(attrs=[],texrunner=none) tworzy obiekt CANVAS z atrybutami podanymi jako [attrs], który może byd instancją [trafo.trafo],[canvas.clip],[ style.strokestyle] lub [style.fillstyle]. Argument [texrunner+ może byd użyty do specyfikacji tekstu metodą *text()+ domyślnie nie jest określony. Inne metody: draw(path,attrs) [rysuje elementy path z atrybutami] fill(path,attrs=[]) *wypełnia obiekt path+ stroke(path,attrs=[]) [przecina element path na obiekcie canvas] insert(item,attrs=[]) *wstawia określoną instancję canvasitem do obiektu canvas]. Przy określonych argumentach attr item jest wstawiany jako nowa instancja canvas. text(x,y,text,attrs=[]) [tekst] [wstawia tekst na pozycji (x,y)] insert(texrunner.text(x,y,text,attrs))) skrótowa wersja. bbox() *zwraca obiekt będący zamknięciem wszystkich elementów obiektu canvas+. writeepsfile(file,*args,**kwargs) writepsfile(file,*args,**kwargs) writepdffile(file,*args,**kwargs) writetofile(filename,*args,**kwargs) Grafika (wykresy) i Moduł graph Przykład 1 Przypuśdmy, że mamy następujące dane zapisane w pliku dane.dat :

Chcemy użyd tych danych by wyrysowad je na wykresie: Efekt będzie następujący: Klasa graphxy oraz graphxyz są częścią modułu graph.graph. Są właściwie skrótami klasy graphxy(xpos=0,ypos=0,width=none,height=none,ratio=goldenmean,key =None,background attrs=none,axesdist=0.8*unit.v_cm,xaxisat=none,yaxisat=none,**axe s) Pozycję wykresu określają wartości: xpos oraz ypos. Rozmiar wykresy określają parametry: width, height, oraz ratio. backgroundattrs jest listą atrybutów tworzących tło wykresu.,pozwala na dekoratory typu: strokestyles oraz fillstyles}. axisdist jest odległością między osiami wykresu. Xaxisat, yaxisat określa wartości na osiach X i Y. Przykład 2: Program na pierwiastki równania kwadratowego: Kod następujący:

Jeśli wykonanie przebiegnie wg następującego scenariusza: To efekt będzie następujący:

Przykład 2: Rysujemy histogramy Dane są zapisane w pliku o nazwie minimal.dat i zawiera minimalne i maksymalne temperatury w poszczególnych miesiącach: Po wykonaniu kodu: Efekt będzie następujący: Zaś kod następujący:

Wywoła efekt taki: