Řešil jsem problém s Matlabem a předáním neznámých z handleru eventu. Klasickým způsobem jako u standardních funkcí to řešit nelze. Vymyslel jsem několik způsobů s mými dosavadními znalostmi – zápis neznámých do .mat souboru, do .txt souboru nebo pomocí globálních proměnných. Zřejmě by také bylo možné (a nejelegantnější, i když složitější) vytvoření vlastní třídy a volání její příslušné metody. Moje řešení mi fungovali při spuštění grafického uživatelského rozhraní přímo z Matlabu, nikoli však po zkompilování aplikace do samostatného .exe souboru. Dlouho mě nic nenapadalo, ale řešení je, jak to už tak bývá, až nemile primitivní. Kompilátor Matlabu nezahrnuje do kompilace soubor s handlerem, pokud mu to výslovně neřeknete. Obecně všechny soubory, na které je ve zdrojovém kódu odkazováno pouze uvnitř nějakého stringu, nejsou do kompilace zahrnuty. Tuto funkci je potřeba ve skriptu definovat jako „%#funcion function_name“ nebo při kompilování pomocí příkazu mmc explicitně doplňkové soubory jmenovat. Takže si na to dejte pozor, pokud narazíte na tuto malou zradu, která se jen špatně odhaluje.
ATControl: Leica AT401, AT402 Matlab controlling application
I have written an application, based on Matlab scripting language, which is controlling Leica AT40x (AT401, AT402, AT403) absolute laser tracker. Reason to write this application is that the official software by Leica (Tracker Pilot) does not allow to register all needed data. Commercial solutions (Polyworks, Spatial Analyzer) are very expensive and huge software packages which are primarily designed to be used in industrial metrology (car and airplain industry). Pokračovat ve čtení „ATControl: Leica AT401, AT402 Matlab controlling application“