Referentiel_Competences/modeles/frame_competence.tex

327 lines
16 KiB
TeX

%%%%%%%%%%%%%%% Détails d'une compétence
% Usage : \frameCompetence{abbr_comp}{type_comp}{lettre_comp} % {compteur_comp}
\newcommand\frameCompetence[3]{
\xdef\CNOM{#1} % Abbr de la compétence : CCA/CyberA
\xdef\CTYPE{#2} % Type : C pour commun, S pour spécifique
\xdef\CLETTRE{#3} % Letter
%\def\CNOM{CyberA}
%\def\CTYPE{S}
%\def\CLETTRE{A}
\def\comptopmargin{-5mm} % reduit marge haute
\begin{frame}[plain]{}
\subsection{\csname compcode\CNOM\endcsname~: \csname compname\CNOM\endcsname}
\begin{tikzpicture}[overlay, remember picture]
\coordinate(topleftcorner) at ($ (current page.north west) + (10mm,\comptopmargin) $);
\coordinate(bottomleftcorner) at ($ (current page.south west) + (10mm,10mm) $);
\coordinate(bottomrightcorner) at ($ (current page.south east) + (-10mm,10mm) $);
\coordinate(lastpoint) at ($ (current page.north west) + (10mm,\comptopmargin) $);
\coordinate(toprightcorner) at ($ (current page.north east) + (-12mm,\comptopmargin) $);
\coordinate(refpoint) at ($ (lastpoint)+(0mm,0mm) $);
\coordinate (bottompoint) at ($ (lastpoint)+(0,-20mm) $);
\coordinate (subrefpoint) at ($ (refpoint)+(90mm,0mm) $); % Segmentation
% Liste des composantes essentielles en haut de la page:
\begin{pgfonlayer}{main}
% \draw ($ (current page.north west) + (10mm,-10mm) $) rectangle ($ (current page.south east) + (-10mm,10mm) $);
% \draw[thick](lastpoint)--++(-1cm,0);
\node[outer sep=0,inner sep=0mm,% les composantes essentielles
minimum height=20mm,%
text width=190mm,%130
align=left,%
text=comp\CTYPE\CLETTRE p,fill=comp\CTYPE\CLETTRE!70!white%
] (rightrightbox) at (lastpoint-|subrefpoint) [anchor=north west] {%
\ifcsdef{componame\CNOM A}{ % Si au moins une compo essentielle
\begin{list}{$\bullet$}{\topsep=0pt \partopsep=0pt \parsep=0pt \itemsep=0pt \leftmargin=1.6em \itemindent=0em}%
%% boucle sur les composantes essentielles
%\item test \compoloop
\foreach \YY in \compoloop {%
\ifcsdef{componame\CNOM\YY}{
\item \textcolor{comp\CTYPE\CLETTRE p}{En \csname componame\CNOM\YY\endcsname}
}{\linebreak}%
}
\end{list}%
}{}
};
% Titre de la compétence
\coordinate(bottompoint) at ($ (rightrightbox.south west)+(-5mm,0) $);
\coordinate(toppoint) at ($ (refpoint) $);
\node[outer sep=0,inner sep=0mm,%
text width=63mm,%
fit=(bottompoint)(toppoint),
align=center,%
fill=comp\CTYPE\CLETTRE,text=comp\CTYPE\CLETTRE p%
] (leftbox) {%
\Large\bfseries Compétence \csname compcode\CNOM\endcsname\\[3mm]
\begin{hyphenrules}{nohyphenation}\csname compname\CNOM\endcsname\end{hyphenrules}%
};
\end{pgfonlayer}
% Le fond coloré général de la compétence
\begin{pgfonlayer}{background}
\coordinate(toppoint) at ($ (lastpoint)+(30mm,2mm) $);
\coordinate(bottompoint) at ($ (rightrightbox.south east)+(2mm,-2mm) $);
\coordinate(bottomwpoint) at ($ (leftbox.south east)+(2mm,-2mm) $);
\node[outer sep=0,inner sep=0mm,
fit=(leftbox)(rightrightbox)(toppoint)(bottompoint)(bottomwpoint), % (rightbox)
fill=comp\CTYPE\CLETTRE,
blur shadow={shadow blur steps=5}
] (bodybox) {};
\coordinate (tmpa) at ($ (lastpoint)+(80mm,0) $);
\coordinate (tmpb) at (tmpa|-bodybox.south);
\fill[fill=comp\CTYPE\CLETTRE!50!white] ($ (leftbox.north east)+(2mm,0mm) $) rectangle ($ (bodybox.south west-|rightrightbox.south west)+(-2mm,2mm) $);
\coordinate(toppoint) at ($ (lastpoint)+(25mm,2mm) $);
\end{pgfonlayer}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% La définition
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\coordinate(lastpoint) at ($ (lastpoint|-bodybox.south) + (0,-4mm) $);
\coordinate (subrefpoint) at ($ (refpoint)+(45mm,0mm) $);
\begin{pgfonlayer}{main}
% \draw[thick](lastpoint)--++(-1cm,0);
\node[outer sep=0,inner sep=0mm,%
minimum height=20mm,%
text width=225mm-(\value{cptressource}*5mm),%
align=left,%
text=black,fill=comp\CTYPE\CLETTRE!10!white%
] (rightbox) at (lastpoint-|subrefpoint) [anchor=north west] {%
\textcolor{black}{\csname compdef\CNOM\endcsname}%
};
\coordinate(bottompoint) at ($ (rightbox.south west)+(-10mm,0) $);
\coordinate(toppoint) at ($ (lastpoint)+(32mm,0mm) $);
\node[outer sep=0,inner sep=0mm,%
% text width=45mm,%
% fit=(bottompoint)(toppoint),
align=right,%
% fill=comp\CTYPE\CLETTRE,text=comp\CTYPE\CLETTRE p%
] at ($ (rightbox.west)+(-10mm,0) $) [anchor=east] (leftbox) {%
\large\bfseries Définition%
};
\end{pgfonlayer}
\begin{pgfonlayer}{background} % La barre verticale de la définition
\coordinate(toppoint) at ($ (rightbox.north west)+(-2mm,2mm) $);
\coordinate(bottompoint) at ($ (rightbox.south east)+(2mm,-2mm) $);
\node[outer sep=0,inner sep=0mm,
fit=(toppoint)(bottompoint),
fill=comp\CTYPE\CLETTRE!10!white,
blur shadow={shadow blur steps=5}
] (bodybox) {};
\coordinate (tmpa) at ($ (lastpoint)+(80mm,0) $);
\coordinate (tmpb) at (tmpa|-bodybox.south);
\fill[fill=comp\CTYPE\CLETTRE] ($ (rightbox.north west)+(-6mm,0mm) $) rectangle ($ (rightbox.south west)+(-5mm,0) $);
\end{pgfonlayer}
%\coordinate (domaines) at ($ (toprightcorner|-lastpoint) $);
%\coordinate (domtxtA) at ($ (domaines)+(0mm,-2mm) $);
%%% Fin de la définition
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Les situations professionnelles
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\coordinate(lastpoint) at ($ (lastpoint|-rightbox.south) + (0,-6mm) $);
\coordinate (subrefpoint) at ($ (refpoint)+(45mm,0mm) $);
\begin{pgfonlayer}{main}
% \draw[thick](lastpoint)--++(-1cm,0);
\node[outer sep=0,inner sep=0mm,%
minimum height=15mm,%
text width=225mm-(\value{cptressource}*5mm),%
align=left,%
text=black,fill=comp\CTYPE\CLETTRE!20!white%
] (rightbox) at (lastpoint-|subrefpoint) [anchor=north west] {%
\ifcsdef{situproname\CNOM A}{ % S'il y a au moins une situation pro
\begin{list}{\checkmark}{\topsep=0pt \partopsep=0pt \parsep=0pt \itemsep=0pt \leftmargin=2em \itemindent=0em}%
\foreach \YY in \situloop {%
\ifcsdef{situproname\CNOM\YY}{\item %
\textcolor{black}{\csname situproname\CNOM\YY\endcsname}}{}%
}
\end{list}%
}{}
};
\coordinate(bottompoint) at ($ (rightbox.south west)+(-10mm,0) $);
\coordinate(toppoint) at ($ (lastpoint)+(32mm,0mm) $);
\node[outer sep=0,inner sep=0mm,%
% text width=45mm,%
% fit=(bottompoint)(toppoint),
align=right,%
% fill=comp\CTYPE\CLETTRE,text=comp\CTYPE\CLETTRE p%
] at ($ (rightbox.west)+(-10mm,0) $) [anchor=east] (leftbox) {%
\large\bfseries Situations\\\large\bfseries professionnelles%
};
\end{pgfonlayer}
%\ifcsdef{domaineA}{
%\coordinate (domaines) at ($ (lastpoint|-lastpoint)+(-400mm,0)+(0,2mm) $);
%\node[inner sep=0,outer sep=0,anchor=north west,text width=\value{cptressource}*5mm,align=center] (domtxt) at (domaines) {\textbf{Domaines de ressources}};
%\node[inner sep=0,outer sep=0,fit=(domaines)] (domcont) {};
%\foreach \DOM [count=\COU] in \cptressourceloop {%
%\coordinate (domanchor\DOM) at ($ (domtxt.south-|domaines)+(-5mm,-1mm)+5*(\COU mm,0) $);
%\node[inner sep=0,outer sep=0,rotate=90,anchor=north east] at (domanchor\DOM) (domtest\DOM) {\csname domaine\DOM\endcsname};
%\node[inner sep=0,outer sep=0,fit=(domcont)(domtest\DOM)] (domcont) {};
%}
%\node[inner sep=0,outer sep=0,anchor=west] (domtxt) at (domaines) {\textbf{Domaines de ressources}};
%\coordinate (domaines) at ($ (toprightcorner|-lastpoint)+\value{cptressource}*(-5mm,0mm)+(0,2mm) $);
%\node[inner sep=0,outer sep=0,anchor=north west,text width=\value{cptressource}*5mm,align=center] (domtxt) at (domaines) {\textbf{Domaines de ressources}};
%\foreach \DOM [count=\COU] in \cptressourceloop {%
%\coordinate (domanchor\DOM) at ($ (domcont.south-|domaines)+(-5mm,-1mm)+5*(\COU mm,0) $);
%\node[inner sep=0,outer sep=0,rotate=90,anchor=north west] (domtxt\DOM) at (domanchor\DOM) {\csname domaine\DOM\endcsname};
%}
%}{
\coordinate (domaines) at ($ (toprightcorner|-lastpoint) $);
\coordinate (domtxtA) at ($ (domaines)+(0mm,-2mm) $);
%}
\begin{pgfonlayer}{background} % La barre verticale des situations pro
\coordinate(toppoint) at ($ (rightbox.north west)+(-2mm,2mm) $);
\coordinate(bottompoint) at ($ (rightbox.south east)+(2mm,-2mm) $);
\node[outer sep=0,inner sep=0mm,
fit=(toppoint)(bottompoint),
fill=comp\CTYPE\CLETTRE!20!white,
blur shadow={shadow blur steps=5}
] (bodybox) {};
\coordinate (tmpa) at ($ (lastpoint)+(80mm,0) $);
\coordinate (tmpb) at (tmpa|-bodybox.south);
\fill[fill=comp\CTYPE\CLETTRE] ($ (rightbox.north west)+(-6mm,0mm) $) rectangle ($ (rightbox.south west)+(-5mm,0) $);
\end{pgfonlayer}
\coordinate (domaines) at ($ (toprightcorner|-lastpoint) $);
\coordinate (domtxtA) at ($ (domaines)+(0mm,-2mm) $);
%}
%%% Fin des situations pro
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% Sous-titres niveaux / apprentissages critiques
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\coordinate(lastpoint) at ($ (lastpoint|-rightbox.south) + (0,-4mm) $);
\coordinate (subrefpoint) at ($ (refpoint)+(45mm,45mm) $);
\begin{pgfonlayer}{main}
% \draw[thick](lastpoint)--++(-1cm,0);
\node[outer sep=0,inner sep=0mm,%
minimum height=8mm,%
text width=225mm-(\value{cptressource}*5mm),%
align=center,%
text=black,
] (rightbox) at (lastpoint-|subrefpoint) [anchor=north west] {\large\bfseries Apprentissages critiques};
\coordinate(bottompoint) at ($ (rightbox.south west)+(-10mm,0) $);
\coordinate(toppoint) at ($ (lastpoint)+(32mm,0mm) $);
\node[outer sep=0,inner sep=0mm,%
%text width=45mm,%
% fit=(bottompoint)(toppoint),
align=center,%
% fill=comp\CTYPE\CLETTRE,text=comp\CTYPE\CLETTRE p%
] at ($ (rightbox.west)+(-15mm,0) $) [anchor=east] (leftbox) {%
\large\bfseries Niveaux de \\ \large\bfseries développement%
};
\end{pgfonlayer}
\coordinate (lastpoint) at ($ (lastpoint|-rightbox.south) + (0,-4mm) $);
\coordinate (subrefpoint) at ($ (refpoint)+(45mm,0mm) $);
\coordinate (domaines) at ($ (toprightcorner|-lastpoint) $);
\coordinate (domtxtA) at ($ (domaines)+(0mm,5mm) $);
%}
%%% Fin des sous-titres
% title box => replacement des coordonnées
\node[inner sep=2mm,outer sep=0,fit=(bodybox)(domtxtA.west)] (titlebox) {};
\coordinate(lastpoint) at (lastpoint|-titlebox.south);
\coordinate(highright) at ($ (rightbox.west|-lastpoint)+(-10mm,0) $);
\coordinate(highleft) at (highright-|lastpoint);
\coordinate(highmid) at ($ .5*(highright)+.5*(highleft) $);
%% Les niveaux
\foreach \NIV in \nivloop {%
\ifcsdef{niveauname\CNOM\NIV}{ % Si le niveau existe
% \pause
\begin{pgfonlayer}{main} % Liste des apprentissages critiques
% \draw[thick](lastpoint)--++(-1cm,0);
\node[outer sep=0,inner sep=0mm,%
minimum height=20mm,%
text width=225mm-(\value{cptressource}*5mm),%
align=left,%
text=black,fill=white%
] (rightbox) at (lastpoint-|subrefpoint) [anchor=north west] {%
\large % Taille police
\ifcsdef{apprdesc\CNOM\NIV A}{ % Si un apprentissage critique est décrit
\begin{list}{$\bullet$}{\topsep=0pt \partopsep=0pt \parsep=0pt \itemsep=0pt \leftmargin=1em \itemindent=0em}%
\foreach \YY in \apploop {%
\ifcsdef{apprdesc\CNOM\NIV\YY}{\item %
\tikz[remember picture,overlay]{\coordinate(list\YY) at (0,0);%
}%
\textcolor{black}{\csname apprdesc\CNOM\NIV\YY\endcsname}}{}%
}
\end{list}%
}{}%
};
%\ifcsdef{domaineA}{
%\foreach \YY in \apploop {%
%\ifcsdef{comp\XX niv\NIV app\YY}{
%\foreach \DOM in \cptressourceloop {%
%\ifcsdef{comp\XX niv\NIV app\YY dom\DOM}{%
%\fill[fill=comp\CTYPE\CLETTRE] ($ (list\YY-|domtxt\DOM.north west)+(.5mm,0mm) $) rectangle ++(3mm,3mm);
%}{
%\fill[fill=black!20!white] ($ (list\YY-|domtxt\DOM.north west)+(.5mm,0mm) $) rectangle ++(3mm,3mm);
%}
%}
%}
%}
%}{}
\coordinate(lowright) at ($ (highright)+(0,-25mm) $);
\coordinate(lowmid) at ($ (highmid)+(0,-25mm) $);
\node[inner sep=0,outer sep=0,text width=33mm,anchor=north,align=center] (testarrow) at ($ (highmid)+(-200mm,-2mm) $) {
\textbf{\csname niveauname\CNOM\NIV\endcsname}\\
\begin{hyphenrules}{nohyphenation}\csname niveaudesc\CNOM\NIV\endcsname\end{hyphenrules}
};
\node[inner sep=0,outer sep=0,fit=(rightbox)(lowright)(testarrow)] (thearrow) {};
\coordinate(lowright) at (highright|-thearrow.south);
\coordinate(lowleft) at (lowright-|lastpoint);
\coordinate(lowmid) at ($ .5*(lowright)+.5*(lowleft)+(0,-5mm) $);
\node[inner sep=0,outer sep=0,text width=33mm,anchor=north,%
align=flush center,%
text=comp\CTYPE\CLETTRE p!\csname niveauink\NIV\endcsname!black] (arrow) at ($ (highmid)+(0mm,-2mm) $) {
\textbf{\csname niveauname\CNOM\NIV\endcsname}\\
\csname niveaudesc\CNOM\NIV\endcsname
};
\end{pgfonlayer}
\begin{pgfonlayer}{background} % Flèche
\draw[%
thick,%
fill=comp\CTYPE\CLETTRE!\csname niveaufill\NIV\endcsname!white,
draw=comp\CTYPE\CLETTRE!\csname niveaupath\NIV\endcsname!white,
blur shadow={shadow blur steps=5}
](highright)--(highmid)--(highleft)--(lowleft)--(lowmid)--(lowright)--cycle;
\end{pgfonlayer}
% Décalage des positions
\draw[thick,draw=comp\CTYPE\CLETTRE] ($ (highright)+(10mm,0) $)--(highright-|toprightcorner);
\coordinate (lastpoint) at ($ (lastpoint|-lowleft)+(0,-2mm) $);
\coordinate (highmid) at ($ (lowmid)+(0,-2mm) $);
\coordinate (highleft) at ($ (lowleft)+(0,-2mm) $);
\coordinate (highright) at ($ (lowright)+(0,-2mm) $);
%}
}{} % fin existante niveau
} % fin boucle niveau
% Le numero de pages
\node[inner sep=0,outer sep=0,text width=33mm,anchor=north,align=center] (testarrow) at ($ (bottomrightcorner)+(0mm,0mm) $) {
\insertframenumber{}~/~\inserttotalframenumber{}
};
\end{tikzpicture}
\end{frame}
}