Zacznę może od tego jak owy digital pen wygląda i jak działa.
Jak widać na obrazku, długopis wygląda prawie normalnie, z tym że przy widocznej części rysika jest (wg mnie) nadajnik podczerwieni nadający w momencie pisania.
Natomiast do kartki na górze przyczepiony jest odbiornik (jak na mój gust (nie sprawdzałem empirycznie): ze dwa odbiorniki podczerwieni, tak aby można wyliczyć położenie pióra, wyświetlacz, przycisk "new/save page", moduł USB, jakaś pamięć i uC który tym steruje). Owy odbiornik można podłączyć via USB do komputera, co zmienia digital pen w tablet/myszkę (ale taki bez poziomów nacisku) i pozwala przerzucić zachowane w pamięci notatki.
Ad używanie: przyczepia się odbiornik do czegokolwiek (np. kartki papieru), pisze po kartce, naciska przycisk 'save page', a później podpina się odbiornik via USB do komputera i tadam, notatki są w formie obrazka. Oczywiście to ostatnie po przeklikaniu się przez dołączony do pióra "menadżer notatek".
No właśnie... jeśli chodzi o dołączony soft, to sprawa jest dość zabawna: do pióra dodano soft pod Windowsa oraz OSX (Linux-based OSes are out of luck; ale podobno jako tablet działa bez większej walki... czyli w zasadzie główna funkcja urządzenia nie działa w ogóle, a raczej nie ma oficjalnego softu, bo jest udostępnione info o proto - o tym na samym dole postu). I teraz tak:
- Pod Windowsem, jest śliczny programik do organizacji notatek, ściągania ich, etc. Ale niestety trzeba kilka "klików", żeby wyexportować daną notatkę do np. JPG/PNG.
- Pod OSX'em natomiast jest daemon który po podłączeniu urządzenia zrzuca notatki do JPG/PNG. Natomiast nie ma żadnego managera.
Ponieważ korzystanie z "menadżerów" raczej mnie nie bawi chciałem rzucić okiem na internalsy softu i może trochę go zmodyfikować / napisać własny exporter.
I tu przechodzimy do części programistycznej.
W katalogu oprogramowania było sporo DLLek, które po wrzuceniu w fileinfo (plugin do Total Commandera do podglądu plików PE, kapitalna sprawa; do pobrania na oficjalnej stronie Total Commandera) pokazały kilka ciekawych informacji. Dowiedziałem się m.in. że firma która stworzyła owe DLLki nazywa się Pegasus Technologies LTD. i, jak się później okazało, udostępnia na swojej stronie SDK (yay!) do digital penów swojej produkcji (czyli I.R.I.S. tylko licencjonuje ich technologie), oraz, że wersja PegRoute.exe (chyba jakiś daemon do komunikacji z piórem) jest special buildem przeznaczonym dla celów demonstracyjnych na targach CEBIT 2007 (cóż, podobno prowizorki są wieczne).
Jeśli chodzi o samo SDK (dostępne dla C/C++ oraz C#, Windows only), to kilka przydatnych linków:
http://www.pegatech.com/_Uploads/Downloads/SDK/SDK_3.4.zip
http://www.pegatech.com/_Uploads/Downloads/SDK/Pegasus.Net_SDK.zip
http://www.pegatech.com/_Uploads/Downloads/DevelopersWebSite/index.html
http://groups.google.com/group/pegasus-digital-pen
Jeśli chodzi o samą obsługę ściągania obrazków z pióra (która mnie interesowała), to jest w zasadzie trywialna (kilka funkcji na krzyż). Zaskoczyły mnie dwie rzeczy:
1. Strony numeruje się od 1 (OK, OK, rozumiem że to nic dziwnego... ale spodziewałem się w API, że pierwsza notatka do ściągnięcia będzie miała ID 0 jednak... szczerze to trochę się z tym nawalczyłem, a walka skończyła się dopiero po wrzuceniu w debugger IDA oficjalnego softu i głośny 'Ahaaaaa!' po rzuceniu okiem na parametry problematycznej funkcji).
2. Obrazki są przechowywane jako seria eventów pióra (przyłożenie (aka DOWN) + koordynaty, ruch (aka MOVE) + koordynaty, oderwanie (aka UP)). Przyznaje, że raczej spodziewałem się monochromatycznej bitmapy (1bpp), ale po przemyśleniu sprawy uznałem, że to faktycznie ma więcej sensu (i ile miejsca zaoszczędzone!).
Konsekwencji punktu drugiego jest kilka:
- w celu wyexportowania do bitmapy trza to najpierw wyrenderować
- można zapisać notatki np. w formie SVG lub innego "wektora"
- ponieważ zachowana jest również kolejność eventów, zrobienie np. animacji pisania jest proste (w każdej klatce renderuje się np. o jeden event więcej; albo lepiej, o jeden pixel więcej)
- można również pobawić się trochę ze stylem kresek (np. imitację pędzla via zmniejszanie grubości kreski, albo zaokrąglanie pisma)
Podsumowując, uznałem to za fajny pomysł.
Anyway, soft do downloadu ostatecznie naklepałem (exportuje do PNG wg wytycznych oraz SVG i CSV) i postaram się go razem z src udostepnić za jakiś czas. Poniżej efekty jego działania.
Tło w powyższych obrazkach pochodzi z serwisu CGTextures (w tym miejscu podziękowania dla Marcela z w/w serwisu za błyskawiczną odpowiedź na pytania dot. licencji udostępnianych tekstur).
Jeśli chodzi o SVG i CSV, to linki poniżej:
pen_hello_test.csv
pen_hello_test.svg (sporo przeglądarek powinno to wyświetlić po kliknięciu)
OK, i to w sumie na tyle jeśli chodzi o ten post. Na koniec jeszcze kilka uwag:
- w zasadzie taki digital pen to świetna sprawa dla osób które dzielą się notatkami z innymi lub które lubią mieć kopie zapasową notatek na kompie; do innych podobnych zastosowań chyba jednak bym wybrał pen tablet
- pióro emituje światło podczerwone (lub cokolwiek innego, przypominam że to tylko moje przypuszczenie) po wykryciu nacisku rysika na podłoże; przy miękkim podłożu niestety nie zawsze łapie (miękkie w moim wypadku było papierem czerpanym grubości 100 kartek; problem rozwiązałem używając podkładki pod kartkę)
- ruszanie się odbiornika lub kartki papieru również ciekawie wpływa na zniekształcanie obrazu (w sumie można się pobawić w pisanie odbiornikiem i trzymanie pióra w jednym miejscu ;>)
- jakoś tak parę dni temu czytałem o digital penach w jakimś artykule o (afair) 10 technologiach które się nie przyjęły / są chybione; cóż... fakt faktem to dość niszowy produkt
- o ile oficjalnego softu pod Linuxa nie ma, to devi z Pegasus Technologies udostępnili info o protokole USB który jest używany przez to urządzonko - miło z ich strony ;)
I tyle :)
Comments:
Otóż pisało po odpowiednim papierze (to pewien minus, bo musisz mieć taki specjalny papier), ale poza samym pismem nagrywało również dźwięk, który na dodatek był synchronizowany z tym co pisałeś. Czyli np. podczas notowania na spotkaniu mogłeś nagrywać dźwięk, a później wracając do notatek mogłeś odtworzyć tekst i dźwięk z określonego momentu. Wyglądało to naprawdę fajnie - znajomy mówił, że już się przerzucił na takie notatki.
Z tego co widziałem i słyszałem to również są możliwości napisania softu dla tego pena.
Quote:
Anyway, soft do downloadu ostatecznie naklepałem (exportuje do PNG wg wytycznych oraz SVG i CSV) i postaram się go razem z src udostepnić za jakiś czas.
BTW, używasz tego jeszcze?
Add a comment: