Úpravy #
Súčasťou CircuitMacros sú makrá a premenné, pomocou ktorých môžeme upravovať zobrazenie prvkov v zapojení. Hrubšími čiarami môžeme zvýrazniť kritickú časť obvodu, farebne oddeliť a zvýrazniť popis častí obvodov, popisu prvkov alebo upozorniť na konštrukčné detaily.
Farba #
Pre zmenu farby kreslenie je definované makro setrgb(r, g, b), ktorého argumentami sú RGB zložky farby. Pre jednoduchšiu zmenu farby kreslenia je možné použiť makrá pre pomenované farby color_
include(lib_color.ckt)
resistor(2,,E);
color_blue; llabel(,R_1,);
color_reset;
dot;
{ resistor(down_ 1.5,,E); rlabel(,R_3,); }
color_red;
capacitor(right_ 1.5,,E); llabel(,C_1,); rlabel(,10 \mu F,);
resistor(right_ 2,,ES);
color_reset;
llabel(,R_4,); rlabel(,10 \Omega,);
Obr. 53 Použitie pomenovaných farieb#
Zvýraznenie #
Zvýraznenie prvku v zapojení dosiahneme zmenou šírky čiary, táto je určená makrom linethick_(n). Volanie makra bez argumentu linethick_() nastaví pôvodnú hrúbku. Zmena hrúbky čiary neovplyvňuje zobrazenie textov, Obr. 54.
right_;
resistor(2,,E); llabel(,R_1,);
R2:[ linethick_(1.2); # lokálna zmena hrubky čiary
resistor(2,,ES);
]
llabel(,R_2,); rlabel(,470 \Omega / 5 W,);
linethick_();
resistor(2,,E); llabel(,R_3,);
Obr. 54 Zvýraznenie komponentu zmenou hrúbky čiary.#
Zmena veľkosti #
Veľkosť prvkov zapojenia je úmerná hodnote premennej linewid, ktorá je definovaná v nastavení parametrov prostredia a je možné ju v programe meniť. Zmena veľkosti prvkov neovplyvňuje veľkosť textu, Obr. 55.
right_;
resistor(2,,E); llabel(,R_1,); # štandardná veľkosť
R2:[ linewid = linewid*1.5; # lokálna zmena velkosti v bloku
resistor(2,,ES);
]
llabel(,R_2,); rlabel(,470 \Omega / 5 W,);
resistor(2,,E); llabel(,R_3,); # štandardná veľkosť
Obr. 55 Zmena veľkosti komponentov pomocou premennej linewid.#
Tienenie #
Pre doplnenie tienenia k prvku zapojenie použijeme obdĺžnik, ktorý umiestnime do stredu prvku a jeho rozmery odvodíme od premennej elen_, ktorá definuje veľkosť dvojpólu, Obr. 56.
right_;
resistor(2,,E); llabel(,R_1,);
SH:[ # blok
RR:resistor(2,,ES);
llabel(,R_2,); rlabel(,470 \Omega / 5 W,); # vnutorny popis
boxrad=0.1; # tienenie
box wid elen_ ht elen_*4/5 at RR.center dashed;
]
llabel(,Shield,); # vonkajsi popis
{ dot(at SH.s); ground;} # pripojenie tienenia
resistor(2,,E); llabel(,R_3,);
Obr. 56 Tienenie prvku zapojenia.#
Pozadie #
Ak potrebujeme zvýrazniť plochu na ktorej je nakreslená časť zariadenia (napríklad na vizuálne oddelenie samostatných funkčných celkov ako je predzosilovač, filter, ochranné obvody a pod.), musíme podklad nakresliť vopred. V prípade jedného prvku odvodíme rozmery plochy priamo z predefinovaných parametrov prostredia, Obr. 57.
include(lib_color.ckt);
right_;
resistor(2,,E); llabel(,R_1,);
[
color_grey;
boxrad=0.1
box wid elen_ ht elen_*4/5 fill 0.95 ;
color_reset;
resistor(from last box.w to last box.e,, ES);
llabel(,R_2,); rlabel(,470 \Omega / 5 W,);
]
resistor(2,,E); llabel(,R_3,);
Obr. 57 Zvýraznenie pozadia jedného prvku zapojenia.#
V prípade väčších obvodov je vhodné si určiť veľkosť zvýraznenej plochy vopred a na jej obvode si zadefinovať body pripojenia, Obr. 58. Zapojenie potom nakreslíme na zvýraznenú plochu ako zložený objekt s vlastnosťami plošného prvku.
d = elen_*5/6; # veľkosť prvkov
dx = 2*d; # šírka plochu
dy = 2*d*4/5; # výška plochy
FL:[
color_grey;
boxrad=0.1
BX: box wid dx ht dy fill 0.95 ;
IN1:BX.w + (0,d/2); IN2: BX.w + (0,-d/2); # súradnice bodov na obvode
OU1:BX.e + (0,d/2); OU2: BX.e + (0,-d/2 );
color_reset;
line from IN1 right_ d/2; # zapojenie na ploche
dot; {inductor(down_ d,W); rlabel(,L,); DD1:dot;}
capacitor(right_ d); rlabel(,C,);
dot; {inductor(down_ d,W); llabel(,L,); DD2:dot;}
line to OU1;
line from IN2 to DD1 then to DD2 then to OU2;
]
# vonkajšie obvody
resistor(from FL.IN1 left_ d,,E); rlabel(,R_g,);
AC:source(down_ d); {rlabel(,V_g,); ACsymbol(at AC,,, L);}
line to FL.IN2;
line from FL.OU1 right_ 1;
resistor(down_ d,,E); llabel(,R_z,);
line to FL.OU2;
"LC Filter" at FL.n above;
Obr. 58 Zvýraznená časť zapojenia obvodu.#