Editar arquivos de definição de extração de dados (.dxd)

Note: Desde V22, a sintaxe dos arquivos DXD usa a versão 2.0:
  • A seção Paths foi adicionada.
  • As operações lógicas usam notação de infixo: (EntityType=="3D Solid") and (Type=="BIM_COLUMN") em vez da notação de prefixo: AND (EntityType=="3D Solid") (Type=="BIM_COLUMN")

Arquivos DXD (Data eXtraction Definition) são arquivos de texto puro. Você pode editar arquivos DXD criados pelo comando EXTRACAODADOS usando um editor de texto como MS Bloco de Notas e usá-los no procedimento Criar Inventários no Navegador do Projeto.

Linhas que começam com ponto-e-vírgula (;) são apenas comentários, e serão ignoradas na análise. Linhas vazias também são ignoradas.

O arquivo pode conter 4 seções, cada nome de seção é escrita entre colchetes, nomes +de seção são sentenças em Inglês que não diferenciam maiúsculas e minúsculas (ECI = English case-insensitive). As seções são:

  • Caminhos
  • Configurações
  • Entity Types (tipos de entidades)
  • Propriedades
  • Filtrar

A seção Paths

Lista os caminhos a ser pesquisados para arquivos de desenho.

$CurDwg: desenho atual

$CurProj: projeto atual

A seção de configurações [Settings]

