function CstCone(fid,CName,CComponent,CMaterial,CAxis,CTopradius,...
    CBottomradius,CXcenter,CYcenter,CZcenter,CRangeA,CRangeB,CSegments)
global mws cone;

% Funkce CstCone(fid, CName, CComponent, CMaterial, CAxis, CTopradius,
% CBottomradius ,CXcenter, CYcenter, CZcenter, CRangeA, CRangeB, CSegments) je
% k vytvoření kónusu programu CST. Nemá návratovou hodnotu.

% Parametry funkce:

% fid – soubor identifikující historii CST skriptu.
% CName – jméno kónusu.
% CComponent – jméno komponenty.
% CMaterial – materiál objektu.
% CAxis – osa otočení kónusu může být 'X','Y' nebo 'Z'.
% CTopradius – poloměr vrcholu kónusu.
% CBottomradius – poloměr základny kónusu.
% CXcenter – poloha kónusu ve směru X.
% CYcenter – poloha kónusu ve směru Y.
% CZcenter – poloha kónusu ve směru Z.
% CRangeA – je rozměr min, je-li například CAxis = 'Z', pak CRangeA bude Zmin.
% CRangeB – je rozměr max, je-li například CAxis = 'Z', pak CRangeB bude Zmax.
% CSegments – určuje kolik bude mít stran, pro hodnotu 0-2 je kónus rotační a pro hodnoty
% segmentu větší než 2 určuje tento parametr kolik bude mít stran.

% Příklad použití funkce:

% fid = fopen('pokus.m', 'wt');
% ...
% CstCone(fid,'cone1','component1','PEC','Z',0.5,2.0,2,1,0,0,'a+3',0);


if strcmp(CAxis,'X')
    Range = 'Xrange';
elseif strcmp(CAxis,'Y')
    Range = 'Yrange';
elseif strcmp(CAxis,'Z')
    Range = 'Zrange';
end  
%fprintf(fid, ['brick.invoke(''Name'',''',CName,''');\n']);
%Zapis do souboru temp
fprintf(fid, '%% Vytvoreni Cone\n');
fprintf(fid, 'cone = mws.invoke(''Cone'');\n');
fprintf(fid, 'cone.invoke(''Reset'');\n');
fprintf(fid, ['cone.invoke(''Name'',''',CName,''');\n']);
fprintf(fid, ['cone.invoke(''Component'',''',CComponent,''');\n']);
fprintf(fid, ['cone.invoke(''Material'',''',CMaterial,''');\n']);
fprintf(fid, ['cone.invoke(''Axis'',''',CAxis,''');\n']);
fprintf(fid, ['cone.invoke(''Topradius''',',',num2str(CTopradius),');\n']);
fprintf(fid, ['cone.invoke(''Bottomradius''',',',num2str(CBottomradius),');\n']);
fprintf(fid, ['cone.invoke(''Xcenter''',',',num2str(CXcenter),');\n']);
fprintf(fid, ['cone.invoke(''Ycenter''',',',num2str(CYcenter),');\n']);
fprintf(fid, ['cone.invoke(''Zcenter''',',',num2str(CZcenter),');\n']);
fprintf(fid, ['cone.invoke(''',Range,''',',num2str(CRangeA),',',num2str(CRangeB),');\n']);
fprintf(fid, ['cone.invoke(''Segments''',',',num2str(CSegments),');\n']);
fprintf(fid, 'cone.invoke(''Create'');\n');

%Prime vykonani funkce v programu CST
cone = mws.invoke('Cone');
cone.invoke('Reset');
cone.invoke('Name',CName);
cone.invoke('Component',CComponent);
cone.invoke('Material',CMaterial);
cone.invoke('Axis',CAxis);
cone.invoke('Topradius',CTopradius);
cone.invoke('Bottomradius',CBottomradius);
cone.invoke('Xcenter',CXcenter);
cone.invoke('Ycenter',CYcenter);
cone.invoke('Zcenter',CZcenter);
cone.invoke(Range,CRangeA,CRangeB);
cone.invoke('Segments',CSegments);
cone.invoke('Create');
end