abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 13:22 | Zajímavý projekt

Více než 60 moderních telefonů má díky práci týmu dobrovolníků SOMainline šanci na zařazení do oficiálního linuxového jádra. Patche pro podporu chipsetu SD630 a SD660, kterým jsou tyto telefony poháněny, jsou postupně začleňovány. Tým se soustředí na zprovoznění klasických linuxových distribucí pro telefony, ale věnuje se i zprovoznění běžného AOSP. Další tým vývojářů postmarketOS již delší dobu pracuje na podpoře chipsetu MSM8953, který umožňuje vdechnout život dalším nejméně 30 telefonům vydaných v letech 2017 a 2018.

David Heidelberg | Komentářů: 0
dnes 08:00 | Komunita

Svobodný kancelářský balík LibreOffice slaví 10 let od svého vzniku. Projekt byl představen 28. září 2010.

Ladislav Hagara | Komentářů: 8
dnes 07:00 | Pozvánky

Ve dnech 15. až 17. října 2020 se bude konat společná openSUSE + LibreOffice konference. Původně měla konference probíhat v Norimberku, ale vzhledem k situaci bude probíhat online. Konference již zveřejnila program. Naplánováno je několik desítek přednášek. Registrace a podrobnosti naleznete na stránce konference.

Zdeněk Crhonek | Komentářů: 0
včera 18:11 | Zajímavý software

SimulIDE je realtimový simulátor elektronických obvodů. Podporuje také PIC, AVR a Arduino. K dispozici je verze 0.4.13. Vývojáře lze podpořit na Patreonu.

Ladislav Hagara | Komentářů: 0
včera 14:11 | Nová verze

Virtual Machine Manager aneb virt-manager (Wikipedie), tj. GUI pro správu virtuálních strojů podporovaných knihovnou libvirt, byl vydán ve verzi 3.0.0. Přehled novinek v příspěvku na blogu. Zdůrazněna je nová volba --cloud-init.

Ladislav Hagara | Komentářů: 4
včera 11:11 | Zajímavý software

Vývojáři programovacího jazyka Swift na svém blogu oznámili, že společností Apple v červnu představená knihovna Swift System je již open source a byla do ní přidána podpora Linuxu. Jedná se o knihovnu poskytující idiomatická rozhraní k systémovým voláním.

Ladislav Hagara | Komentářů: 0
26.9. 15:11 | Nová verze

Byl vydán Debian 10.6, tj. šestá opravná verze Debianu 10 s kódovým názvem Buster. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 10 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

Ladislav Hagara | Komentářů: 1
25.9. 23:11 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě BLURtooth (CVE-2020-15802) v Bluetooth 4.2 a 5.0 v Cross-Transport Key Derivation (CTKD). Útočník může provádět MITM nebo navázat spojení s libovolným zařízením. Podrobnosti v článku (pdf).

Ladislav Hagara | Komentářů: 1
25.9. 21:44 | IT novinky

Byly zveřejněny informace o úniku zdrojových kódů Windows XP.

Ladislav Hagara | Komentářů: 31
25.9. 15:22 | Zajímavý projekt

Chcete proniknout do tajů gitu? Klikněte na Learn Git Branching. Vizuální a interaktivní tutoriál ve webovém prohlížeči.

Ladislav Hagara | Komentářů: 0
Používáte aplikaci eRouška?
 (19%)
 (3%)
 (2%)
 (11%)
 (51%)
 (8%)
 (6%)
Celkem 453 hlasů
 Komentářů: 35, poslední 20.9. 21:50
Rozcestník

PathEditor - kdo si hraje, nezlobí.

10.2.2014 13:50 | Přečteno: 1526× | Výběrový blog | poslední úprava: 10.2.2014 13:44

Zdravím, zhruba od půlky ledna letošního roku (tedy asi měsíc) intenzivně pracuji na vývoji webaplikace, která by umožnila snadno vytvářet interaktivní a názorné vizualizace prakticky čehokoliv co se hýbe, mění, zvětšuje, zmenšuje, přetéká, podtéká ... zkrátka je to živé.

Aplikaci jsem pojmenoval PathEditor - česky by se dalo říct editor cest, nebo upravovač cest. Je k dispozici na adrese http://patheditor.mypower.cz. V principu se jedná o jednoduchý nástroj pro vytváření animací pomocí určení základních klíčových bodů v každé cestě (polygonu). Pomocí toho vytvoří software reprezentaci animace toku daného měřeného média daným prostředím. Například tok proudu vodičem, nebo tok kapaliny například u rozvodů TUV, průtok plynu v potrubí, ...

Aplikace je připravena tak, že je možno vytvářet projekty, načíst je, ukládat je, smazat je. Datové úložiště je buď na serveru, nebo je možno projekt stáhnout jako datový soubor a opět ho do aplikace nahrát z úložiště na vašem PC. Takové soubory mají příponu *.mpp (Mypower Patheditor Project). Každý projekt obsahuje své nastavení, tedy obrázek na pozadí, nad kterým bude probíhat animace a druhou nepovinnou (nejlépe PNG) transparentní vrstvu nad obrázkem v pozadí. Stejně tak obsahuje popis všech cest v projektu a v každé cestě všechny parametry všech klíčových bodů daného polygonu, vytvářejícího každou jednotlivou cestu.

Cesty se dají vytvářet, duplikovat, mazat, přejmenovat. S body se dá jemně hýbat pomocí kursorových šipek na klávesnici, tedy animaci skutečně precizně doladit. Klíčovým bodům lze nastavit stupeň transparence od 0 po 100 procent po desetiprocentních krocích. Klíčové body polygonu pro animaci se dají smazat, nebo vkládat nové body mezi dva existující. Většinu běžných úprav lze šikovně realizovat pomocí klávesových zkratek. Informace o ovládání jsou k dispozici po stisknutí obvyklé klávesy F1, nebo kliknutím na tlačítko HELP.

Dalším nástrojem je Tester animací, kde lze ještě předtím, než bude animace řízena skutečnými daty, dopředu otestovat souběhy více animačních polygonů a zároveň otestovat reálné chování z hlediska množství současně animovaných prvků v dané vizualizaci a případné doladění z hlediska výkonu. U každé cesty lze nastavit periodicita vytvoření nového prvku animace (reprezentující například kvanta energie, nebo kapaliny) a procentuelní poměr rychlosti vůči originálnímu nastavení cesty při její editaci. Periodicita může být v rozsahu od 200 milisekund v krocích po 100ms. Rychlost pohybu animovaných prvků (kvant) v dané cestě lze nastavit v procentech po desetiprocentních krocích s tím, že nulový poměr je akceptován jako jednoprocentní poměr rychlosti, záporný poměr způsobí obrácení směr pohybu/toku animovaných prvků (kvant) a kladný poměr znamená tok po směru původních klíčových bodů polygonu.

Animační algoritmus jsem se snažil už předem vyladit tak, že změny parametrů prováděné za běhu jsou plynule aplikovány na běžící animaci. Toto je klíčové právě pro propojení řízení animace pomocí dat z reálného měření, které budou do běžící vizualizace přicházet v určitých nastavených časových intrvalech.

Uživatelské rozhraní celé web aplikace je v angličtině. Je to má nedokonalá angličtina, takže korekce jsou vítány, ale jsem přesvědčen, že tomu bude rozumět leckdo, kdo si umí poradit s anglickými programy, nakoupit na zahraničních serverech a vůbec, angličtinu považuji tak nějak za základ v oblasti software. Je možné že časem příjdou lokalizace, pokud to bude mít smysl.

K celé webaplikaci chystám podle časových možností podrobnou wiki s popisem úplně všeho co se popsat bude dát, popis datové struktury pro ukládání projektů (*.mpp) a různých příkladů, návodů, podobně jako u wiki pro Microlog, který bude zejména pro mé vlastní domácí účely sloužit jako zdroj dat.