Essa seção contém valores dos seguintes parâmetros, que controlam o comportamento:

  • ExtractFromBlocks (Extrair dos Blocos) - para levar em conta as entidades armazenadas nos blocos, considerando todos os níveis de aninhamento.
  • ExtractFromXrefs (Extrair dos RefEx's) - para levar em conta as entidades armazenadas em blocos de referência externos.
  • CountXrefs (Contar com RefEx's) - se são computados dados vindos dos RefEx's.
  • CombineEqualRows (Combinar linhas iguais) - se serão agrupadas linhas iguais na tabela de resultado; caso positivo, então a coluna Count (Contar) é adicionada, e vai indicar quantas linhas de dados iguais estão incluídas.
  • IncludeNameColumn - se a saída inclui a coluna Nome. A coluna Nome indica o tipo de entidade de origem: Sólido 3D, Subcamada Sólido 3D,...

Os nomes dos parâmetros são frases ECI (Inglês, indep. de ser maiús/minúsc). O formato é:

ParameterName=Valor,

O valor é 1 ou 0. Nenhum espaço deve ser mantido em torno do caractere igual (=).

A seção dos tipos de entidades [Entity Types]

Esta seção contém lista de tipos de entidade que serão processadas. O formato de cada linha pode ser um dos seguintes tipos:

EntityType | DisplayEntityType

  • EntityType é o nome do tipo de entidade ECI, que reconhece maiúsculo e minúsculo, como Circle ou AttributeDefinition. Esta é a parte obrigatória da linha.

  • DisplayEntityType (ExibirTipoEntidade) é opcional e pode ser qualquer frase de caracteres, incluindo espaços em qualquer idioma. Se estiver presente, esta frase aparece na caixa de diálogo EXTRACAODADOS e na tabela do resultado na saída.

Block | BlockName | DisplayBlockName

  • Block é a palavra ECI predefinida, e BlockName é o nome que não diferencia maiúsculas de minúsculas do bloco a ser processado, incluindo xRefs e MInsert(s).

  • DisplayBlockName é opcional e tem o mesmo significado e formato que DisplayEntityType.

Block | *

Esta é uma variante do formato anterior, o que significa que todos os blocos serão levados em conta; se estiver presente, todas as outras linhas relativas a blocos nesta seção serão ignoradas. Você pode usar a seção Filter (Filtro) para filtrar o conteúdo a ser processado.

*

Todos os tipos de entidade e blocos serão levados em conta, então todas as outras linhas nesta seção serão ignoradas. Você pode usar a seção Filter (Filtro) para filtrar o conteúdo a ser processado.

A seção das propriedades [Properties]

Esta seção contém uma lista de todas as propriedades a ser incluídas no resultado de saída da extração de dados. O formato de cada linha pode ser um dos seguintes tipos: Propriedade da Entidade, Atributo, Desenho, Formula ou Block.

EntityPropertyName | DisplayEntityPropertyName | ValueOutputFormat

  • EntityPropertyName é o nome ECI da propriedade da entidade, por exemplo, EspLinha, Cor, Centro Y e assim por diante. Observe que todos os nomes não contêm espaços, exceto aqueles que representam coordenadas de pontos 2D ou 3D ou vetores. No último caso, as letras de coordenadas X, Y e Z devem ser separadas, por um espaço simples, do nome geral da propriedade.

    EntityPropertyName é a parte obrigatória da linha, e a parte restante é opcional.
  • DisplayEntityPropertyName é definido pelo usuário e pode estar em qualquer string incluindo espaços, em qualquer idioma. Por padrão, é igual a EntityPropertyName.

  • ValueOutputFormat é uma string que é usada para formatar a saída. A sintaxe da string é a mesma usada ao formatar campos.

Attribute | AttributeTagName | DisplayAttributeTagName | ValueOutputFormat

  • Attribute é a palavra ECI predefinida.

  • AttributeTagName é o nome ECI da etiqueta do atributo, armazenada no desenho.

  • DisplayAttributeTagName e tem o mesmo significado que para EntityPropertyName (veja acima).

  • ValueOutputFormat é uma string que é usada para formatar a saída. A sintaxe da string é a mesma usada ao formatar campos.

Drawing | DrawingPropertyName | DisplayPropertyName | ValueOutputFormat

  • Drawing é uma palavra ECI predefinida.

  • DrawingPropertyName é um nome ECI, que pode ser um dos seguintes:
    • Comments
    • DrawingRevisionNumber
    • FileAccessed
    • FileCreated
    • FileLastSavedBy
    • FileLocation
    • FileModified
    • NomeArquivo
    • FileSize (tamanho)
    • HyperlinkBase
    • Keywords
    • Subject
    • Título
    • TotalEditingTime
  • DisplayPropertyName tem o mesmo significado para EntityPropertyName (veja acima).
  • ValueOutputFormat é uma string que é usada para formatar a saída. A sintaxe da string é a mesma usada ao formatar campos.

Formula | EntityPropertyName | DisplayEntityPropertyName=FormulaExpression | ValueOutputFormat

  • Formula é uma palavra ECI predefinida.

  • EntityPropertyName é um nome único para este item da fórmula.

  • DisplayEntityPropertyName é um nome de saída opcional da propriedade, e se for omitido, então EntityPropertyName é usado como o título da coluna na tabela.

  • = é um sinal obrigatório, que deve existir mesmo que DisplayEntityPropertyName seja omitido.

  • FormulaExpression é a expressão em formato como nos campos de fórmula \AcExpr, que pode conter constantes como PI ou funções como Seno (ver Usar Expressões). Um operando em uma expressão pode ser um DisplayPropertyName entre colchetes de seta (<>).

    Por exemplo: =2 * PI * <Raio> calcula a circunferência de um círculo.
  • ValueOutputFormat é uma string que é usada para formatar a saída. A sintaxe da string é a mesma usada ao formatar campos.

BlockView | BlockViewPropertyName | DisplayBlockViewPropertyName | BlockViewOptions

  • BlockView é uma palavra ECI predefinida

  • BlockViewPropertyName é um nome único para este item da fórmula.

  • DisplayEntityPropertyName é o nome da saída da propriedade; não pode ser omitido

  • BlockViewOptions é uma string no seguinte formato:

    ViewType;DwgPath;SectionName
    • TipoVista (ViewType) é um dos seguintes: Frente, Sup, Esq ou Dir; não pode ser omitido.
    • CaminhoDesenho (DwgPath) é o caminho para o arquivo de desenho, pode ser relativo ao arquivo *.dxd; pode ser omitido
    • NomeCorte (SectionName) é o nome do corte da qual vai extrair as configurações do corte, para a construção da vista do bloco; pode ser omitido

Se DwgPath ou SectionName forem omitidos ou não forem encontrados, as configurações padrão serão aplicadas.

Um exemplo:

BlockView|BlockViewProperty1|Elevation symbol|Front;../Sections/_SectionSettings.dwg;_BlockViewSettingsSection

*

Se estiver presente, todas as propriedades da entidade são levadas em conta; e são ignoradas todas as outras linhas nesta seção, exceto as linhas Desenho e Formula.

Note: A pesquisa de campos vazios é " " (espaço é necessário)

A seção [Filter]

Descrição da sintaxe:

Operadores relacionais:

Operador Significado
== Igual a
!= Não igual a
< Menor que
> Maior que
<= menor que ou igual a
>= maior que ou igual a
  • Expressões relacionais estão colocadas entre parêntesis '()'
  • Os operadores lógicos AND e OR não diferenciam maiúsculas de minúsculas
  • Expressões lógicas usam uma notação de infix.
  • Tokens podem ser separados por zero ou qualquer número de espaços, exceto o início da expressão lógica,

    exemplo:

    (Camada == "MyLayer" ) and (Espessura<=3)

  • Expressões podem ser divididas em qualquer número de linhas; tokens não são quebrados.
  • Use o EntityPropertyName para se referir às propriedades (não ao DisplayEntityPropertyName).
  • Linhas podem ser comentadas com ';'.
  • Valores de strings (sequências) são colocados entre aspas duplas ""

(Type == BIM_WINDOW) ou (Type == BIM_DOOR)

O resultado do filtro no exemplo acima é que apenas entidades BIM classificadas como janelas ou portas estão incluídas na extração de dados. Consulte o comando BIMCLASSIFICAR para saber mais sobre os tipos de entidade BIM.

A expressão de filtro pode ser uma única relacional, ou várias agrupadas por operações lógicas.

Exemplo:

((0) and ((1) or (2))) or ((3) and (4) and (5)) or (6)

onde (0),..., (6) são expressões relacionais como (Raio>= 3).