|
Généralités
HullCAO 5 permet à l'utilisateur de définir avec beaucoup
de latitude le contenu et l'apparence des rapports de calcul imprimables.
Cette personnalisation se fait par l'intermédiaire de fichiers
modèles de rapport (Tagged Report Description Files).
HullCAO est livré en standard avec un fichier modèle standard
pour chaque type de rapport. Ces fichiers sont présent dans le
répertoire de HullCAO et portent les noms:
- "ReportTemplateStatic.txt" pour les calculs au repos
- "ReportTemplateRoulis.txt" pour les calculs en roulis
- "ReportTemplateTangage.txt" pour les calculs en tangage
- "ReportTemplatePilonnement.txt" pour les calculs en pilonnement
Ces modèle doivent être présent dans le même
répertoire que le programme HullCAO.exe, et leur nom ne doit pas
être modifié.
Contenu des modèles de rapport
Les modèle de rapport permettent de construire un rapport contenant
:
- du texte
- des valeurs résultats de calcul
- des tableaux de résultats de calcul
- des graphiques présentant des résultats de calcul
Ces modèles sont des fichiers texte décrivant le contenu
de chaque rapport. en voici un exemple :
<GRAPH\BEGIN\0.5\1.0>
<GRAPH\ITEM\ROULIS\GZT\0.0\1.0\0.0\0.5\Rappel hydrostatique en roulis>
<GRAPH\ITEM\ROULIS\CBX\0.0\0.5\0.5\1.0\Evolution du centre de carène>
<GRAPH\ITEM\ROULIS\WETSURF\0.5\1.0\0.5\1.0\Evolution de la surface
mouillée>
<GRAPH\END>
<STYLE\BOLD>Système d'unité en vigueur : Distance : <VAR\UNIT1\STR>
, Masse : <VAR\UNITW\STR>
<STYLE\BOLD> Résultats de Stabilité :
Angle de chavirement
statique : <VAR\THETAS\DEC> degrés
Stabilité maxi : bras
de levier du rappel transversal de <VAR\GZMAX\DEC> <VAR\UNIT1\STR>
Angle de stabilité maxi
(dit 'angle limite de stabilité statique') : <VAR\THETA0\DEC> degrés
<STYLE\BOLD> Tableau des résultats :
Légende des abréviations
ROULIS : Angle de roulis
en degrés
GZT : Bras de levier
du rappel hydrostatique transversal en <VAR\UNIT1\STR>
HZT : Hauteur métacentrique
transversale en <VAR\UNIT1\STR>
VOLUME: Valeur du déplacement
(correspondant au volume immergé) en <VAR\UNITW\STR>
WETSURF : Surface mouillée
en <VAR\UNIT2\STR>
CBX: Position longitudinale
du centre de carène (dans le repère absolu de la carène) en <VAR\UNIT1\STR>
CBZ: Position verticale
du centre de carène (dans le repère absolu de la carène) en <VAR\UNIT1\STR>
LATSURF: Surface latérale
anti-dérive en <VAR\UNIT2\STR>
LATCGX: Position longitudinale
du centre de surface anti-dérive en <VAR\UNIT1\STR>
LATCGZ: Position verticale
du centre de surface anti-dérive en <VAR\UNIT1\STR>
PILON : Valeur du pilonnement
(enfoncement / lignes de conception) en <VAR\UNIT1\STR>
TANGAGE : angle du tangage
en degrés
<TABLE\11\ROULIS\GZT\HZT\VOLUME\CBX\CBZ\LATSURF\LATCGX\LATCGZ\PILON\TANGAGE>
<STYLE\BOLD>Conditions de calcul :
Analyse entre l'angle
<VAR\POS1\DEC> degrés et l'angle <VAR\POS2\DEC> degrés
Analyse de <VAR\NBPOS\INT>
angles
Masse du navire : <VAR\MASSE\DEC>
<VAR\UNITW\STR>
Position verticale du
centre de gravité : Z = <VAR\CGZ\DEC>
Position longitudinale
du centre de gravité : X = <VAR\CGX\DEC>
<CONDITION\FREEPILON\DIF\0> Analyse
en pilonnement libre
<CONDITION\FREEPILON\DIF\0> Précision
à atteindre sur le déplacement : <VAR\ACCURP\DEC> % de la masse
<CONDITION\FREEPILON\EQU\0> Valeur
de pilonnement imposée : <VAR\PILON\DEC> <VAR\UNIT1\STR>
<CONDITION\FREETANG\DIF\0> Analyse
en tangage libre
<CONDITION\FREETANG\DIF\0> Précision
à atteindre (écart Bx/Gx) : <VAR\ACCURB\DEC> % de la longueur
<CONDITION\FREETANG\EQU\0> Valeur
de tangage imposée : <VAR\TANGAGE\DEC> degrés
Comme vous pouvez le constater, la description du rapport utilise un
langage dont la sémentique est assez simple, et basée sur
des mots clé définis comme des TAG XML (entre < et >).
Pourle reste, le texte est copié tel quel dans le rapport. HullCAO
respecte aussi les retour à la ligne te les espaces positionnés
dans le modèle.
Sémentique du langage "Tagged Report Description
File "
| Nom du TAG |
Syntaxe |
Commentaire |
Exemple |
| VAR |
<VAR\NomVariable\TypeVariable> |
Insertion d'un résultat de calcul sous forme de valeur isolée.
NomVariable est le nom abrégé
de la variable à insérer (la liste des abréviations
est donnée dans la rubrique "résultats
de calculs" pour chaque type de calcul) prise dans les
variables générales ou les conditions de calcul. TypeVariable
décrit le type de variable à afficher et peut prendre
2 valeurs : DEC pour un nombre
décimal, STR pour une
chaine de caractères, INT
pour un nombre entier.
En plus des variables disponibles sous forme de résultats
de calcul, 4 variables permettent d'appeler les unités :
UNITW pour les masses, UNIT1
pour les distances, UNIT2 pour
les surfaces, UNIT3 pour les
volumes.
|
<VAR\POS1\DEC> |
| STYLE |
<STYLE\NomStyle>
pour les styles simples
<STYLE\COLOR\Composante
Rouge
\Composante Verte\Composante
Bleue>
pour le style COLOR
|
Placé en début de ligne, permet d'attribuer un style
particulier au texte qui suit dans le ligne. Les valeurs possibles
pour NomStyle sont :
- BOLD : gras
- ITALIC : Italique
- UNDERLINED : Souligné
- T1 : Taille normale (par défaut)
- T2 : Taille supérieure
- T3 : Taille maximale
- COLOR : couleur spécifique (les composantes sont des
nombres compris entre 0 et 255 inclus).
Il est possible de cumuler les styles en faisant suivre plusieurs
instructions style. |
<STYLE\BOLD><STYLE\ITALIC>
<STYLE\COLOR\255\0\0> |
| CONDITION |
<CONDITION\NomVariable\
Opérateur conditionnel \Valeur> |
Placé en début de ligne, permet de n'afficher la
ligne correspondante que si la condition est satisfaite.
NomVariable est le nom abrégé
de la variable comme pour l'instruction VAR. Opérateur
conditionnel peut prendre les valeurs suivantes : INF
Signifiant "Inférieur à", SUP
Signifiant "Supérieur à", EQU
Signifiant "Egal à", DIF
Signifiant "Différent de". Valeur
est obligatoirement une valeur numérique fixe.
|
<CONDITION\FREETANG\EQU\0> |
| TABLE |
<TABLE\NbVariables\NomVariable1
\NomVariable2\NomVariable3\....> |
Insère une table de valeurs pour un rapport de calcul contenant
des variables disponibles à chaque position d'analyse pour
un calcul multi-position. NbVariables
est le nombre de variable à afficher dans le tableau.
Cette instruction n'est pas utilisable pour le rapport de calcul
au repos.
|
<TABLE\11\ROULIS\GZT\HZT\
VOLUME\CBX\CBZ\LATSURF\
LATCGX\LATCGZ\PILON\TANGAGE> |
| GRAPH |
<GRAPH\BEGIN\TH\VH>
<GRAPH\ITEM\VarNameX\
VarNameY\SX\EX\SY\EY\Titre>
<GRAPH\END>
|
Insère un groupe de graphiques dans une portion de page
de rapport.Cette instruction n'est pas utilisable pour le rapport
de calcul au repos.
Le groupe de graphique contient autant de graphique qu"il
y a d'instruction GRAPH\ITEM entre les instructions GRAPH\BEGIN
et GRAPH\END, qui sont obligatoires.
TH représente la portion
horizontale de page occupée par le groupe de graphique. La
valeur 1.0 correspond à toute la largeur de la page; 0.5
à la moitié.
VH représente la portion
verticale de page occupée par le groupe de graphique. La
valeur 1.0 correspond à toute la hauteur de la page; 0.5
à la moitié.
VarNameX
est la variable utilisée en abscisse du graphique. Elle doit
être prise parmi les variables disponibles à chaque
position d'analyse dans les calculs
multi-position.
VarNameY
est la variable utilisée en ordonnée du graphique.
Elle doit être prise parmi les variables disponibles à
chaque position d'analyse dans les calculs
multi-position.
SX,SY représentent les
coordonnées du coin haut/gauche du graphique dans le groupe
de graphique. Les valeurs possibles vont de 0.0 à 1.0
EX,EY représentent les
coordonnées du coin bas/droite du graphique dans le groupe
de graphique. Les valeurs possibles vont de 0.0 à 1.0
|
<GRAPH\BEGIN\0.5\1.0>
<GRAPH\ITEM\ROULIS\GZT\
0.0\1.0\0.0\0.5\Rappel
hydrostatique en roulis>
<GRAPH\ITEM\ROULIS\CBX\
0.0\0.5\0.5\1.0\Evolution
du centre de carène>
<GRAPH\ITEM\ROULIS\WETSURF\
0.5\1.0\0.5\1.0\Evolution
de la surface mouillée>
<GRAPH\END> |
|