K čemu může být aplikace dobrá vám? Můžete si zajednak skvěle vyhrát, můžete si vyzkoušet vložit pomocí URL adresy vlastní fotku do pozadí a na ní vytvořit a otestovat libovolné vlastní animace, můžete soubory vašich projektů uložit, nebo je sdílet na netu s ostatními, popřípadě připravit si libovolné další vizualizace prakticky čehokoliv. PathEditoru dáváte k dispozici adresu obrázku. Ten stahuje váš prohlížeč (ve kterém patheditor máte spuštěn) z internetu z té adresy, jakou pro konkrétní obrázky nastavíte (třeba z vašeho vlastního [domácího] serveru). To znamená, že obrázek může být třeba klidně i adresa na pravidelně aktualizovanou fotografii vašeho rozvaděče, která byla sejmuta kamerou umístěnou před ním :).

Takto připravené projekty budou hned v následující verzi velmi snadno svépomocně propojitelné s libovolnými hodnotami z online dat z měření, která jsou zasílána na server mypower.cz nebo mohou být importována prakticky odkudkoliv v dosahu netu. A tak například rychlost opakování animovaných prvků (kvant energie) na dané cestě - třeba vodiči - může být úměrná aktuálnímu napětí a poměr rychlosti animace velikosti proudu. Vznikne tak velmi interaktivní a živá animace, kterou bych se skutečně nebál pustit na libovolné profesionální prezentaci na videoprojektor k úžasu publika.

Celou webaplikaci berte jako první verzi, která zcela jistě bude trpět drobnými mouchami v ovládání uživatelského rozhraní, sem tam se něco nezaktualizuje tak, jak by bylo očekáváno. Postřehy určitě uvítám, o spoustě drobností už i vím z vlastního používání. Zkoušel jsem funkčnost ve Firefoxu (Iceweasel) a Google Chrome. Zdá se že to jede. Microsoft Internet Explorer nehodlám řešit. Je ale docela možné, že to v nejnovějších verzích MSIE pojede. Nemám to v čem testovat, nekupuji, ani nepoužívám produkty této společnosti.

Webaplikace je psána na straně serveru v PHP. Do MySql se sahá kvůli kontrole přihlášení na forum.mypower.cz (phpbb), projekty jsou na serveru ukládány do filesystemu jako plaintext soubor obsahující serializovaná pole, totéž co jde do *.mpp souborů. Každý uživatel má svůj adresář. Na straně prohlížeče je to řešeno pomocí jednoduchého HTML a asi 4000 řádků javascriptových funkcí psaných přímo pro tento projekt.

Aplikace je navržena jako multiuživatelská. Platí stav přihlášení na forum.mypower.cz. Pokud nejste přihlášen, budete chápán jako anonymní uživatel. Anonymní uživatel nemůže ukládat své projekty na server, může využívat pouze své lokální datové úložiště, tedy může stáhnout a uložit projekt ve formátu *.mpp. Funkčnost má ale plnohodnotnou, může vytvářet projekty. Jen je v současné verzi na začátku poněkud obtěžován aboutboxem a úvodními informacemi. Uživatel, který je přihlášen na fóru je při prvním vstupu do PathEditoru informován o co jde a co ho čeká. Úvodní informace je přihlášenému uživateli zobrazována při každém vstupu do PathEditoru dokud neuloží alespoň jeden projekt. Stačí tedy vytvořit a uložit prázdný projekt, nebo nějaký z už předpřipravených demoprojektů. Každý uživatel má své oddělené úložiště pro své projekty. To ale nevylučuje možnost projekt uložit jako *.mpp a poslat jinému uživateli, který ho může otevřít a uložit k sobě do svého úložiště na serveru.

Poznámka pro zvědavé: *.mpp není nic jiného než plaintext sestávající ze dvou řádků. První obsahuje identifikační hlavičku a kontrolní hash (sha1+salt - bude popsáno podrobněji na wiki k patheditoru). Druhý řádek je asociativní pole zakódované pomocí JSON (php json_encode), komprimované pomocí gzip (php gzcompress) a aby to nebyly binární data, tak výstup je zakódován pomocí base64.

