p r 0 t 0 s c r i p t   

[  d  a  r  m  o  w  o  d  l  a  m  a  s  ]



wprowadzenie | przykłady | dokumentacja | wszystko w ZIP'ie




*
dokumentacja
Aby korzystać z edytora ps proted [aplet obok] znajomość skryptu ps nie jest konieczna, wystarczy sama wiedza na temat rodzaju i właściwości obiektów oraz akcji.
Aby opisywać [za pomocą ps lub edytora proted] statyczne [pozbawione akcji] obrazy znajomość akcji ps nie jest konieczna,

Dokumentachja podzielona jest na trzy działy: pierwszy - opis korzystania z edytora, drugi - opis obiektów i akcj, trzeci - opis skryptu ps.
Opis napisany stylem MAX'ymalnie logicznym - bez niedomuwień, uproszczeń i skrótów.


*
edytor prot/ed
... jest programem (napisanym w javie) pozwalającym na edycje, generowanie i interpretowanie ps.
Po każdorazowym naciśnięciu przycisku oznaczonego napisem "run proted" tworzone są trzy okna:
  • protoscript applet - po naciśnięciu przycisku "refresh" w tym oknie pojawia się skrypt ps ruwnoznaczny z "zawartością edytora" wraz otaczającymi tagami <applet ...><param ...> i </aplet>. Po naciśnięciu przycisku "interprete" zawartość tego okna jest interpretowana jako ps i przekazywana "do edytora".
  • main w tym oknie można tworzyć (New), kasować (Delete), przenosić do "najwyższej warstwy" (to Top) lub do "najniższej warstwy" (to Bottom) (lub o jedną warstwę do gury (higger) lub do dołu (lower)) obiekty. Można też określać/modyfikować ich wszystkie cechy (patrz opis obiektu).
    Przełonczanie "edytownaych" obiektów realizowane przez przyciski Next, Prev oraz pole tekstowe znajdujące się między nimi.
    Prawa część okna (oprucz najwyszej "linijki") przeznaczona jest dla akcji. Możliwe są podobne operacje jak dla obiektów tzn aNew, aDelete, aNext, aPrev oraz określanie/modyfikowanie cech akcji.
    Edytor każdą akcje wiąże z obiektem lecz podczas wykonywania skryptu akcja odnosi się do obiektu z którym jest związane w edytorze tylko gdy nie ma zdefiniowanej cechy powinowactwo do obiektów. Działanie wszystkich akcji można obserwować po naciśnieciu klawisza [play] (odpowiada to interpretacji skryptu ps przez interpreter ps).
    UWAGA: w aktualnej wersji edytora niewszystkie pola edycyjne są oznaczone.
    Pole zbnajdujące się na lewo od przycisku Next odpowiada cesze nazwa obietu.
  • workplace - tutaj wizualizowany są wszytskie obiektu. Można tu też określić położenie i rozmiar aktualnie "edytowanego" obiektu - poprzez "przeciągnięcie" kursora myszki nad wybranym obszarem.
    Określanie wyglądu obiektów lines i shape możne przebiegać na dwa sposoby:
    odręczny - poprzez "przeciągnięcie" kursora myszki (z przycisniętym tylko lewym klawiszem) krokowy - (linia po linii) poprzez naciśnięcie i trymanie prawego klawisza myszki oraz jednoczesnego naciskania lewego w wybranych miejscach. Edycje krokową kończymy przez zwolnienie prawego klawisza myszki.


*
obiekty i akcje


