O společnostiProduktyObchodPodpora
Moravské přístroje
Hlavní stránka
O společnosti
Stažení software
Stažení dokumentů
Produkty
Control Web
Strojové vidění VisionLab
Kamery DataCam a osvětlovače DataLight
Průmyslový počítačový systém DataLab
Vědecké kamery
Speciální technika
Ceník
Aktivace produktů
Služby
Školení
Zakázková řešení
Podpora
Volba kamery a objektivu pro Strojové vidění
Control Web - Ukázkové aplikace

Hlavní stránkaPodporaFAQ

3D grafika
Otázky a odpovědi související s 3D grafikou v systému Control Web.

Obsah sekce:

Proč 3D přístroje umístěné v objektech gl_panel nebo gl_scene nevyvolávají proceduru OnMouseDown a nezobrazují text v bublině?

Proč 3D přístroje umístěné v objektech gl_panel nebo gl_scene nevyvolávají proceduru OnMouseDown a nezobrazují text v bublině?

Tyto mechanismy (spolu s několika jinými), jsou vázány na existenci okna ve Windows (HWND, spolu s ním DC atd...), fungují tedy nad každým takovýmto oknem (obdélníkem na obrazovce). U 3D přístrojů pracují jen nad přístroji, které mají registrováno takovéto své okno (a spolu s ním svůj vykreslovací kontext), tedy na první úroveň registrovaných 3D přístrojů nad pracovní plochou Windows (ať je tato v libovolné hierarchické úrovni 2D panelů). 3D přístroje v dalších úrovních nad 3D panelem nebo 3D scénou již obecně nejsou reprezentovány nějakým obdélníkem na obrazovce (jedná se o perspektivní projekci 3D polygonů přístroje do 2D plochy obrazovky).

Tyto mechanismy by sice bylo možno i ve 3D prostoru do jisté míry napodobit a simulovat, detekce viditelných polygonů, nad kterými je právě kurzor myši, je celkem snadná, avšak náročná na výkon počítače. V systému Control Web je tako vlastnost vestavěna, je ale implicitně vypnuta.

3D přístroje disponují událostní procedurou On3DMouseClick, která je vyvolávána při kliknutí levým tlačítkem na přístroj. Podmínkou aktivace těchto mechanismů je zapnutí solve_mouse_click v 3D scéně nebo 3D panelu.

 
 | O společnosti | Produkty | Podpora | Stažení software | Stažení dokumentů | 
Moravské přístroje, a.s., Masarykova 1148, Zlín-Malenovice, 76302