Požadavky na HW pro běh vizualizací i webaplikace - tak nevím no ... V chrome to běhá na 2jádrovém Aspire 5610Z docela svižně i když je animace dosti náročná. Ve FF je to o něco pomalejší, sem tak to škubne. Je dobré, když PC u toho moc nic nedělá. Někdy ty animace mohou být celkem náročnější. Určitě je tam prostor pro značné optimalizace.

Nějaké živé ukázky přímo na přednastavené animace z různých demoprojektů

Typický klidnější provoz FVE

Režim "Rychlovarná konvice"

Dobíjení z centrály

Boiler bez lázeňských kamen

Oběhové čerpadlo

Ba co víc, dají se s tím dělat i jiné krásné věci :)

Moon love story theme

Velké poděkování patří Monice Sedlářové - http://monikasedlarova.com/ za inspiraci její uměleckou tvorbou a také za umělecky zpracovanou verzi pozadí pro novou vizualizaci mé chaty, která je použita i jako výchozí pozadí při otevření nového projektu ve webaplikaci PathEditor. K dispozici bude jak geometrická výkresová verze, tak také dvě další umělecky zpracované. Mezi verzemi bude možno přepnout.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

10.2.2014 16:10 chomout
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
No určitě lepší než alkohol a zápalky
10.2.2014 16:32 Aleš Kapica | skóre: 50 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Zajímavé. Umožňuje to také nějaký export např. do animovaného gifu?
Drum Bass avatar 10.2.2014 16:42 Drum Bass | skóre: 7 | blog: drum_bass
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Technicky to není nerealizovatelné. Gif by se dal "smontovat" na serveru. I když teda to by bylo asi hodně obrovské. Flash by na toto byl zajímavý, ale dneska prej "nebrat" :D Možná to naflákat do PNG a nechat nad tou sadou obrázků ffmpeg zapracovat. Veškeré pozice i transparence všech bodů v libovolném čase jsou známy. Flash se dá stále řídit na straně prohlížeče. S gifem ani mpegem se pak už nehne. Ale jinak už mě i toto napadlo :) Nacpat to do videa a podobné vylomeniny :)
Josef Kufner avatar 10.2.2014 18:26 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Zamysli se nad těmito scénáři:
  1. Máš webovou stránku, která popisuje nějaký produkt. Jak do této stránky vložíš animaci vytvořenou v PathEditoru?
  2. Máš prezentaci (slajdy). Jak do ní vložíš animaci vytvořenou v PathEditoru? Asi to nepůjde přímo vložit do PDF, ale jak ji otevřeš na jakémkoliv počítači a zcela offline?
Hello world ! Segmentation fault (core dumped)
Drum Bass avatar 10.2.2014 18:41 Drum Bass | skóre: 7 | blog: drum_bass
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Celé to je v javascriptu + HTML + manipulace s DOM = i s obrázkama se to dá v extrému narvat do jednoho jediného velkého HTML offline souboru. Server to pro animaci jako takovou v podstatě vůbec k ničemu nepotřebuje, pokud se animace nemá řídit odněkud odjinud a má jen prostě animovat to co má zadáno. A nebo jak to myslíte s tím offline?
Bedňa avatar 10.2.2014 19:05 Bedňa | skóre: 34 | blog: Žumpa | Horňany
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Jj to vidím v pohode a pokiaľ by chcel niekto animovaný súbor, použije recordmydesktop. Inak vyzerá to fakt dosť dobre.
KERNEL ULTRAS video channel >>>
Josef Kufner avatar 10.2.2014 20:53 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Přesně tak to myslím. Prostě distribuovatelný player (bez editoru) + všechna data v jednom soboru, který se na kliknutí kdekoliv otevře.

Je tam na vytvoření takového souboru čudlík?

