3.7.4 Les directives du langage

Contrôle l'analyse de sections du fichier scène :
LANGUAGE_DIRECTIVE:
INCLUDE_DIRECTIVE | IDENTIFIER_DECLARATION | UNDEF_DIRECTIVE | FOPEN_DIRECTIVE | FCLOSE_DIRECTIVE | READ_DIRECTIVE | WRITE_DIRECTIVE | DEFAULT_DIRECTIVE | VERSION_DIRECTIVE | IF_DIRECTIVE | IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | SWITCH_DIRECTIVE | WHILE_DIRECTIVE | TEXT_STREAM_DIRECTIVE | MACRO_DEFINITION

Contenu de la référence rapide

3.7.4.1 L'inclusion de fichier

Insère le contenu d'un autre fichier scène :
INCLUDE_DIRECTIVE:
#include FILE_NAME
L'inclusion de fichier peut être imbriquée jusqu'à 10 niveaux.
FILE_NAME:
STRING

Contenu de la référence rapide

3.7.4.2 La déclaration d'identificateur

Crée un identificateur pour une valeur, un objet, etc.
IDENTIFIER_DECLARATION:
#declare IDENTIFIER = RVALUE [;] |
#local IDENTIFIER = RVALUE [;]
Jusqu'à 127 caractères, commençant avec une lettre, constitué de lettres, chiffres et/ou du caractère souligné. Les deux points sont requis pour une déclaration FLOAT, VECTOR ou COLOR.
RVALUE:
FLOAT | VECTOR | COLOR | USER_FUNCTION | STRING | ARRAY_REFERENCE | SPLINE | TRANSFORM | CAMERA | LIGHT | OBJECT | MATERIAL | INTERIOR | TEXTURE | TEXTURE_MAP | PIGMENT | COLOR_MAP | PIGMENT_MAP | NORMAL | SLOPE_MAP | NORMAL_MAP | FINISH | MEDIA | DENSITY | DENSITY_MAP | FOG | RAINBOW | SKY_SPHERE
Détruit un identificateur :
UNDEF_DIRECTIVE:
#undef IDENTIFIER

Contenu de la référence rapide

3.7.4.3 L'entrée/sortie de fichier

Ouvre un fichier texte :
FOPEN_DIRECTIVE:
#fopen FILE_HANDLE_IDENTIFIER FILE_NAME OPEN_TYPE
OPEN_TYPE:
read | write | append
Ferme un fichier texte :
FCLOSE_DIRECTIVE:
#fclose FILE_HANDLE_IDENTIFIER
Lit des chaînes, numériques et/ou des valeurs vectorielles depuis un fichier texte :
READ_DIRECTIVE:
#read ( FILE_HANDLE_IDENTIFIER, DATA_IDENTIFIER [, DATA_IDENTIFIER]... )
Utilisez defined(FILE_HANDLE_IDENTIFIER) pour détecter la fin de fichier après une lecture.
DATA_IDENTIFIER:
UNDECLARED_IDENTIFIER | FLOAT_IDENTIFIER | VECTOR_IDENTIFIER | STRING_IDENTIFIER | ARRAY_REFERENCE
Peut lire une valeur dans un tableau de référence si le tableau d'éléments a déjà été établi.
Ecrit des chaînes, des numériques et/ou des valeurs vectorielles vers un fichier texte :
WRITE_DIRECTIVE:
#write ( FILE_HANDLE_IDENTIFIER, DATA_ITEM [, DATA_ITEM]... )
DATA_ITEM:
FLOAT | VECTOR | STRING

Contenu de la référence rapide

3.7.4.4 La texture par défaut

Spécifie une texture, un pigment, une normale ou une finition par défaut :
DEFAULT_DIRECTIVE:
#default { DEFAULT_ITEM }
DEFAULT_ITEM:
PLAIN_TEXTURE | PIGMENT | NORMAL | FINISH

Contenu de la référence rapide

3.7.4.5 L'identificateur de version

Spécifie le numéro de version compatible de POV-Ray :
VERSION_DIRECTIVE:
#version FLOAT;

Contenu de la référence rapide

3.7.4.6 Les directives conditionnelles

Analyse conditionnellement une section du fichier scène, selon une expression booléenne :
IF_DIRECTIVE:
#if ( BOOL ) TOKENS [#else TOKENS] #end
TOKENS:
toute quantité de mots clés, identificateurs, valeurs et/ou ponctuation de POV-Ray.
Analyse conditionnellement une section du fichier scène, selon l'existence d'un identificateur :
IFDEF_DIRECTIVE:
#ifdef ( IDENTIFIER ) TOKENS [#else TOKENS] #end
IFNDEF_DIRECTIVE:
#ifndef ( IDENTIFIER ) TOKENS [#else TOKENS] #end
Analyse conditionnellement une section du fichier scène, selon la valeur d'une expression numérique :
SWITCH_DIRECTIVE:
#switch ( FLOAT ) SWITCH_CLAUSE... [#else TOKENS] #end
SWITCH_CLAUSE:
#case ( FLOAT ) TOKENS [#break] |
#range ( F_LOW, F_HIGH ) TOKENS [#break]
Répète une section du fichier scène tant qu'une condition booléenne est vraie :
WHILE_DIRECTIVE:
#while ( LOGICAL_EXPRESSION ) TOKENS #end

Contenu de la référence rapide

3.7.4.7 Les canaux de messages

Envoie un message à un canal texte :
TEXT_STREAM_DIRECTIVE:
#debug STRING | #error STRING | #warning STRING

Contenus de la référence rapide

3.7.4.8 Les macros

Définit une macro :
MACRO_DEFINITION:
#macro MACRO_IDENTIFIER ( [PARAM_IDENTIFIER [, PARAM_IDENTIFIER]...] ) TOKENS #end
Un identificateur de paramètre ne peut pas être répété dans la liste.
Appelle une macro :
MACRO_INVOCATION:
MACRO_IDENTIFIER ( [ACTUAL_PARAM [, ACTUAL_PARAM]...] )
ACTUAL_PARAM:
IDENTIFIER | RVALUE

Contenu de la référence rapide

3.7.4.9 Les directives inbriquées

Quelques directives peuvent être insérées dans les déclarations CAMERA, LIGHT, OBJECT et ATMOSPHERIC_EFFECT. Toutefois, les directives doivent seulement inclure des éléments (s'il y en a) qui sont valides pour une déclaration donnée. Aussi, elles ne doivent pas interompre l'ordre requis des éléments, quand il est applicable.
EMBEDDED_DIRECTIVE:
IDENTIFIER_DECLARATION | UNDEF_DIRECTIVE | READ_DIRECTIVE | WRITE_DIRECTIVE | IF_DIRECTIVE | IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | SWITCH_DIRECTIVE | WHILE_DIRECTIVE | TEXT_STREAM_DIRECTIVE

Contenu de la référence rapide

3.7.3 Les bases du langage 3.7.3 Les bases du langage 3.7.5 Les transformations 3.7.5 Les transformations