Palavras-chaves de comparação
As seguintes descrições de palavras-chave incluem uma breve descrição da função da palavra-chave, os tipos de elementos que a palavra-chave afeta (se aplicável), os tipos de dados válidos (se aplicável), e um exemplo de como usar a palavra-chave.
ângulo
A palavra-chave do ângulo especifica o ângulo para tipos de elemento célula, nó de texto, elipse, arco, e texto. Para outros tipos de elemento, o valor do ângulo é 0,0.
Tipo de dados: número real na escala de 0,0 a 360,0
Exemplo:
! ! Mudar a cor do texto ! elementos rotacionados em 90 graus. ! if ((type == text) and (angle == 90.0)) then color = 2 endif
area_fill
A palavra-chave area_fill verifica se o elemento atual está preenchido.
Tipo de dados: constante (verdadeiro ou falso)
Exemplo:
! ! Mudar a cor de preenchimento de todos os elementos preenchidos. ! Não alterar elementos que não são preenchidos. ! if (area_fill == true) then fill_color = 10 endif
cellname
A palavra-chave cellname especifica o nome da célula se o elemento atual é um cabeçalho de célula ou um componente de uma pilha. Para os componentes aninhados dentro de uma ou mais células, a palavra-chave cellname especifica o nome da célula mais externa a menos que o componente é um cabeçalho de célula aninhada. Neste caso, a palavra-chave cellname é o nome da célula aninhada. Se o elemento atual não é um cabeçalho de célula nem um componente de uma célula, o valor para cellname é "NO_CELL." Coringas podem ser usados em comparações de string para igualdade ou desigualdade.
Tipo de dados: string
Exemplo:
! ! Mudar a cor de todos os componentes da célula ! nomeada borda. ! if (cellname == "border") then color = (200,200,200) endif
characters
A palavra-chave characters especifica a string contida no elemento se o elemento atual é um elemento de texto. Coringas podem ser usados em comparações de string para igualdade ou desigualdade.
Tipo de dados: string
Exemplo 1:
! !Destacar todos os strings de texto que contiverem o string !’Escola' ou 'Hospital’. ! if ((type == text) and (characters ==’*Escola*')) then color = (0,0,255) else if ((type == text) and (characters =='*Hospital*')) then color = (255,0,0) endif
Exemplo 2:
! !Remove o texto preliminar se aparece no ! arquivo de borda. ! if ((lname=="border") and (characters=="preliminary")) then ignore_element=true endif
classe
A palavra-chave classe especifica o tipo da classe do elemento atual. Por exemplo, a classe do elemento atual pode ser usada em um script do desenho para determinar se o elemento atual é parte de uma dimensão ou de um padrão.
Tipo de dados: valor inteiro na escala de 0 a 6, ou uma das seguintes constantes:
0 primary |
1 pattern_component |
2 construction |
3 dimension |
4 primary_rule |
5 linear_pattern |
6 construction_rule |
Exemplo:
! !Não plotar elementos de classe de padrão e dimensão. if ((class == pattern_component) or (class == dimension)) then ignore_element = true endif
cls_end_width
A palavra-chave cls_end_width testa a largura final, nas unidades mestras do arquivo do desenho, do estilo de linha personalizado associado com o elemento atual. Se o elemento atual não tem um estilo de linha personalizado associado, o cls_end_width é 0,0.
Tipo de dados: número real
Exemplo:
! ! Mudar a cor de todos os elementos com ! um estilo de linha personalizado cuja largura ! final é superior a 2 unidades mestres do desenho. ! if (cls_end_width > 2.0) then color = 5 endif
cls_name
A palavra-chave cls_name testa o nome do estilo de linha personalizado associado com o elemento atual. Para elementos sem um estilo de linha personalizado associado, o cls_name é "NONE."
Tipo de dados: string
Exemplo:
! ! Mudar a cor de todos os elementos usando o estilo. ! Atribuir o estilo de linha personalizado de origem a todos ! os outros elementos. ! if (cls_name == '{ Diamond }') then color = 2 else cls_name = "origin" endif
cls_origin_width
A palavra-chave cls_origin_width testa a largura inicial, nas unidades mestras do arquivo do desenho, do estilo de linha personalizado associado com o elemento atual. Se o elemento atual não tem um estilo de linha personalizado associado, o cls_origin_width é 0,0.
Tipo de dados: número real
Exemplo:
! ! Mudar a cor de todos os elementos com um ! estilo de linha personalizado cuja largura ! inicial é superior a 2 unidades mestres do desenho. ! if (cls_origin_width > 2.0) then color = 5 endif
cls_scale
A palavra-chave cls_scale testa o fator de escala aplicado ao estilo de linha personalizado associado com o elemento atual. Se o elemento atual não tem um estilo de linha personalizado associado, o cls_scale é 1,0.
Tipo de dados: número real
Exemplo:
! ! Mudar a cor de todos os elementos com um ! estilo de linha personalizado cuja escala é 2. ! if (cls_scale == 2.0) then color = 5 endif
cls_shift_distance
A palavra-chave cls_shift_distance testa a distância de deslocamento, nas unidades mestras do arquivo do desenho, aplicada ao estilo de linha personalizado associado com o elemento atual. Se o elemento atual não tem um estilo de linha personalizado associado, o cls_shift_distance é 0,0.
Tipo de dados: número real
Exemplo:
! ! Mudar a cor de todos os elementos com um ! estilo de linha personalizado cuja distância ! de deslocamento é 0,5 unidades mestres do desenho. ! if (cls_shift_distance == 0.5) then color = 5 endif
cls_shift_fraction
A palavra-chave cls_shift_fraction testa a fração de deslocamento aplicada ao estilo de linha personalizado associado com o elemento atual. Se o elemento atual não tem um estilo de linha personalizado associado, o cls_shift_fraction é 0,0.
Tipo de dados: número real
Exemplo:
! ! Mudar a cor de todos os elementos com um ! estilo de linha personalizado cuja fração ! de deslocamento é 0,25. ! if (cls_shift_fraction == 0.25) then color = 5 endif
color
A palavra-chave color indica o índice de cor do elemento atual.
Tipo de dados: valor inteiro na escala de 0 a 255
Exemplo:
! ! Formas de preenchimento de área com um índice de cor de 1. ! if ((color == 1) and (type == shape)) then area_fill = true endif
envr_value
A palavra-chave envr_value é usada para comparar o valor de uma variável do ambiente de definição da impressão que é escolhido definindo a palavra-chave de atribuição envr_variable. Se a variável não foi definida nem é uma variável válida, envr_value é definida como uma string de comprimento zero
Tipo de dados: string
Exemplo:
! !Obter o valor da variável do ambiente da definição da impressão !ARCHITECT. Encontrar o elemento de texto com caracteres !equal to "$Architect$" e mudar o valor do texto !to "Designed by <name>" if ARCHITECT is equal to !"Owner1" or "Owner2." Se não, mudar o texto !valor para um string em branco. ! envr_variable = "ARCHITECT" if((type ==text) and (characters == "$ARCHITECT$")) then if (envr_value .IN. "Owner1", "Owner2") then characters = "Designed by " + envr_value else characters = "" endif endif
envr_value_num
A palavra-chave envr_value_num é usada para comparar o valor de uma variável do ambiente de definição da impressão que é escolhida definindo a palavra-chave de atribuição envr_variable. Se envr_variable não foi definida nem é uma variável válida, envr_value_num retorna o número real zero.
Tipo de dados: real
Exemplo:
! !Obter o valor da variável do ambiente da definição da impressão !MYCOLOR. Se o valor de MYCOLOR é maior que !5, definir a espessura para 2. ! envr_variable = "MYCOLOR" if(envr_value_num gt 5) then weight = 2 endif
file
A palavra-chave file especifica o número do anexo do arquivo para o arquivo que está sendo processado. Tipicamente, o arquivo mestre é anexo número 0. Gerar um metafile da linha de comando imprime o nome de arquivo e seu número de anexo para cada arquivo de referência.
Tipo de dados: valor inteiro
Exemplo:
! Se o elemento atual está no arquivo mestre ! (index of 0), mudar sua cor para 2. ! if (file == 0) then color = 2 endif
fill_color
A palavra-chave fill_color indica o índice fill_color do elemento atual. No caso onde o elemento não está preenchido, o fill_color retorna um valor de -1.
Tipo de dados: valor inteiro na escala de -1 a 255
(onde -1 indica nenhum fill_color para o elemento)
Exemplo:
! ! Formas com um índice de cor de preenchimento de 1 ! serão plotadas em vermelho. ! if ((fill_color == 1) and (type == shape)) then fill_color = 'red' endif
Exemplo:
! ! Não plotar as formas que são ! não preenchidas. ! if ((fill_color == –1) and (type == shape)) then ignore_element = true endif
first_time
A palavra-chave da comparação first_time permite que você execute um segmento de um script do desenho uma vez. Esta palavra-chave (sinalizador) é VERDADEIRO na primeira vez que o script do desenho é executado, e então o valor é definido como FALSO. O valor não pode ser restaurado. Um bom uso para esta palavra-chave é quando você especifica um modelo do marcador. Veja o exemplo no final desta seção.
fonte
Para texto e nós de texto, a palavra-chave fonte contém o número de fonte para o elemento atual. Para elementos diferentes de texto e nós de texto, o número de fonte é zero.
Tipo de dados: valor inteiro na escala de 0 a 255
Exemplo:
! ! Não plotar os elementos de texto que usam a fonte 10. if ((type == text) and (font == 10)) then ignore_element = true endif
font_name
Para texto e nós de texto, a palavra-chave font_name contém o nome de fonte para o elemento atual. Para elementos diferentes de texto e nós de texto, o nome de fonte é "NO_FONT_NAME."
Tipo de dados: String
Exemplo:
! ! Mudar a cor de todos os elementos de texto! ! usando a fonte "architectural". if ((type == text) and (font_name == 'architectural')) then color = 'gray' endif
header_level
A palavra-chave de comparação header_level retorna o nível pai de nível superior para elementos que são componentes de um elemento complexo. Por exemplo, suponhamos que você tem duas instâncias de uma célula compartilhada única em um arquivo do desenho: uma colocada no nível 2, a outra no nível 3. A definição da célula compartilhada contém um único elemento de forma no nível 1. A única maneira de distinguir entre as duas partes de geometria é o nível pai. Você pode usar a palavra-chave header_level em um script do desenho para aplicar uma cor nomeada "vermelho" para a célula compartilhada no nível 2.
Tipo de dados: valor inteiro
Exemplo:
! ! Mudar a cor de uma célula compartilhada no nível 2. ! if ((header_type == shared_cell) and (header_level == 2)) then color = 'red' endif
header_level_name
A palavra-chave de comparação header_level_name retorna o nível pai de nível superior para os elementos que são componentes de um elemento complexo. Por exemplo, suponhamos que você tem duas instâncias de uma única célula compartilhada em um arquivo do desenho: uma colocada no Nível A, a outra no Nível B. A definição da célula compartilhada contém um único elemento da forma no Nível C. A única maneira de distinguir entre as duas partes de geometria é o nível pai. Você pode usar a palavra-chave header_level_name em um script do desenho para aplicar uma cor nomeada "vermelho" para a célula compartilhada no Nível A.
Tipo de dados: string
Exemplo:
! ! Mudar a cor de uma célula compartilhada no Nível A. ! if ((header_type == shared_cell) and (header_level_name == 'Level A')) then color = 'red' endif
header_type
A palavra-chave header_type determina o tipo de cabeçalho complexo mais externo para elementos que são componentes de uma célula ou de uma célula compartilhada. Se o elemento atual não é parte de uma célula ou de uma célula compartilhada, o valor da palavra-chave header_type é o mesmo que o do tipo do elemento.
Tipo de dados: valores inteiros que correspondem aos tipos de elemento de cabeçalho válido ou a uma das seguintes constantes: célula ou célula compartilhada
Exemplo 1:
! ! Se o elemento atual é um componente de uma pilha ! mudar sua espessura para 2. ! if (header_type == cell) then weight = 2 endif
ip_scale_num
A palavra-chave ip_scale_num obtém a escala da definição da impressão como um número. O número é retornado sempre sob a forma de unidades mestras/unidades de impressão, independentemente de como MS_PLT_SCALE_METHOD é definido. Por exemplo, se a relação da escala exibida na caixa de diálogo Impressão é unidades mestres : unidades de impressão, e sua escala é definida como 2:1, o fator de escala numérica de valor único seria 2,0/1,0, ou 2,0.
Tipo de dados: número real
Exemplo:
! ! Plotar espessura de linha baseado na escala da definição da impressão. ! if (ip_scale_num ==2) then !large drawing use thick lines thickness = (weight +1) * .02 else !small drawing use thinner lines thickness = (weight +1) * .01 endif
ip_xsize_num
A palavra-chave ip_xsize_num obtém a definição de impressão xsize como um número.
Tipo de dados: número real
Exemplo:
! ! Plotar espessura de linha baseado na definição de impressão xsize. ! if (ip_xsize_num > 17) then !large drawing use thick lines thickness = (weight +1) * .02 else !small drawing use thinner lines thickness = (weight +1) * .01 endif
ip_ysize_num
A palavra-chave ip_ysize_num obtém a definição de impressão ysize como um número.
Tipo de dados: número real
Exemplo:
! ! Plotar espessura de linha baseado na definição de impressão ysize. ! if (ip_ysize_num > 17) then !large drawing use thick lines thickness = (weight +1) * .02 else !small drawing use thinner lines thickness = (weight +1) * .01 endif
level
A palavra-chave level contém o número do nível do elemento atual.
Tipo de dados: valor inteiro superior ou igual a zero
Exemplo:
! ! Definir a cor do elemento baseado em seu nível. ! if (level == 1) then color = 1 else if (level == 2) then color = 2 endif
level_name
A palavra-chave level_name contém o nome do nível do elemento atual. Coringas podem ser usados em comparações de string para igualdade ou desigualdade.
Tipo de dados: string
Exemplo:
! ! Definir a cor do elemento baseado em seu nível. ! if (level_name == "floor1") then color = 1 else if (level_name == "floor2") then color = 2 endif
lname
Se o elemento atual está em um arquivo de referência, a palavra-chave lname contém o nome lógico do arquivo de referência. Se o elemento atual está no arquivo mestre, a palavra-chave lname é avaliada como uma string vazia (""). Coringas podem ser usados em comparações de string para igualdade ou desigualdade.
Tipo de dados: string
Exemplo:
! ! Mudar a espessura de todos os elementos no ! arquivo de referência com o nome lógico de ! "border" to be a weight of 2. Elementos no ! arquivo mestre e outros arquiovos de referência ! não serão mudados. ! if (lname == 'border') then weight = 2 endif
model_format
A palavra-chave model_format permite que você opere sobre elementos dentro de um dos seguintes formatos de modelo: DGN7, DGN8, DWG, ou DWF.
Tipo de dados: constantes (DGN7, DGN8, DWG, ou DXF)
Exemplo:
! ! Aplique uma porcentagem diferente de seleção para ! cada formato de modelo. ! if (model_format == DGN7) then screening = 20 else if (model_format == DGN8) then screening = 30 else if (model_format == DWG) then screening = 40 else if (model_format == DXF) then screening = 50 endif
nested_cellname
Se o elemento atual é um cabeçalho de célula ou um componente de uma célula, a palavra-chave nested_cellname especifica o nome da célula. Para os componentes aninhados dentro de uma ou mais células, a palavra-chave nested_cellname especifica o nome da célula mais profunda. Se o elemento atual não é um cabeçalho de célula nem um componente de uma célula, o valor para a palavra-chave nested_cellname é "NO_CELL." Coringas podem ser usados em comparações de string para igualdade ou desigualdade.
Tipo de dados: string
Exemplo:
! ! Mudar a espessura de todos os componentes de uma célula ! aninhada nomeada "FRAME." ! if (nested_cellname == 'FRAME') then weight = 3 endif
properties
A palavra-chave properties fornece dois métodos para determinar se os bits na palavra propriedades do elemento estão definidos. Por exemplo, as duas expressões relacionais seguintes são equivalentes:
Tipo de dados: uma das seguintes constantes:
Exemplo:
! ! Não plotar nenhum elemento com o bit screen_relative ! definido na palavra de propriedades. ! if (properties == screen_relative) then ignore_element=true endif
size
Para os elementos de texto, a palavra-chave size é a altura do string de texto. Para todos os outros elementos, o tamanho é o maior da escala X, Y, ou Z do elemento.
Tipo de dados: unidades de trabalho
Exemplo:
! ! Mudar a cor dos elementos de texto cuja a altura é ! superior a 4 subunidades. ! if ((type == text) and (size > 0:4:0)) then color = 3 endif
style
A palavra-chave style contém o valor do estilo de linha do elemento atual. Se o estilo foi definido mais cedo no script do desenho pela palavra-chave style, então o estilo avaliará ao estilo novo em vez do estilo original do elemento. Além disso, se um estilo nomeado ou transições foram usados para definir o estilo de um elemento, a palavra-chave de comparação style não refletirá este. Avaliará ao índice atual do estilo.
Tipo de dados: valor inteiro na escala de 0 a 7
Exemplo:
! ! Mudar a cor de todos os elemento que não estão no nível 1 ! que tem um estilo de linha de 7. ! if ((level<>1) and (style == 7)) then color = 2 endif
palavras-chaves da etiqueta
As palavras-chaves da etiqueta verificam os dados de etiquetas anexados ao elemento atual. Se os dados de etiquetas não são anexados ao elemento atual, a palavra-chave TAG_CHARACTER avalia a "NO_TAG_CHARACTER,", enquanto TAG_INTEGER e TAG_REAL avaliam a NO_TAG_NUM.
Os seguintes são breves descrições, tipos de dados, e exemplos das palavras-chaves da etiqueta.
Tag_display | verifica se um tipo específico de etiqueta é exibido. |
Tag_character | testa o valor da etiqueta real. |
Tag_integer | testa o valor da etiqueta real. |
Tag_real | testa o valor da etiqueta real. |
Tipos de dados:
tag_character | string |
tag_display | constante (verdadeiro ou falso) |
tag_integer | número inteiro |
tag_real | número real |
Exemplo:
! ! Supor o arquivo do desenho usa dois conjuntos de etiquetas, ! Endereço residencial" e Endereço de trabalho, cada um ! contendo uma etiqueta do caracter nomeada Cidade, !mudar a cor de todos os elementos cujas etiquetas ! especificam um endereço residencial Huntsville ou um ! endereço de trabalho Madison." ! ! Começar procurando as etiquetas Cidade que pertencem a ! o conjunto de etiquetas Endereço residencial. ! tag_set = ‘Endereço residencial' tag_name = ‘Cidade' if (tag_char == 'Huntsville') then color = 4 endif ! Procure agora etiquetas Endereço de trabalho ! no conjunto de etiquetas. Note que o nome da etiqueta ainda é Cidade. tag_set = 'Endereço de trabalho' if (tag_char == 'Madison') then color = 4 endif
text_node_number
A palavra-chave da comparação text_node_number pode ser usada para testar com o número de nó de texto de um elemento do complexo do nó de texto.
Tipo de dados: valor inteiro
Exemplo 1:
! ! Mudar a cor do texto associada com um específico ! número de nó de texto. ! if (text_node_number eq 46) then color = 3 endif
Exemplo 2:
! ! Este script do desenho define um atributo da folha de plotagem ! baseado nos caracteres armazenados em um elemento do nó de text ! no arquivo do desenho. Este atributo da folha pode ser usado ! como dado de atributo em um arquivo digital. if (text_node_number eq 10) then envr_variable = "Author" envr_value = envr_value + " " + characters else if (text_node_number eq 11) then envr_variable = "Title" envr_value = envr_value + " " + characters endif
type
A palavra-chave type determina o tipo de elemento do elemento atual.
Tipo de dados: valores inteiros que correspondem a tipos de elemento válidos, ou uma das seguintes constantes:
arco (tipo 16) | line_string (tipo 4) |
assoc_dim (tipo 33) | malha (tipo 105) |
bspline_curve (tipo 27) | multiline (tipo 36) |
bsplne_surface (tipo 24) | forma (tipo 6) |
célula (tipo 2) | shared_cell (tipo 35) |
complex_shape (tipo 14) | sólido (tipo 19) |
connected_string (tipo 12) | superfície (tipo 18) |
curva (tipo 11) | texto (tipo 17) |
elipse (tipo 15) | text_node (tipo 7) |
linha (tipo 3) |
Exemplo:
! ! Mudar a cor de linhas, strings de linha, e curvas ! no nível 1 ! if ((type in 3,4,11) and (level == 1)) then color = 1 endif
weight
A palavra-chave weight contém o valor da espessura da linha do elemento atual.
Tipo de dados: valor inteiro na escala de 0 a 31
Exemplo:
! ! Definir a cor do elemento baseado em sua espessura ! units = inches if (weight == 0) then color = 1 else if (weight == 1) then color = 2 else if (weight == 2) then color = 3 else if (weight == 3) then color = 4 else if (weight == 4) then color = 5 else if (weight == 5) then color = 6 endif
width
A palavra-chave width é válida somente para linhas, strings de linha, elipses, arcos, e strings conectadas 2D. Todos os outros elementos e os elementos 3D têm um valor da largura de 0. O valor da largura é extraído do campo da escala baixa Z do elemento e especifica a largura da linha do elemento nas unidades de trabalho em oposição a um valor da espessura.
Tipo de dados: unidades de trabalho
Exemplo:
! ! Mudar a cor de linhas, strings de linha, strings conectados !, arcos, e elipses baseado em sua largura. ! units = inches if (type .in. 3,4,12,15,16) then if (width == 0:0:050) then color = 1 else if (width == 0:0:100) then color = 2 else if (width == 0:0:150) then color = (30,50,100) else if (width == 0:0:200) then color = (100,0,0) else if (width > 0:0:300) then color = (0,0,0) endif endif