Pokud by takový export byl přiměřeně malý, dejme tomu do 50KB bez obrázků, klidně by to mohl být výchozí formát dat pro uložení (*.mpp.html).
Hello world ! Segmentation fault (core dumped)
Drum Bass avatar 10.2.2014 21:22 Drum Bass | skóre: 7 | blog: drum_bass
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Je tam na vytvoření takového souboru čudlík?
Přidám. jj .. nebude to ani nic velice komplikovaného tuhle věc implementovat. Je to užitečná funkce. Poznačím do příští verze :) Samotnému by se mi to teď pravda i hodilo, na jistou prezentaci :)

11.2.2014 10:07 Aleš Kapica | skóre: 50 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Držím palce. Vypadá to opravdu pěkně. Teď mě napadá, že by se k tomu hodila i možnost nastavení časování plus zpožděné spouštění. Jako na např. Cestu A animuj 2s, a po těch dvou sekundách spusť animaci B.
Drum Bass avatar 11.2.2014 14:07 Drum Bass | skóre: 7 | blog: drum_bass
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
ano ano ano .. :) tady se vyloženě nabízí něco jako eventy. Možnost na různé zajímavé akce, například onPathAnimationTick, onPathAnimationBegin, onPathAnimationEnd ... přímo v uživatelském rozhraní PathEditoru umožnit vložit krátký JS kód, který udělá to co bude udělat potřeba, třeba odstartuje (klidně i se zpožděním) třeba jeden animovaný "sprite" z libovolné cesty, nebo udělá úplně jinou akci. Toto právě taky vidím jako vysoce užitečné :) Dva dny teď není čas, ale hned pak jdu na to :D Třeba pustit vodu do boileru znamená, že cesta pro teplou vodu musí běžet taky. Někama ta voda musí zas vytékat. Nebo taky by se tohle dalo řešit tak, že na onPathAnimationTick by se sledovalo až je bod za boilerem, tak by změnil barvu na červenou a je vymalováno :)

.... actionscript jako ve flash animacích.
xkucf03 avatar 11.2.2014 11:29 xkucf03 | skóre: 49 | blog: xkucf03
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.

Šlo by to udělat jako podkladový obrázek (PNG) + GIF, ve kterém budou jen ty tečky a kterým se podklad překryje.

Další (a lepší) možnost je SVG/SMIL animace.

Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
10.2.2014 17:24 retroslava | skóre: 9 | blog: TryCatch | Žižkoff
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
FFmpeg v prohlížeči je taky experimentálně.

videoconverter.js
Pozor! Jsem naprostý idiot. Co jsem napsal včera dnes už dávno neplatí. Zavazuji se, že budu diskutovat nezávazně.
10.2.2014 18:55 Petr
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Je to hezké, ale dokud výtvor nebudu moci vzít jako soubor a přehrát ho kdekoli jinde, tak to má velice omezenou použitelnost.
Josef Kufner avatar 10.2.2014 20:55 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Proč máš v tom MPP souboru vnořené objekty znovu a znovu serializované do JSON?
Hello world ! Segmentation fault (core dumped)
Drum Bass avatar 10.2.2014 21:45 Drum Bass | skóre: 7 | blog: drum_bass
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Ano, je to jedna z věcí, kterou musím pořešit. Tak nějak postupným vývojem došlo k vícenásobnému JSONu... Jakmile jsem začal řešit soubory, tak se na to mrknul a zjistil jak to začalo escapovat pořád dokola.. tak si řekl .. aha .. vlastně :) No narychlo to v souborech "zamaskovala" komprese, i když při těchto velikostech je to vcelku fuk.

Ale ano .. jsem si této nepěknosti vědom a mám ji taky v TODO.
Josef Kufner avatar 11.2.2014 01:05 Josef Kufner | skóre: 69
Rozbalit Rozbalit vše Re: PathEditor - kdo si hraje, nezlobí.
Tak až se v tom budeš hrabat, přidej si tam číslo verze formátu souboru a při načítání kontroluj, zda je dostatečně vysoké. V budoucnu ti to umožní bezbolestný upgrade na novější verze (ať už vytvořením konverzního nástroje nebo přímo podporou starších verzí).
Hello world ! Segmentation fault (core dumped)

Založit nové vláknoNahoru

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.