Napsání kódu programu

Přehled informací

Postup tvorby aplikace

V otevřeném okně kódu si prohlédněte vygenerovaný kód pomocníkem. Pomocník doplnil do kódu všechny základní nezbytné části, komentáře a svoje poznámky. Poznámky pomocníka jsou většinou následujícího tvaru:

  // NOTE: DO NOT edit the following lines.
  //{{AFX_ARX_ADDIN_FUNCS
  //}}AFX_ARX_ADDIN_FUNCS

prosím neupravujte tento kód. V dalším výkladu budou zobrazovány funkce bez těchto komentářů pomocníka, z důvodu snažší orientace v kódu.

Aby byla aplikace funkční musíme do ní doplnit následující úseky kódu:

Doplnění hlavičky funkce vypisující zprávu

Na začátek souboru za deklaraci funkcí InitApplication a UnloadApplication doplníme hlavičku funkce, která bude později vypisovat text do příkazového řádku:

  void pozdrav();

Doplnění kódu inicializační funkce

Každá aplikace nahraná do AutoCADu musí registrovat příkazy, které definuje, v AutoCADu. Pokud bychom příkazy neregistrovali, nedali by se v AutoCADu vyvolat. Registrace příkazů se uvádí v části funkce acrxEntryPoint vyvolané zprávou kInitAppMsg poslanou AutoCADem do aplikace ObjectARX. V našem příkladu je při inicializaci vyvolaná funkce InitApplication. Doplníme tedy do ní kód pro inicializaci příkazu v AutoCADu:

  // inicializace aplikace, zaregistrování
  void InitApplication()
  {
    // zaregistrování nového příkazu
    acedRegCmds->addCommand("skupinaPozdrav",
                            "_Hello", "pozdrav",
                            ACRX_CMD_TRANSPARENT | ACRX_CMD_USEPICKSET
                            , pozdrav);
    ads_printf("\nFunkce se spustí napsáním příkazu \"pozdrav\"
               do příkazového řádku.");
  }

Ve funkci použijeme k registraci příkazu funkci addComand. Dobrým zvykem je také uvádět v inicializační části funkci, která vytiskne do příkazového řádku informaci, jakým způsobem spustit nahranou aplikaci.

Doplnění kódu části zavolané při ukončení programu

Aplikace ObjectARX, musí po dokončení své činnosti (při odstranění z AutoCADu) odstranit všechny příkazy a třídy, které během své činnosti v AutoCADu vytvořila. Naše aplikace přidala do AutoCADu pouze nový příkaz, proto stačí odstranit pouze tento příkaz, případně celou skupinu příkazů. K tomuto účelu slouží funkce pro odstranění skupiny příkazů removeGroup. Do aplikace doplníme následující kód funkce UnloadApplication():

  // uvolnění aplikace, odregistrování
  void UnloadApplication()
  {
    // odstranění skupiny příkazů
    acedRegCmds->removeGroup("skupinaPozdrav");
  }

Doplnění kódu funkce vypisující informaci

Posledním krokem k dokončení aplikace, je dopsání kódu funkce nazdar(). Na konci souboru Jednoduchy.cpp dopíšeme kód funkce:

  void pozdrav()
  {
    ads_printf("\nDobrý den, toto je první program napsaný v
                ObjectARX, používající několik základních funkcí.");
  }

K zobrazení zprávy použijeme funkci ADS - ads_printf(). Pokud se vám funkce zdá povědomá, jedná se o funkci printf používanou v C++, která zobrazuje informaci v příkazovém řádku AutoCADu.

Zdrojový kód procedury

Zdrojový kód projektu je možné nahrát v zabaleném souboru jednoduchy.zip. Nahraný kód musíte rozbalit a ve vývojovém prostředí Visual C++ otevřít soubor pracovního prostoru nebo projektu (jednoduchy.dsw nebo jednoduchy.dsp). Visual C++ poté načte celý projekt.

Doporučujeme Vám vyzkoušet si alespoň tvorbu projektu pomocí pomocníka a napsání několika řádek kódu, abyste poznali vývojové pomůcky prostředí Visual C++.