Aide MicroStation CONNECT Edition

Mots-clés d'affectations

Les descriptions de mot-clé suivantes incluent une brève description de la fonction du mot-clé, les types d'éléments que le mot-clé affecte (le cas échéant), les types de données admises (le cas échéant) ainsi qu'un exemple d'utilisation du mot-clé. La section qui suit les mots-clés d'affectations explique comment indiquer la couleur dans une instruction d'affectation.

area_fill

Pour les traceurs qui permettent le remplissage par polygone, s'il est réglé sur vrai, le mot-clé area_fill trace les éléments fermés comme étant remplis. Définir les mots-clés d'affectations fill_color ou _pattern implique de régler area_fill sur vrai. Le mot-clé area_fill peut servir à tracer des éléments qui sinon seraient tracés remplis comme contours. N'importe quel élément fermé (hormis texte) peut être géré avec ce mot-clé, y compris les courbes b-spline fermées, les formes complexes, les ellipses et les formes.

Syntaxe :

area_fill = true
area_fill = false

Exemple :

!
! Remplissez toutes les formes avec une surface.
!
if (type == shape) then
  area_fill = true
endif

boundary_color

Le mot-clé boundary_color permet d'indiquer la couleur de limite d'un polygone rempli avec une surface ou avec un motif. Boundary_color affecte uniquement les éléments remplis dont boundary_display est réglé sur vrai. Pour une explication détaillée de la procédure d'indication de couleur, voir « Indiquer la couleur dans les instructions d'affectation » à la fin de cette section.

Syntaxe :

boundary_color = integer