*
skrypt ps
  • ogólnie
    • Treść skryptu przekazywana jest jako warośc parametru pscode do interpretera ps (psji[x].class) (gdzie [x] - numer wersji).
    • Obiekt definiuje się tagiem <pso [pararametry - określenie cech] >.
    • Akcje definiuje się tagiem <act [pararametry - określenie cech] >.
    • Paramety akcji i obiektów - określenie cech definiuje się w "ciele" tagów <pso > i <act > - [nazwa cechy]=wartość cechy
    • Wartości cech - łańcuchów znakowych [takich jak nazwa, treść napisu/ciągu linii/url grafiki, nazwa czcionki obiektu i powinowactwo do obiektów akcji] musi być poprzedzona i zakończona znakiem #.
    • Cechy typ obiektu i typ akcji nie są traktowane jako cechy - łańcuchy znakowe.
    • Gdy cecha [lub jedna z jest składowych wartości] nie jest określona [nie jest przypisana jej wartość] interpreter przyjmuje za jej wartość 0 [wyjątki: dla trzech wartości cechy reakcja na interakcje urzytkownika obiektu przyjmowana jest wartość -1, dla cech - łańcuchów znakowych przyjmowany jest łańcuch pusty].
      Edytor proted korzysta z tych własności "optymalizując" generowany kod poprzez nie określanie w skrypcie wynikowym cech mających wartość 0 [lub -1 dla trzech wartości cechy reakcja na interakcje urzytkownika i łańcucha pustego znakowego dla cech - łańcuchów znakowych]
    • Gdy akcja nie ma określonej cechy powinowactwo do obiektów - jest powiązywana z obiektem, którego definicja znajduje się przed definicją tej akcji. (Akcja znajduje się "w ciele" definicji obiektu)
  • <pso tp=[.] na=#[.]# mo=[.] mu=[.] md=[.] px=[.] py=[.] sx=[.] sy=[.] tx=[.] ty=[.] a1=[.] a2=[.] cr=[.] cg=[.] cb=[.] fn=#[.]# co=#[.]# bo=[.] it=[.] >
    • tp - nazwa typu (rodzaju) obiektu (określa cechę typ)
    • na - wieloczłonowa nazwa obiektu (określa cechę nazwa) (wartość - łańcuch znaków poprzedzony i zakończony znakiem #)
    • mi - numer kanału czasowego uruchamianego w wyniku "wkroczenia" wskażnika myszki na obiektem (określa pierwszą warotść cechy reakcja na interakcje urzytkownika)
    • mo - numer kanału czasowego uruchamianego w wyniku "zejścia" wskażnika myszki z obiektu (określa drugą warotść cechy reakcja na interakcje urzytkownika)
    • mu - numer kanału czasowego uruchamianego w wyniku puszczenia przysisku myszki gdy wskaznik myszki znajduje się nad obiektem (określa trzecią warotść cechy reakcja na interakcje urzytkownika)
    • md - numer kanału czasowego uruchamianego w wyniku naciśnięcia przysisku myszki gdy wskaznik myszki znajduje się nad obiektem (określa czwartą warotść cechy reakcja na interakcje urzytkownika)
    • px - pozycja pozioma obiektu (określa pierwszą wartość cechy pozycja)
    • py - pozycja pionowa obiektu (określa drugą wartość cechy pozycja)
    • sx - rozmiar poziomy obiektu (określa pierwszą wartość cechy rozmiar)
    • sy - rozmiar pionowy obiektu (określa drugą wartość cechy rozmiar)
    • tx - grubość pozioma obiektu (określa pierwszą wartość cechy grubość)
    • ty - grubość pionowa obiektu (określa drugą wartość cechy grubość)
    • a1 - określa pierwszą wartość cechy dodatkowe obiektu
    • a2 - określa drugą wartość cechy dodatkowe obiektu
    • cr - składowa zielona koloru obiektu (określa pierwszą wartość cechy kolor)
    • cg - składowa czerwona koloru obiektu (określa drugą wartość cechy kolor)
    • cb - składowa niebieska koloru obiektu (określa trzecią wartość cechy kolor)
    • fn - nazwa czcionki (określa wartość cechy nazwa czcionki) (wartość - łańcuch znaków poprzedzony i zakończony znakiem #)
    • co - treść napisu/ciągu linii/url grafki (określa warość cechy treść napisu/ciągu linii/url grafiki)
      (ciąg linii jest koreślany jako ciąg par liczb oddzielonych znakami : (: - między dwoma liczbami w parze) i ; (; - między parami) każda n-para określa długość i szerokość linii - tym samym początek n+1 linii względem początku n tej linii. Początkiek pierwszej linii określany jest przez cechę położenie obiektu. (wartość - łańcuch znaków poprzedzony i zakończony znakiem #)
    • bo - dwustanowa cecha określająca włonczenie/wyłonczenie stylu bold przy wykreślaniu napisu (gdy ma wartość true (bo=true) styl bold jest włonczony, gdy ma wartość false (bo=false) styl bold jest wyłonczony)
    • it - dwustanowa cecha określająca włonczenie/wyłonczenie stylu italic przy wykreślaniu napisu (gdy ma wartość true (it=true) styl italic jest włonczony, gdy ma wartość false (it=false) styl italic jest wyłonczony)
  • <act tp=[.] na=#[.]# ch=[.] be=[.] en=[.] px=[.] py=[.] a1=[.] a2=[.] >
    • tp - typ (rodzaj) akcji (określa cechę typ akcji)
    • ch - kanał czasowy akcji (okeśla cechę numer kanału czasowego)
    • na - powinowactwo do obiektów (okeśla cechę powinowactwo do obiektów) (wartość - łańcuch znaków poprzedzony i zakończony znakiem #)
    • be - czas rozpoczęcia akcji (okeśla cechę czas rozpoczęcia)
    • en - czas zakończenia akcji (okeśla cechę czas zakończenia)
    • px - okeśla pierwszą wartość cechy parametry
    • py - okeśla drugą wartość cechy parametry
    • a1 - okeśla pierwszą wartość cechy dodatkowe parametry
    • a2 - okeśla drugą wartość cechy dodatkowe parametry





wprowadzenie | przykłady | dokumentacja | wszystko w ZIP'ie









/^\
/ | \
\ | /
/-- | --\
/ /-----\ \
/ /           \ \
/\_/ / /-----\ \ \_/\
/        | | \ / | |        \
 <   <---| | X | |---->   > 
\   _  | | / \ | |  _   /
\/ \ \ \-----/ / / \/
\ \           / /
\ \-----/ /
\__ | __/
/ | \
\ | /
\_/
[leminimale]



Radosław Tereszczuk [autor]
riad@idg.com.pl