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:11 | Zajímavý článek

    Český telekomunikační úřad zveřejnil Výroční zprávu za rok 2024 (pdf), kde shrnuje své aktivity v loňském roce a přináší i základní popis situace na trhu. Celkový objem přenesených mobilních dat za rok 2024 dosáhl dle odhadu hodnoty přibližně 1,73 tis. PB a jeho meziroční nárůst činí zhruba 30 %. Průměrná měsíční spotřeba dat na datovou SIM kartu odhadem dosáhla 12,5 GB – v předchozím roce šlo o 9,8 GB.

    Ladislav Hagara | Komentářů: 1
    dnes 12:33 | IT novinky

    Z novinek představených na Google I/O 2025: Přehledy od AI (AI Overviews) se rozšiřují do dalších zemí. Užitečné, syntetizované přehledy od generativní AI jsou nově k dispozici i českým uživatelům Vyhledávače.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | IT novinky

    Šestice firem označovaných jako „MAMAAN“ – tedy Meta (Facebook, Instagram), Alphabet (Google), Microsoft, Apple, Amazon a Netflix – je zodpovědná za více než padesát procent světového internetového provozu. Dalšími velkými hráči jsou TikTok a Disney+. Společně tak zásadně určují podobu digitálního prostředí, spotřebitelského chování i budoucích trendů v oblasti technologií. I přesto, že se podíl těchto gigantů od roku 2023 o něco snížil, jejich dominantní postavení zvyšuje volání po regulaci.

    Ladislav Hagara | Komentářů: 1
    dnes 11:33 | IT novinky

    Evropská komise (EK) navrhuje zavést plošný poplatek ve výši dvou eur (zhruba 50 Kč) za každý malý balík vstupující do Evropské unie. Poplatek se má týkat balíků v hodnotě do 150 eur (zhruba 3700 Kč), které v EU nepodléhají clu. V loňském roce bylo do EU doručeno kolem 4,6 miliardy takovýchto balíků. Poplatek má krýt náklady na kontroly rostoucího počtu zásilek levného zboží, které pochází především z Číny.

    Ladislav Hagara | Komentářů: 4
    včera 18:11 | IT novinky

    Dnes a zítra probíhá vývojářská konference Google I/O 2025. Sledovat lze na YouTube a na síti 𝕏 (#GoogleIO).

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Komunita

    V Bostonu probíhá konference Red Hat Summit 2025. Vybrané přednášky lze sledovat na YouTube. Dění lze sledovat na síti 𝕏 (#RHSummit).

    Ladislav Hagara | Komentářů: 0
    včera 15:00 | Nová verze

    Společnost Red Hat oficiálně oznámila vydání Red Hat Enterprise Linuxu 10. Vedle nových vlastností přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 5
    včera 12:22 | Pozvánky

    Tuto sobotu 24. května se koná historicky první komunitní den projektu Home Assistant. Zváni jsou všichni příznivci, nadšenci a uživatelé tohoto projektu. Pro účast je potřebná registrace. Odkazy na akce v Praze a v Bratislavě.

    jose17 | Komentářů: 0
    včera 04:44 | IT novinky

    Troy Hunt představil Have I Been Pwned 2.0, tj. nový vylepšený web služby, kde si uživatelé mohou zkontrolovat, zda se jejich hesla a osobní údaje neobjevily v únicích dat a případně se nechat na další úniky upozorňovat.

    Ladislav Hagara | Komentářů: 16
    19.5. 23:22 | Zajímavý software

    Microsoft představil open source textový editor Edit bežící v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 12
    Jaký je váš oblíbený skriptovací jazyk?
     (60%)
     (23%)
     (9%)
     (2%)
     (0%)
     (0%)
     (6%)
    Celkem 53 hlasů
     Komentářů: 5, poslední včera 20:57
    Rozcestník

    Planetárium OpenCoeli: Cartes du Ciel for Java

    12. 9. 2007 | Jan Kotek | Recenze | 5106×

    Asi před půl rokem jsem potřeboval vytisknout pár astronomických map. Bohužel jsem nenašel žádný program splňující moje nároky. Mapy jsem nakonec vytiskl v Cartes du Ciel a ručně dokreslil. Zároveň s tím začalo vznikat zbrusu nové planetárium. Nedávno vyšel třetí milestone a už je na co koukat.

    Předem bych upozornil, že většina zde popisovaných věcí jsou rozpracované plány. Program má za sebou půl roku vývoje a právě se dostal do alpha fáze. Relativně dokončené jsou části týkající se map a datových zdrojů, ale 80 % API a implementací pořád chybí. Tento článek vznikl hlavně z potřeby projekt trochu zpropagovat a naverbovat další vývojáře a testery. Ze stránek projektu lze stáhnout zdrojové kódy a binární distribuci.

    Možná se zeptáte, proč jsem se nepřidal k existujícímu projektu a místo toho začínám "zase další program". Zkoumal jsem několik programů a nikde jsem nebyl spokojen. CdC má srozumitelný kód, ale je v podstatě neudržovatelný. KStars jsou dobře čitelné a zčásti zdokumentované. Jejich vývoj se také docela hýbe a rozhodně je na co se těšit. V KDE 4.0 a 4.1 lze čekat rychlejší indexování oblohy, podporu větších katalogů (konečně) a lepší ovládání dalekohledů. KStars mají ale jiné zaměření, je to hlavně výukový nástroj. Z těchto důvodů jsem tedy začal nový program. OpenCoeli ale nevznikl ve vzduchoprázdnu, části kódu pochází z CdC, KStars a specializovaných astronomických programů.

    Hlavní rozdíl oproti ostatním programům je pod povrchem. OpenCoeli je psán v Javě s použitím jejích best practises. Jednotlivé části mají interface, abstraktní pomocné třídy a různé implementace. Vše je dobře zdokumentované s odkazy na podrobnější literaturu. Samozřejmě nechybí ani unit a integrační testy. Program je psán jako několik volně spojených knihoven. Existuje zde hromada extension pointů, listenerů, post/pre procesorů a filtrů. Celé je to pak spojeno XML konfiguračními soubory. Pokud znáte vnitřnosti Spring frameworku nebo Eclipse API, uděláte si dobrou představu.

    Základním cílem je vytvořit planetárium rozšiřitelné pomocí pluginů. Pokud se to povede, může to dát astronomickému softwaru zcela nový směr. Vzorem pro mě je Eclipse a "ekosystém" jejích pluginů. Pak mám hromadu plánů, například hlasové ovládání dalekohledu. Zde ale popíšu jen dvě části, které už jsou rozpracované a polofunkční.

    Mapy

    Název OpenCoeli nebyl vybrán náhodně. Antonín Bečvář vydal v padesátých letech několik ručně kreslených atlasů s názvem Coeli. Ty v podstatě znamenaly začátek moderní astronomické kartografie a do osmdesátých let neměly konkurenci. Před několika lety bylo vydáno pokračování Coeli Novus 2000.0 a na přednášce jeho autorů vznikla myšlenka napsat OpenCoeli.

    Takže co je špatně se současnými atlasy? Výstupy z počítače jsou nepoužitelné pro tisk. Jednotlivé popisky se překrývají, na některých místech objekty splývají. Navíc rastrová grafika kvalitě také příliš nepřidá. Mapu je tak před tiskem nutné ručně upravovat, ještě složitější je tvorba vícestupňových hledacích map.

    OpenCoeli by tedy mělo tvořit mapy přímo použitelné pro tisk. K vykreslování se používá knihovna Java2D. Má velmi kvalitní antialiasing, například zobrazí i hvězdy s velikostí kotoučku 0.1 pixelu. Díky hardwarové akceleraci bez problému zobrazí najednou i desetitisíce objektů. Mapy jsou kompletně vektorové a lze je renderovat prakticky na jakékoliv zařízení, včetně obrazovky, tiskárny a PDF a SVG souborů.

    O dobré zobrazení se stará celá řada algoritmů. Překrývající popisky může vyřešit algoritmus pro polohování. Byl už několikrát implementován v GIS programech, takže je z čeho vybírat. Překrývání objektů lze vyřešit vhodně zvoleným z-order, objekty se prostě seřadí podle velikosti. Překrývání lze také vyřešit částečnou průhledností. V OpenCoeli se používají obě možnosti.

    Dalším problémem je velikost kotoučků hvězd. Na mapě může být i několik tisíc hvězd s rozsahem 15 magnitud a je třeba zajistit, aby navzájem nesplynuly do jednolité bílé plochy. Velikost kotoučku by tedy měla být závislá na MHV a použitém zvětšení. V současnosti se používá logaritmická škála. V budoucnu se přejde na složitější algoritmus pracující s počtem hvězd a celkovou plochou zabranou hvězdnými kotoučky.

    OpenCoeli používá abstrakci nad Java2D, podporuje 50 různých projekcí, má vlastní systém souřadnic... Celý popis této části je mimo rozsah článku, podrobnější info rád poskytnu mailem nebo ze zdrojových kódu.

    Databáze

    Hlavní úložiště dat by měla být SQL databáze. Datový model je proto navržen co nejvíce konzistentně, vše používá stejné jednotky, názvy sloupců a indexy. Samozřejmě lze data a strukturu ručně upravovat. Výhoda je také pro ostatní aplikace, získají přístup k hromadě astronomických dat bez nutnosti parsovat datové soubory.

    Vzorem byla terabytová astronomická databáze Skyserver. Můj projekt je trochu menší, v plné konfiguraci bude databáze obsahovat 1 miliardu hvězd + několik set milionů objektů a její velikost dosáhne stovek gigabajtů. Manipulace s tímto monstrem není příliš praktická, a tak bude možné import omezit na jednotlivé části, například vybrané katalogy či souhvězdí. V základní verzi pak bude 35 milionů hvězd z GSC, 5 milionů objektů a velikost databáze okolo 5 gigabajtů.

    OpenCoeli nepoužívá přímo SQL, ale mezivrstvu JPA (Java Persistence API). Díky tomu odpadá vytváření databázového schématu, to je generováno přímo z objektového modelu. Díky JPA lze do databáze uložit data z jakéhokoliv zdroje použitého v OpenCoeli, cachovaní výsledků z webových služeb se přímo nabízí. JPA také podporuje několik desítek databází, takže rozhodně nezůstane jen u integrované Derby.

    Novinkou je způsob indexování oblohy. OpenCoeli využívá Hierarchical Triangular Mesh, to umožňuje rozdělit oblohu na očíslované trojuhelníhové oblasti. HTM znamená malou revoluci v astronomii, protože operace s plochami překládá na operace s čísly. Jednoduchým SQL selectem lze zjistit všechny objekty v určité vzdálenosti od objektu nebo v dané oblasti. Počítání zákrytů tím dostává zcela nový rozměr :-).

    GUI

    Klientská část OpenCoeli využívá Swing, Jide a Netbeans RCP. Díky tomu odpadá 80 % práce spojené s programováním desktopové aplikace. RCP například řeší lokalizaci, akce, obsluhu chyb, threading... Mattise a průvodci v Netbeans IDE pak práci ještě více zrychlují. Navíc knihovna Jide obsahuje spoustu komponent, které ve Swingu chybí. O toto část je tady velmi dobře postaráno.

    Bumbrlíček

    V současné době má distribuční balík 25 megabajtů. Předpokládám, že finální 1.0 se rozroste až na 50 megabajtů. Data přitom zabírají jen pětinu, zbytek připadá na závislosti. Hlavní důvod je usnadnění vývoje, všechno je v jednom balíku a jsou přidávány i knihovny, které mohou být potenciálně užitečné. To by měla odstranit verze 1.1, kdy dojde k rozdělení projektu na více samostatných modulů. Základní distribuční balík by tak měl být okolo 10 megabajtů.

    Další problém jsou paměťové nároky programu; hned po startu si řekne o 70 megabytů a alokovat 500 MB není velký problém. Java je v tom nevinně, program je ve fázi vývoje a tedy bez optimalizací. Dalším důvodem je pak cachovaní všeho možného. Největším jedlíkem paměti je integrovaná databáze, několikagigová DB prostě potřebuje aspoň 200 MB paměti na indexy.

    Takže asi tak. Počkejte rok a uvidíte, co z toho vznikne. Pokud chcete projekt trochu urychlit, můžete se přidat. Stačí si projít zdrojové kódy a případně napsat email na [opencoeli zavinac gmail tecka com].

    Na závěr pár screenshotů

    opencoeli m13fr9
    Kulová hvězdokupa M 13 s hvězdami do 19 magnitudy z katalogu USNOA

    opencoeli m1zu5
    M 1

    opencoeli sagittarusqm6
    Střelec s množstvím objektů

    opencoeli sagdetailwd2
    Detail Střelce.

    opencoeli orionum1
    Souhvězdí Orion s hvězdami do 9 magnitud

    opencoeli spherepq2
    Celá obloha s hvězdami do 9 magnitud

           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    Fluttershy, yay! avatar 12.9.2007 00:49 Fluttershy, yay! | skóre: 93 | blog:
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Hezké.

    Ještě něco jednoduchého na geometrii, k tomu nějaký ten CAD, účetní program a pořádné ovladače a MS Windows můžeme zahodit.
    🇵🇸Touch grass🇺🇦 ✊ ani boha, ani pána
    12.9.2007 07:24 Fracty
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Nevim, jak vy ale ja normalne ucto pouzivam. Ucto 2007 bezproblemu funguje vcetne tisku
    pushkin avatar 12.9.2007 19:37 pushkin | skóre: 43 | blog: FluxBlog
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    QCAD je vyhovující, doporučuji zkusit. Opensourcnutá (fuj) je sice zatím jen verze 2.0.5 (komerční je tuším někde kolem 2.1.3), ale i ve 2.0.5 lze kompletně nakreslit synchronní generátor...
    12.9.2007 01:04 Rudolf Novak
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Vypada to moc hezky. Skoro jako nase DOSove programy co kreslily MegaStar (GSC) - asi ten program tae znate. To byl pro DOS asi nejlepsi program... Kreslili jsme to na cernobile monitory, 14ky VGAcka a kolega Hollan tam pridal takovou featurku. Slabe hvezdy jsou krome mensiho symbolu take oskalovany (bila-seda), takze slabe hvezdy jsou jednak male a hlavne ,,sviti'' na monitoru mnohem min. S tim kdyz si pohrajete, tak to asi nakopne ty celooblohove snimky k dokonalosti :) Drzim palce a rozhodne budu pouzivat! Dik!
    12.9.2007 01:55 peter_h | blog: need4speed
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Nema to take modre panely? Brat to pouziva este teraz.
    Inak neni toto trosku tazkotonazne? Ja som robil nieco podobne ale v delphi, ale uz ma to moc neinteresuje, inak by som sa pridal.
    kotyz avatar 18.9.2007 21:29 kotyz | skóre: 25 | blog: kotyzblog | Plzeň
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    modry panely melo snad albiero. taky sem to jeden cas pouzival. pak sem mel nocni oblohu a ted mam kstars a stellarium.
    Hrdý člen KERNEL ULTRAS. | Furry/Brony/Otaku | Nemám čas ztrácet čas. | In 'pacman -Syu' we trust!
    12.9.2007 02:01 jk
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Vsak si taky pamatuju jak si me v Upici do Megastaru zaucoval :-)
    12.9.2007 09:07 Leoš Literák | skóre: 74 | blog: LL | Praha
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    drzim palce
    Zakladatel tohoto portálu. Twitter, LinkedIn, blog, StackOverflow
    12.9.2007 09:08 xXx
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Nieco podobne (s podobnym typom vykreslovania) som mal v plane robit ale nie s tak vela featurami a hlavne bez gui s priamym vystupom do ps/pdf ale vidim ze uz nemusim.
    12.9.2007 10:41 Jiri Bajer | skóre: 34 | blog: Sarimuv koutek | Praha
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Vypada to slibne a hlavne precizne navrzene, to dneska dela malokdo. Planujete take nejakou spolupraci s projektem Stellarium? At uz na urovni algoritmu, datovych podkladu, nebo uzivatelskeho rozhrani...
    12.9.2007 11:31 Trained.Monkey | skóre: 12 | blog: monkey
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Ze Stellaria chci pouzit obrazky objektu. Spolupraci se nebranim, ale oba projekty maji jine zamereni.
    12.9.2007 14:27 helemesecotonese
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    xephem mi prisel dosti profesionalni...
    12.9.2007 19:56 HS
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    Program vyzera fakt slubne. Aj ked nemam moc rad javovske aplikacie, ale myslim, ze tuto by som pouzival s radostou.

    Co sa tyka dat, mozno by nebolo odveci dat moznost dotahovat data z internetu. Takuto funkciu ma napr. program XEphem. Vyzera, to asi tak, ze ked sa vela zazoomuje, program dotiahne slabe hviezdy pre dany kusok oblohy z internetu.
    16.9.2007 08:45 Michal Švanda | skóre: 19 | blog: vlkovo
    Rozbalit Rozbalit vše Re: Planetárium OpenCoeli: Cartes du Ciel for Java
    No Rysu, vidím, že ses od srážkoměrů a utilitek pro DOS dostal o dost dál -- gratuluju! Hodně štěstí při další práci.

    Založit nové vláknoNahoru

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