(sachant que l'entier est un indice de couleur compris entre 0 et 255)

boundary_color = "string"

(sachant que la chaîne est un nom issu d'une bibliothèque de couleurs)

boundary_color = (R,G,B)

(sachant que RGB est compris dans l'intervalle 0 à 255)

Exemple :

!
! Set boundary_color and boundary_display for
! shapes on level 7.
!
if ((type == shape) and (level == 7)) then
  area_fill = true
  color = 'blue'
  boundary_display = true
	 boundary_color = 'red'
endif

boundary_display

Pour les éléments qui sont remplis dans le fichier de conception ou ayant le mot-clé area_fill dans le script de conception, le mot-clé boundary_display indique si la limite d'un polygone rempli est tracée. Le mot-clé boundary_display n'a aucun effet sur les éléments qui ne sont pas remplis.

Remarque : Régler boundary_display sur vrai pour le texte rempli risque de produire des résultats indésirables.

Syntaxe :

boundary_display = true
boundary_display = false

Exemple :

!
! Set boundary_color and boundary_display for
! shapes on level 7.
!
if ((type == shape) and (level == 7)) then
	 area_fill = true
	 color = 'blue'
	 boundary_display = true
	 boundary_color = 'red'
endif

case_sensitive

Le mot-clé case_sensitive détermine si la casse des lettres est importante dans les comparaisons de chaînes effectuées à l'aide du mot-clé de comparaison de caractères. La valeur par défaut est Faux.

Syntaxe :

case_sensitive = true
case_sensitive = false

Exemple :

!
!Remplacez les éléments de texte ayant
!les caractères "TITLE" par tout en majuscules et
!remplacez "Title" par un titre avec la première lettre en majuscules.
!
case_sensitive = true
if (characters == "TITLE") then
	 characters = "FIRST FLOOR DESIGN"
else if (characters == "Title") then
	 characters = "First Floor Design"
endif

characters

Le mot-clé characters permet de remplacer une chaîne dans un élément de texte par une nouvelle chaîne. En mettant dans votre fichier de conception des éléments texte destinés à servir de repères, vous pouvez par la suite remplacer ces chaînes par des informations utiles telles que la date où le fichier a été tracé ou le nom du fichier de conception. Si la nouvelle chaîne est plus courte que la chaîne initiale, elle est comblée par des espaces. Si la nouvelle chaîne est plus longue, la chaîne initiale s'allonge pour accueillir les caractères supplémentaires.

Le texte de remplacement peut prendre la valeur de divers jetons :

  • Une chaîne de texte littérale
  • Mots-clés de définition d'impression figurant dans le tableau ci-dessous
  • La valeur de variables d'environnement conjointement à du texte littéral
  • Jeton <expr?name=...> pour faire référence à une expression nommée
  • Le mot-clé envr_value

Les mots-clés suivants représentent les valeurs de la définition d'impression qui permet de libeller un tracé.

Mot-clé

Valeur

am_pm

Heure : am ou pm. (exemple : AM)

date

Date à laquelle a lieu le traitement de l'impression d'un aperçu ou d'une copie. (Exemple : 05-APR-1996)

day_abbreviation

Abréviation du jour à trois caractères. (exemple : ven)

day_name

Nom complet du jour. (exemple : vendredi)

day_number

Jour au format numérique. (Exemple : 05)

dgnspec

Spécification du fichier de conception principal. (exemple : C:\MONPROJ\E1.DGN)

hour

Heure de l'impression d'un aperçu ou d'une copie. (Exemple : 11)

hour_12

Numéro d'heure exprimé sur un cycle de 12 heures. (Exemple : 05)

hour_24

Numéro d'heure exprimé sur un cycle de 24 heures. (Exemple : 17)

ip_color_table

Chaîne de table de couleurs stockée dans le fichier de conception. (exemple : C:\MISC\COLOR.CTB)

ip_design

Nom du fichier de conception. (exemple : C:\MONPROJ\PLAN.DGN)

ip_design_script

Nom du script de conception associé à la tâche de tracé. Renvoie un vide si le fichier est une table d'objet.

ip_feature_table

Nom de la table d'objet associée à la tâche de tracé. Renvoie un vide si le fichier est un script de conception.

ip_logical_name

Nom logique de référence de l'élément actuel. (exemple : C:\PROJ\BORDURE.DGN)

ip_mirror

Spécifications de symétrie stockées dans la définition d'impression. Les valeurs acceptées sont les suivantes : X, Y, BOTH ou NONE.

ip_model

Modèle désigné dans la définition d'impression. (Exemple : sheetone)

ip_origin

Origine X et Y en unités indiquées par le mot-clé ip_units. (exemple : 1.500000,2.000000)

ip_origin_x

Origine X en unités définies par ip_units. (exemple : 1.500000)

ip_origin_y

Origine Y en unités définies par ip_units. (exemple : 5.000000)

ip_pen_table

Nom du script de conception associé à la tâche de tracé.

ip_plot_rescale

Valeurs X et Y de remise à l'échelle du tracé de la définition d'impression. (exemple : 3.000000,2.000000)

ip_plot_rescale_x

Valeur X de remise à l'échelle du tracé de la définition d'impression. (exemple : 3.000000)

ip_plot_rescale_y

Valeur Y de remise à l'échelle du tracé de la définition d'impression. (exemple : 2.000000)

ip_project

Projet désigné dans la définition d'impression. (exemple : Baldwinsville)

ip_queue

Renvoie le nom de l'imprimante système Windows, le cas échéant ; sinon, renvoie une chaîne vide.

ip_ref_filename

Spécification complète de fichier de référence de l'élément actuel. (exemple : C:\PROJ\ETAGE.DGN)

ip_rotation

Rotation du tracé spécifié comme angle en degrés de 0 à 360. (exemple : 45.000000)

ip_scale

Échelle du tracé au format indiqué par MS_PLT_SCALE_METHOD. Renvoie en outre la même valeur que la variable comptable MS_PLTSCALE_SHORT. (exemple : 4.000000:1.000000)

ip_short_color_table

Nom de la table des couleurs sans le répertoire. (exemple : COULEURS.TBL)

ip_short_design

Nom du fichier principal sans le nom du répertoire. (exemple : ETAGE27.DGN)

ip_short_design_script

Nom du script de conception sans le répertoire. (exemple : STANDARD.PEN)

ip_short_pen_table

Nom du script de conception sans le répertoire. (exemple : STANDARD.PEN)

ip_short_feature_table

Nom de la table d'objet sans le répertoire. (exemple : DECATUR.FTB)

ip_short_ref_filename

Nom du fichier de référence de l'élément actuel sans le dossier. (exemple : ETAGE.DGN)

ip_short_scale

Renvoie la même valeur que ip_scale.

ip_units

Unités définies pour les valeurs telles que la taille et l'origine. (Exemple : inches)

ip_view

Nom ou numéro de la vue. (Exemple : 2)

ip_viewgroup

Groupe de vues actuel. (Exemple : Vues sheetone)

ip_workspace

Nom de l'espace de travail actif, par exemple Example.

ip_workset

Nom du WorkSet actif, par exemple Civil.

ip_xsize

Taille en X du tracé en unités définies par ip_units. (exemple : 34.000000)

ip_xysize

Taille en X et Y du tracé en unités définies par ip_units. (exemple : 34.000000, 44.000000)

ip_ysize

Taille en Y du tracé en unités définies par ip_units. (exemple : 75.000000)

long_date

Date au format long. (exemple : vendredi 5 avril 1996)

long_time

Heure d'impression d'un aperçu ou d'une copie au format long. (Exemple : 11:59:17 PM)

minute

Minute à laquelle a lieu le traitement de l'impression d'un aperçu ou d'une copie. (Exemple : 59)

month_abbreviation

Abréviation du mois sur trois caractères. (exemple : avr)

month_name

Nom complet du mois. (exemple : avril)

month_number

Numéro du mois. (Exemple : 04)

ms_pen_table

Nom de la table de plumes associée à la tâche de tracé. Si aucune table de plumes n'est définie, une chaîne vide est renvoyée. (exemple : C:\PROJ\E5.TBL)

ms_pltcfg_file

Spécification du fichier de configuration du pilote d'imprimante. (Exemple : ..\Default\pltcfg\pdf.pltcfg).

ms_short_pltcfg_file

Fichier de configuration du pilote d’imprimante sans le répertoire. (exemple : PDF.PLTCFG)

ms_short_pen_table

Nom de la table de plumes sans le répertoire. (exemple : DECATUR.TBL)

page_number

Numéro d'ordre de la définition d'impression dans l'ensemble d'impression pendant qu'elle est dans l'Organisateur d'impression. (Exemple : 1) Si vous utilisez les définitions d'impression variables, consultez les Consignes d'utilisation des jetons de pagination et de nombre total de pages avec les définitions d'impression variables. Numéro de séquence du tracé dans le document.

plan_set_name

Spécification de fichier pour le nom d'ensemble d'impression. (exemple : C:\plans\monplan.pset)

plan_set_short_name

Nom de l'ensemble d'impression sans le nom de dossier. (Exemple : myplan.pset)

plot_name

Nom de la définition d'impression à l'intérieur de la boîte de dialogue Imprimer ou de l'Organiseur d'impression. (Exemple : border) Nom du tracé.

second

Nombre de secondes. (Exemple : 17)

short_date

Date au format numérique. (Exemple : 04/05/96)

short_time

Heure au format court. (Exemple : 11:59)

short_year

Année sur deux chiffres. (Exemple : 96)

sytime

Date et heure système de l'impression d'un aperçu ou d'une copie. (Exemple : 5-APR-1996 09:47)

heure

Heure à laquelle a lieu le traitement de l'impression d'un aperçu ou d'une copie. (Exemple : 09:47)

total_pages

Nombre total de définitions d'impression dans l'ensemble d'impression. (Exemple : 5) Si vous utilisez les définitions d'impression variables, consultez les Consignes d'utilisation des jetons de pagination et de nombre total de pages avec les définitions d'impression variables. Nombre total de tracés dans le document.

username

Nom de l'utilisateur qui a effectué l'aperçu ou l'impression. (Exemple : jdoe)

year

Année de l'impression d'un aperçu ou d'une copie, sur quatre chiffres. (Exemple : 1996)

Syntaxe :

characters = "string"  

(sachant que la chaîne est une chaîne ou un mot-clé valides quelconques décrits dans le tableau précédent)

Exemple 1 :

!
! Remplacez "preliminary" par "final" pour le texte sur
! le niveau 10.
!
if (characters eq "preliminary" and type==text and level==10) then
	 characters = "final"
endif

Exemple 2 :

! Remplacez la chaîne de texte "PAGE" par
! une nouvelle chaîne qui contient le nombre de pages réel
! et le nombre total de feuilles de l'ensemble.
if (characters == "PAGE") then
	 characters = PAGE_NUMBER + "of" + TOTAL_PAGES
endif

Exemple 3 :

!
! Remplacez la chaîne "Project Number" par
! le numéro de projet réel stocké dans
! la variable d'environnement PROJECT_NUM.
!
if (characters == "Project Number") then
	 envr_variable = "PROJECT_NUM"
	 characters = envr_value
endif

Exemple 4 :

! Remplacez le nom de la file d'attente de la définition d'impression par
! la chaîne de texte "$$queue$$."
!
if ((type == text) and (characters == '$$queue$$')) then
	characters = ip_queue
endif

Exemple 5 :

! Substituer le nom d'utilisateur Windows pour la chaîne de texte 
! "$USER$" et inclure une chaîne de texte litéralle
! dans la chaîne de remplacement.
if ((type == text) and (characters == "$USER$")) then
	 characters = "User:$(USERNAME)"
endif

Exemple 6 :

! Remplacez la valeur de l'expression nommée
! _Author par la chaîne de texte $AUTHOR$.
if ((type == text) and (characters == "$AUTHOR$")) then
	 characters = "<expr?name=_Author>"
endif

classe

Le mot-clé class change la classe d'un élément. L'élément ne sera pas tracé si la nouvelle classe a été désactivée dans la définition d'impression ou par l'indicateur d'affichage MicroStation équivalent.

Syntaxe :

class = integer 

(sachant que l'entier est compris dans l'intervalle 0 à 6)

class = constant

sachant que la constante est l'une des options suivantes :

0 principal

1 composant_modèle

2 construction

3 dimension

4 règle_principale

5 modèle_linéaire

6 règle_construction

Exemple :

!
! Modifiez les éléments de la classe de construction du niveau 5
! en éléments de la classe principale.
if ((class == construction) and (level == 5)) then
	 class = primary
endif

cls_end_width

Le mot-clé cls_end_width définit la largeur de fin, en unités du fichier de conception principal, du style de trait personnalisé associé à l'élément actuel. Si la même valeur est indiquée pour cls_origin_width et cls_end_width, la largeur des "tirets" du style de trait rétrécit ou augmente uniformément. Si des valeurs différentes sont définies pour ces deux mots-clés, les tirets s'effilent du début à la fin de l'élément.

La largeur est une propriété facultative de chaque tiret dans un style de trait personnalisé. Ce mot-clé n'a aucun effet sur les tirets de style de trait qui n'ont pas la largeur comme propriété.

Syntaxe :

cls_end_width = real number

Exemple :

!
! Modifiez la largeur des traits larges dans
! le style de trait "{ Wide Dash }" en 2 unités de conception principales
!.
!
if (cls_name == '{ Wide Dash }') then
	 cls_origin_width = 2.0
	 cls_end_width = 2.0
endif

cls_name

Le mot-clé cls_name affecte un style de trait personnalisé à l'élément actuel. Le fichier de ressources de styles de trait employé sur le serveur de tracé doit contenir le style de trait.

Syntaxe :

cls_name = string

Exemple :

!
! Affecter le style de trait personnalisé
! "{ Diamond } à tous les éléments utilisant le code de ligne 3.
!
if (style == 3) then
	 cls_name = '{ Diamond }'
endif

cls_origin_width

Le mot-clé cls_origin_width définit la largeur de début, en unités du fichier de conception principal, du style de trait personnalisé associé à l'élément actuel. Si la même valeur est indiquée pour cls_origin_width et cls_end_width, la largeur des "tirets" du style de trait rétrécit ou augmente uniformément. Si des valeurs différentes sont définies pour ces deux mots-clés, les tirets s'effilent du début à la fin de l'élément.

La largeur est une propriété facultative de chaque tiret dans un style de trait personnalisé. Ce mot-clé n'a aucun effet sur les tirets de style de trait qui n'ont pas la largeur comme propriété.

Syntaxe :

cls_origin_width = real number

Exemple :

!
! Modifiez la largeur des traits larges
! dans le style de trait "{ Wide Dash }" en 2 unités de conception principales
!.
!
if (cls_name == '{ Wide Dash }') then
	 cls_origin_width = 2.0
	 cls_end_width = 2.0
endif

cls_scale

Le mot-clé cls_scale met à l'échelle le style de trait personnalisé associé à l'élément actuel.

Syntaxe :

cls_scale = real number

Exemple :

!
! Mettez tous les styles de trait à l'échelle avec un facteur de 1/2.
!
if (cls_name .ne. 'none') then
	 cls_scale = 0.5
endif

cls_shift_distance

Le mot-clé cls_shift_distance décale le style de trait personnalisé associé à l'élément actuel. La distance de décalage est indiquée en unités du fichier de conception principal.

Syntaxe :

cls_shift_distance = real number

Exemple :

!
! Décalez l'origine du style de trait d'1 unité de conception maître
!.
!
if (cls_name == '{Batten}') then
	 cls_shift_distance = 1.0
endif

cls_shift_fraction

Le mot-clé cls_shift_cls_shift_fraction décale le style de trait personnalisé associé à l'élément actuel.

Syntaxe :

cls_shift_fraction = real number

Exemple :

!
! Décalez le style de trait personnalisé d'1/2 de la
! longueur du modèle.
!
if (cls_name .ne. 'none') then
	 cls_shift_fraction = 0.5
endif

color

Le mot-clé color change la couleur actuelle des éléments non remplis. Affecter une valeur au mot-clé color change également la couleur de limite, de remplissage, et d'avant-plan de motif des polygones fermés si ces valeurs n'ont pas été spécifiquement définies avec les mots clés boundary_color, fill_color et pattern_color. Pour une explication détaillée de la procédure d'indication de couleur, voir « Indiquer la couleur dans les instructions d'affectation » à la fin de cette section.

Remarque : Si une couleur nommée ou RVB est utilisée, la couleur utilisée pour le mot-clé de comparaison de couleur n'est pas modifiée.

Syntaxe :

color = integer 

(sachant que l'entier est un indice de couleur compris entre 0 et 255)

color = "string" 

(sachant que la chaîne est un nom de couleur issu d'une bibliothèque de couleurs)

color= (R, G, B)

(sachant que RGB est compris dans l'intervalle 0 à 255)

Exemple :

!
! Modifiez la couleur des lignes, des chaînes et des courbes en utilisant
! les diverses méthodes pour définir la couleur.
!
if (type eq line) then
	color = 1     ! Régler la couleur sur la valeur d'indice 1.
else if (type == line_string) then
	color = 'blue'   ! Définissez la couleur sur bleu.
else if (type == curve) then
	color = (0,0,255) ! Définissez la couleur à la valeur RVB 0,0,255.
endif

endcap

Le mot-clé endcap gère l'affichage des points d'extrémité des éléments non fermés. Endcap propose les options d'affichage suivantes :

  • butt (ajusté) : un rectangle sans extension (valeur par défaut).
  • extend (prolonger) : également rectangulaire, mais prolongé d'une moitié de la largeur de ligne au-delà de l'extrémité de la ligne ou courbe.
  • circle (cercle) : demi-cercle dont le rayon équivaut à la moitié de la largeur de ligne.

Syntaxe :

endcap = endcap_type

(sachant que endcap_type est butt, extend ou circle)

Exemple :

!
! Spécifiez le type endcap en fonction du type de l'élément
!.
!
if (type == line) then
	 endcap = butt
else if (type == line_string) then
	 endcap = extend
else if (type == arc) then
	 endcap = circle
endif

envr_value

Le mot-clé d'affectation envr_value règle le mot-clé envr_variable sur la chaîne indiquée. Cette paire envr_variable = value est ensuite transcrite dans le fichier comptable et peut également servir de données d'attributs dans une archive numérique.

Syntaxe :

envr_value=string

Exemple 1 :

!
! Ce script de conception définit un attribut de feuille de tracé 
! d'après les caractères stockés dans les éléments texte 
! du fichier de conception. Les critères pour déterminer quel
!texte contient les caractères appropriés est
!basé sur les indicateurs MicroSation.
tag_set='dpr'
tag_name='sheet'
if ((type eq text) and (tag_character eq 'drawingno'))then
	 envr_variable = "Drawingno"
	 envr_value = characters
else if ((type eq text) and (tag_character eq 'title')) then 
	 envr_variable = "Title"
	 envr_value = characters
else if ((type eq text) and (tag_character eq 'sheetno')) then
	 envr_variable = "Sheetno" 
	 envr_value = characters
endif

Exemple 2 :

!
! Ce script de conception définit un attribut de feuille de tracé 
! d'après les caractères stockés dans les éléments texte 
! du fichier de conception. Le critère servant à déterminer quel texte
! contient les caractères adéquats 
! repose sur le niveau. 
if ((type eq text) and (level eq 2)) then
	 envr_variable = "Account"
	 envr_value = characters
else if ((type eq text) and (level eq 4)) then
	 envr_variable = "Project"
	 envr_value = characters
else if ((type eq text) and (level eq 6)) then
	 envr_variable = "Revision"
	 envr_value = characters
endif

envr_value_num

Vous pouvez définir la valeur d'envr_variable avec un nombre réel à l'aide du mot-clé envr_value_num. Envr_value et envr_value_num sont interchangeables au sein du même script de conception. Par exemple, si vous attribuez à envr_value la valeur de chaîne "4", envr_value_num est automatiquement réglé sur le nombre réel 4. Ceci vous permet d'extraire une chaîne dans un fichier de conception (par exemple un numéro de page), de la convertir en nombre réel afin que puissiez augmenter sa valeur de 1, puis de la réafficher comme chaîne. L'exemple de script de conception suivant illustre cette procédure.

La paire envr_variable = value est également transcrite dans le fichier comptable et peut également servir de données d'attributs dans une archive numérique.

Syntaxe :

envr_value_num = real

(sachant que réel peut être n'importe quel nombre réel)

Exemple :

! Le script de conception suivant augmente de 1 le numéro de page 
 du bloc de titre. Le numéro de page 
! est une chaîne texte de niveau 5.
!
envr_variable = "pagenum"
if ((type eq text) and (level eq 5)) then
	 envr_value = characters
	 envr_value_num = envr_value_num + 1
	 characters = envr_value
endif

envr_variable

Le mot-clé d'affectation envr_variable sélectionne la variable d'environnement de définition d'impression que vous voulez utiliser dans le script de conception. Les mots-clés de comparaison envr_value et envr_value_num permettent de vérifier la valeur de la variable.

Remarque : Les noms de variable d'environnement doivent commencer par une lettre, ne peuvent contenir que des lettres, des chiffres et des traits de soulignement, et ne peuvent contenir d'espaces.

Syntaxe :

envr_variable = string

Exemple :

!
!Si SKIP_TEXT est défini (comme quoi que ce soit, par exemple
!"iplot mod MY_IPARM -environment = [SKIP_TEXT=1]")
!dans l'environnement IPARM, ignorez les éléments text et
!text_node.
!
envr_variable = "SKIP_TEXT"
if (envr_value <> "") then
	if (type .IN. text, text_node) then
		ignore = true
	endif
endif

fill_color

Le mot-clé fill_color définit la couleur de remplissage des polygones remplis avec une surface. Il désigne également la couleur d'arrière-plan des éléments à motif. Utiliser ce mot-clé active automatiquement area_fill. La couleur de remplissage par défaut d'un élément est sa couleur d'élément. L'arrière-plan de motif est transparent par défaut. Pour une explication détaillée de la procédure d'indication de couleur, voir « Indiquer la couleur dans les instructions d'affectation » à la fin de cette section.

Syntaxe :

fill_color = integer 

(sachant que l'entier est un indice de couleur compris entre 0 et 255)

fill_color = "string"

(sachant que la chaîne est un nom de couleur issu d'une bibliothèque de couleurs)

fill_color = (R,G,B)

(sachant que RGB est compris dans l'intervalle 0 à 255)

Exemple :

!
! Définissez la couleur de remplissage pour les formes, les formes complexes
! et les ellipses.
!
if (type == shape) then
  fill_color = 5
else if (type == complex_shape) then
	 fill_color = 'blue'
else if (type == ellipse) then
	 fill_color = (0,0,255)
endif

police

Le mot-clé font définit le numéro de police des éléments texte.

Syntaxe :

font = integer

(sachant que l'entier est compris dans l'intervalle 0 à 255)

Exemple :

!
! Modifiez la police pour certaines chaînes de texte.
!
if ((type == text) and (font == 1)) then
	 font = 2
else if ((type == text) and (font == 3)) then
	 font = 7
endif

font_name

Le mot-clé font_name définit le numéro de police des éléments texte.

Syntaxe :

font_name = string 

(sachant que la chaîne est le nom de police du fichier de ressources symbologiques.)

Exemple :

!
! Modifiez le nom de la police pour certaines chaînes de texte.
!
if ((type == text) and (font == 1)) then
	 font_name = "Architectural"
else if ((type == text) and (font == 3)) then
	 font_name = "FONT060"
endif

ignore_element

Le mot-clé ignore_element détermine si l'élément est tracé. Si ce mot-clé est réglé sur vrai, l'élément actuel n'est pas tracé.

Syntaxe :

ignore_element = true
ignore_element = false

Exemple :

!
! Ne pas tracer les élements texte du niveau 63.
!
if ((type == text) and (level == 63)) then
	 ignore_element = true
endif

midline_joint

Le mot-clé midline_joint gère l'affichage des raccordements à la fois des éléments non remplis et remplis. Si boundary_display est désactivé pour un élément rempli, définir le mot-clé midline_joint n'a aucun effet. Dans la liste suivante figure les options de ce mot-clé :

miter (onglet)

les arêtes correspondantes de deux segments se prolongent jusqu'à leur point d'intersection (valeur par défaut).

bevel (chanfrein)

semblable à onglet, hormis que les segments se terminent par des raccords d'extrémité ajustés.

butt (ajusté)

l'extrémité de chaque segment s'affiche avec un raccordement rectangulaire.

prolonger

similaire à ajusté, hormis que chaque segment est prolongé de la moitié de sa largeur.

Cercle

affiche un demi-cercle à la fin de chaque segment.

Syntaxe :

midline_joint = midline_joint_type

(sachant que midline_joint_type est "butt", "bevel", "extend", "circle", ou "miter")

Exemple :

!
! Définissez midline_joint en fonction du numéro d'attachement du fichier de référence
!.
!
if (file == 0) then   ! Tester les éléments du fichier maître.     
	 midline_joint = butt   
 else if (file == 1) then ! Tester les éléments du premier fichier de référence.
	 midline_joint = extend
else if(file == 2)then   ! Tester les éléments du deuxième fichier de référence.
	 midline_joint = circle 
 else if(file == 3)then  ! Tester les éléments du troisième fichier de référence. 
	 midline_joint = miter  
 endif

pen

Le mot-clé pen sélectionne la plume sur un traceur. Définir ce mot-clé équivaut à définir la couleur de l'élément actuel, hormis que le numéro de plume est égal au numéro de couleur plus 1.

Syntaxe :

pen = integer

(sachant que l'entier est compris dans l'intervalle 1 à 256)

Exemple :

! 
 ! Définir le numéro de plume d'après le niveau de l'élément.
if (level == 1) then
	 pen = 1 else if (level == 2) then
	 pen = 2 else if (level == 3) then
	 pen = 3
endif

pen_width_nn

(Où nn est une valeur comprise entre 0 et 31)

Les mots-clés pen_width_nn affectent les largeurs de ligne d'impression (épaisseur physique) dans les unités de script de conception aux 32 épaisseurs standard de produit. Ces mots-clés d'affectation de script de conception remplacent les correspondances épaisseur/largeur définies dans le fichier de configuration du pilote d'imprimante (.pltcfg) et sont équivalents aux correspondances épaisseur/largeur qui peuvent être définies dans une table de plumes. Ces mots-clés se comportent d'une manière semblable aux mots-clés weight_base/weight_delta, mais les mots-clés pen_width_nn permettent d'assigner chaque épaisseur indépendamment.

Remarque : Les affectations pen_width_nn ne peuvent pas être exécutées sur une base par-élément. Les valeurs sont lues à partir du script de dessin au début du traitement d'impression. Toute tentative ultérieure de modification des valeurs de largeur de plume sera silencieusement ignorée. Pour cette raison et pour de meilleures performances, une bonne pratique consiste à englober les affectations de pen_width_nn à l'intérieur de la condition du script de conception (first_time).
!
! Spécifiez les correspondances largeur / épaisseur en fonction de la taille du papier.
!
units = mm
if (first_time) then
  if (ip_xsize_num > 17) then
    pen_width_00 = 0.169
    pen_width_01 = 0.375
    pen_width_02 = 0.5
    pen_width_03 = 0.625
    pen_width_04 = 0.75
    pen_width_05 = 0.875
    pen_width_06 = 1
    pen_width_07 = 1.125
    pen_width_08 = 1.25
    pen_width_09 = 1.375
    pen_width_10 = 1.5
    pen_width_11 = 1.625
    pen_width_12 = 1.75
    pen_width_13 = 1.875
    pen_width_14 = 2
    pen_width_15 = 2.125
    pen_width_16 = 2.25
    pen_width_17 = 2.375
    pen_width_18 = 2.5
    pen_width_19 = 2.625
    pen_width_20 = 2.75
    pen_width_21 = 2.875
    pen_width_22 = 3
    pen_width_23 = 3.125
    pen_width_24 = 3.25
    pen_width_25 = 3.375
    pen_width_26 = 3.5
    pen_width_27 = 3.625
    pen_width_28 = 3.75
    pen_width_29 = 3.875
    pen_width_30 = 4
    pen_width_31 = 4.125
  else
    pen_width_00 = 0.12675
    pen_width_01 = 0.28125
    pen_width_02 = 0.375
    pen_width_03 = 0.46875
    pen_width_04 = 0.5625
    pen_width_05 = 0.65625
    pen_width_06 = 0.75
    pen_width_07 = 0.84375
    pen_width_08 = 0.9375
    pen_width_09 = 1.03125
    pen_width_10 = 1.125
    pen_width_11 = 1.21875
    pen_width_12 = 1.3125
    pen_width_13 = 1.40625
    pen_width_14 = 1.5
    pen_width_15 = 1.59375
    pen_width_16 = 1.6875
    pen_width_17 = 1.78125
    pen_width_18 = 1.875
    pen_width_19 = 1.96875
    pen_width_20 = 2.0625
    pen_width_21 = 2.15625
    pen_width_22 = 2.25
    pen_width_23 = 2.34375
    pen_width_24 = 2.4375
    pen_width_25 = 2.53125
    pen_width_26 = 2.625
    pen_width_27 = 2.71875
    pen_width_28 = 2.8125
    pen_width_29 = 2.90625
    pen_width_30 = 3
    pen_width_31 = 3.09375
  endif
endif

priority

Le mot-clé priority modifie l'ordre dans lequel les éléments sont tracés. Par défaut, les éléments sont tracés dans l'ordre où ils apparaissent dans le fichier de conception. Avec le mot-clé priorité, les éléments de faible priorité sont tracés avant les éléments de priorité plus élevée afin que ces derniers soient tracés au-dessus des éléments de faible priorité. Ceci peut être pratique quand on trace des éléments remplis avec une surface. Par exemple, si vous voulez qu'une chaîne de texte se trace à l'intérieur d'un polygone rempli, le texte doit avoir une priorité supérieure au polygone afin que le texte ne soit pas couvert. La priorité par défaut d'un élément est 0.

Il est important de noter que les éléments sans priorité sont imprimés d'abord, les éléments ayant une priorité étant imprimés ensuite, en fonction de leur priorité ; par conséquent, il se peut que les tables de plumes ayant une priorité négative pour "repousser les éléments en dessous" nécessitent une modification.

Remarque : Le mot-clé priorité n'est pas valable pour les éléments remplis se traçant sur un dispositif vectoriel. Le mot-clé priorité supplante l'ordre qu'implique les séquences de mise à jour d'affichage.

Syntaxe :

priority = integer

(sachant que l'entier est compris dans l'intervalle -1 000 000 à 1 000 000)

Exemple :

!
! Définissez la priorité des éléments en fonction de leur couleur.
if (type == shape) then
	 area_fill = true
 	 if (color == 1) then
		   priority = 10
	  else if (type == text) then
		 !Plot text on top of the shapes.
		   priority = 20
	  endif
endif

échelle

Le mot-clé échelle indique un facteur d'échelle qui est appliqué aux éléments ayant une origine locale tels que les cellules (normales et partagées), les arcs, les ellipses, le texte et les nœuds de texte. Le texte et les noeuds de texte sont mis à l'échelle autour de leur point de justification. L'échelle par défaut est 1,0.

Syntaxe :

scale = real

(sachant que réel peut être n'importe quel nombre réel positif)

Exemple :

!
! Mettez le texte à l'échelle avec un facteur de 1,5.
!
 if (type == text) then
	scale = 1.5
endif

screen_relative

Le mot-clé screen_relative permet de modifier le bit screen_relative dans le mot des propriétés de l'élément courant. MicroStation se réfère à l'écran en tant que "vue indépendante".

Syntaxe :

screen_relative = true
screen_relative = false

Exemple :

!
! Si l'élément est une cellule nommée 'LOGO', définissez le bit relatif de l'écran
! dans le mot des propriétés.
!
if ((type == cell) and (cellname == 'LOGO')) then
	 screen_relative = true
endif

screening

Le mot-clé screening permet de demander qu'une couleur soit "délavée" dans le document imprimé. Alors qu'un flltrage de 100% imprime la couleur telle quelle, un filtrage de de 50% par exemple place une couleur à mi-chemin vers le blanc. Ce mot-clé peut servir à économiser de l'encre ou à estomper les éléments tracés dans cette couleur.

Syntaxe :

screening = integer

(sachant que l'entier est compris dans l'intervalle 1 à 99)

Exemple :

!
! Si l'élément est une ellipse, définissez un filtrage égal à 50 %.
if (type == ellipse) then
	 screening = 50
endif

taille

Le mot-clé size sert à modifier la taille d'éléments de texte et de nœuds de texte.

Syntaxe :

size = working units

Exemple :

!
! Définir la taille de texte des éléments de texte du niveau 1.
!
if ((type == text) and (level == 1)) then
	 size = 0:0:250
endif

style

Le mot-clé style modifie le style de trait de l'élément actuel. Spécifiez un nouveau style en affectant à l'élément un index dans la plage 0 à 7, qui correspond à l'un des types de style MicroStation prédéfinis. On peut utiliser un style de trait personnalisé en indiquant son nom dans une bibliothèque ou en indiquant une série de transitions activées et désactivées. Définir le style n'a aucun effet sur les éléments remplis par une surface ou remplis par un motif si l'affichage de la limite n'est pas activé. Par défaut, l'affichage de la limite est désactivé.

Remarque : Si vous utilisez un style ou une définition de style nommés, le style de trait utilisé avec le mot-clé de comparaison de style ne change pas.

Syntaxe :

style = integer

(sachant que l'entier est un indice de style de trait compris entre 0 et 7)

style = "string" 

(sachant que la chaîne est un nom de style de trait présent dans une bibliothèque de styles de traits nommée DesignScriptStyles.slb fournie dans le dossier défini par MS_DATA)

style = line style definition 

(activé, désactivé, activé, désactivé…)

Exemple :

!
! Définissez le style de l'élément en fonction de sa couleur à l'aide des
! différentes méthodes de définition d'un style de trait.
!
units = mm
switch (color)
	 case 1 ?
		  style = 3
	 case 2 ?
		  style = 'dash-dot'
	 case 3 ?
		  style = (0.5, 0.3, 0.75, 0.3)
endswitch

style_n

(Où n est une valeur numérique comprise entre 1 et 7)

Les mots-clés style_n modifient les définitions du modèle plume haute / plume basse pour les sept styles de ligne standard. Ces mots-clés d'affectation de script de dessin remplacent les motifs de style de trait définis dans le fichier de configuration du pilote d'imprimante (.pltcfg). Le modèle peut être spécifié en utilisant le nom d'un style de trait défini dans la bibliothèque des styles de trait ou en indiquant une série de transitions activées et désactivées. Cette syntaxe est identique au mot-clé d'affectation style .

Syntaxe :

style_<numéro> = "chaîne"

(où le nombre est une valeur de 1 à 7, et la chaîne un nom de style de trait dans le/la DesignScriptStyles.slb bibliothèque de styles de trait livrée dans le dossier défini par MS_DATA)

style_<numéro> = définition de style de trait

(où le nombre est une valeur de 1 à 7, et la définition de style de trait est un modèle en fonction, hors fonction, en fonction, hors fonction, etc., utilisant les unités des scripts de conception)

Remarque : Les affectations style_n ne peuvent pas être exécutées sur une base par élément. Les valeurs sont lues à partir du script de dessin au début du traitement d'impression. Toute tentative ultérieure de modification des définitions de style de trait sera silencieusement ignorée. Pour cette raison et pour de meilleures performances, une bonne pratique consiste à englober les affectations de style_n à l'intérieur de la condition du script de conception (first_time).

Pour des éléments simples tels que lignes et formes, les mots-clésstyle et style_n produisent les mêmes résultats. Le mot-clé style permet d'affecter un modèle différent sur une base par élément. Cependant, une fois appliquée à un élément composé avec plusieurs styles de trait, comme une cote ou un élément multiligne, l'affectation de style modifie le style de chaque ligne à l'intérieur de l'élément. Les affectations style_n permettent de spécifier le modèle des sept styles de ligne standard sans modifier les numéros de style dans les éléments composés.

Exemple :

!
! Spécifiez le modèle pour les sept styles de trait standard en fonction de la taille du papier.
!
units = inches
if (first_time) then
  if (ip_xsize_num > 17) then
    style_1 = (0.03, 0.03)
    style_2 = (0.062, 0.062)
    style_3 = (0.125, 0.062)
    style_4 = (0.125, 0.062, 0.03, 0.062)
    style_5 = (0.045, 0.045)
    style_6 = (0.125, 0.062, 0.03, 0.062, 0.03, 0.062)
    style_7 = (0.0125, 0.045, 0.062, 0.045)
  else
    style_1 = (0.0225, 0.0225)
    style_2 = (0.0465, 0.0465)
    style_3 = (0.09375, 0.0465)
    style_4 = (0.09375, 0.0465, 0.0225, 0.0465)
    style_5 = (0.03375, 0.03375)
    style_6 = (0.09375, 0.0465, 0.0225, 0.03375, 0.0225, 0.03375)
    style_7 = (0.009375, 0.03375, 0.0465, 0.03375)
  endif
endif

libellés

Les mots-clés d'affectations TAG_SET et TAG_NAME permettent de désigner le jeu de libellés et le nom du label pour utilisation ultérieure par l'un des mots-clés de comparaison.

Types de données :

tag_set

chaîne

tag_name

chaîne

Exemple :

!
! En partant de l'hypothèse que le fichier de conception utilise deux jeux de libellés, 
! « Adresse personnelle » et « Adresse professionnelle », chaque
! contenant un label de caractère nommé « Ville »,  
! modifie la couleur de tous les éléments dont les balises 
! indiquent comme adresse personnelle « Bordeaux » ou comme 
! adresse professionnelle « Toulouse »."
!
! Commencez par rechercher les indicateurs « City » appartenant à l'ensemble d'indicateurs
! "Home address".
!
tag_set = 'Home address'
tag_name = 'City'
if (tag_char == 'Huntsville') then
	 color = 4
endif
! Rechercher maintenant les libellés dans le jeu de libellés « Adresse professionnelle »
!.  Notez que le nom du label est toujours "Ville".
tag_set = 'Work address'
if (tag_char == 'Madison') then
	 color = 4
endif

épaisseur

Le mot-clé thickness permet d'indiquer la largeur de trait en unités physiques au lieu d'une épaisseur de trait. La valeur unitaire stockée dans la définition d'impression est la valeur par défaut du mot-clé thickness, mais peut se modifier dans le script de conception au moyen du mot-clé units. Indiquer une épaisseur ne modifie pas l'épaisseur utilisée par le mot-clé de comparaison d'épaisseur.

Remarque : Vous devez indiquer exactement la valeur du mot-clé d'épaisseur.

Syntaxe :

thickness = positive real number

Exemple :

!
! Définissez l'épaisseur du trait en fonction de la couleur de l'élément.
!
units = inches
switch (color)
	case 1 - 5 ?
		thickness = 0.125
	case 6 - 10 ?
		thickness = 0.075
	default ?
		thickness = 0.05
endswitch

translucent

Si le mot clé translucent est réglé sur vrai, l'élément actuel est tracé de telle sorte que tout élément situé en dessous ne soit pas totalement masqué. La valeur par défaut de ce mot-clé est faux. Le mot-clé translucent affecte uniquement les éléments non remplis et les limites d'éléments remplis si les limites sont activées. Le mot-clé translucent n'est valable ni pour les dispositifs vectoriels, ni pour les périphériques gérés par des pilotes d'imprimante Microsoft.

Remarque : Le mot-clé translucent agit comme le nouveau mot-clé transparency avec une valeur de 50. Il affecte à la fois les éléments remplis et non remplis et les limites d'éléments remplis si les limites sont activées. Pour plus d'informations, voir le mot-clé transparency.

Syntaxe :

translucent = true
translucent = false

Exemple :

!
! Tracez les éléments de niveau 10 avec des traits rouges de forte épaisseur
! et laissez les éléments sous
! apparaître.
!
if (level == 10) then
	 color = "red"
	 weight = 10
	 translucent = true
endif

translucent_fill

Si cette option est réglée sur vrai, le mot-clé translucent_fill indique que la couleur de remplissage des éléments remplis avec une surface ou un motif est translucide. Les couleurs de premier plan et d'arrière-plan des éléments remplis avec un motif sont toutes deux translucides. Les éléments situés sous un élément rempli translucide sont toujours visibles. La valeur par défaut de ce mot-clé est faux. Le mot-clé translucent_fill n'est valable ni pour les dispositifs vectoriels, ni pour les périphériques gérés par des pilotes d'imprimante Microsoft.

Remarque : Le mot-clé translucent_fill agit comme le nouveau mot-clé transparency avec une valeur de 50. Il affecte à la fois les éléments non remplis, remplis avec une surface et remplis avec un motif ainsi que les limites des éléments remplis si les limites sont activées. Pour plus d'informations, voir le mot-clé transparency.

Syntaxe :

translucent_fill = true
translucent_fill = false

Exemple :

!
! Définissez la couleur de remplissage comme transparente.
!
area_fill = true
translucent_fill = true
fill_color = (255,0,0)

transparency

Le mot-clé d'affectation transparency permet de définir la transparence de l'élément actuel. Vous pouvez régler la valeur de transparence entre 1 à 100. Plus la valeur est élevée, plus l'élément est transparent.

Syntaxe :

transparency = value

(où la valeur est 1-100)

Exemple :

!
! Définissez la transparence pour les lignes au niveau 2.
!
if ((level eq 2) and (type eq line)) then
	 transparency = 50
endif

units

Le mot-clé units permet d'indiquer la cote de mots-clés tels que l'épaisseur et les styles de trait. Définissez toujours le mot-clé units au début du script de conception, et ne le définissez qu'une seule fois dans un script de conception. La valeur par défaut du mot-clé est la valeur unitaire de la définition d'impression.

Syntaxe :

units = units_constant

sachant que units_constant est l'une des options suivantes :

centimètres (cm)

millimètres (mm)

mètres (m)

pouces

pieds

Exemple :

!
! Définissez l'épaisseur du trait sur 0,5 millimètres.
!
units = mm
thickness = 0.5

épaisseur

Le mot-clé épaisseur modifie l'épaisseur de trait de l'élément actuel. Pour les éléments remplis, boundary_display doit être activé pour que ce mot-clé affecte la limite d'élément.

Syntaxe :

weight = integer	

(sachant que l'entier est compris dans l'intervalle 0 à 31)

Exemple :

!
! Définissez le poids du trait en fonction de la couleur de l'élément.
!
switch (color)
	case 1-10 ?
		 weight = 2
	case 11-20 ?
		 weight = 1
	default ?
		 weight = 0
endswitch

weight_base/weight_delta

Les mots-clés weight_base et weight_delta appliquent les épaisseurs de trait aux épaisseurs physiques sur le tracé. A l'aide de ces mots-clés, vous pouvez obtenir des épaisseurs de trait cohérentes sur divers traceurs. Le mot-clé weight_base spécifie l'épaisseur du trait d'un élément d'épaisseur 0. Le mot-clé weight_delta spécifie une augmentation d'épaisseur de trait supplémentaire à ajouter à chaque épaisseur de trait supérieure à 0. Utilisez la formule suivante pour calculer l'épaisseur du trait à l'aide des mots-clés weight_base et weight_delta :

épaisseur de tracé = weight_base + (épaisseur de l'élément * weight_delta)

Par exemple, si weight_base est de 0,1 cm et weight_delta de 0,05 cm, les valeurs suivantes sont appliquées.

Epaisseur Épaisseur de tracé

0

0,10 cm

1

0,15 cm

2)

0,20 cm

.

.

.

.

.

.

31

1,65 cm

Remarque : Vous devez définir les mots-clés weight_base et weight_delta au début du script de conception.

Syntaxe :

weight_base = positive_real
weight_delta = positive_real

Exemple :

!
! Mappez le poids du trait de l'élément à une épaisseur sur
! le tracé.
!      weight 0 = 0.10 mm
!      weight 1 = 0.15 mm
!      weight 2 = 0.20 mm
!      weight 3 = 0.25 mm
!          .
!          .
!          .
!      weight 31 = 1.65 mm
units = mm
weight_base = 0.1
weight_delta = 0.05