Modification des fichiers (.dxd) de définition d'extraction de données

Note: Dans la V22, la syntaxe de .dxd utilise la version 2,0 :
  • La section Paths (chemins) a été ajoutée.
  • Les opérations logiques utilisent la notation infixe : (EntityType=="3D Solid") et (Type=="BIM_COLUMN") au lieu de la notation préfixe : AND (EntityType=="3D Solid") (Type=="BIM_COLUMN")

Les fichiers DXD (Data Extraction Definition) sont des simple fichiers texte. Vous pouvez modifier les fichiers DXD créés par la commande EXTRACTDONNEES à l'aide d'un éditeur de texte tel que MS Notepad et les utiliser dans la procédure de création de planifications dans le navigateur Projet.

Les lignes commençant par un point-virgule (;) sont des commentaires et ignorées lors de l'analyse. Les lignes vides sont également ignorées.

Le fichier peut contenir 4 sections, chaque nom de section est écrit entre crochets, les noms de section sont des chaînes ECI ( English case-insensitive). Les sections sont les suivantes :

  • Paths
  • Paramètres
  • Entity Types
  • Propriétés
  • Filtre

La section [Paths]

Répertorie les chemins à rechercher pour les fichiers de dessin.

$CurDwg : dessin actuel

$CurProj : projet actuel

La section [Settings]

Cette section contient les valeurs des paramètres suivants qui contrôlent le comportement :

  • ExtractFromBlocks - si l'on doit prendre en compte les entités des blocs, en considérant tous les niveaux d'imbrication.
  • ExtractionFromXrefs - si l'on doit prendre en compte les entités des blocs de référence externes.
  • CountXrefs - si les xrefs sont prises en compte.
  • CombineEqualRows : permet de regrouper ou non les lignes égales dans la table en sortie ; si oui, la colonne Count est ajoutée, ce qui indique le nombre de lignes de données égales incluses.
  • IncludeNameColumn : indique si la sortie inclut la colonne Name. La colonne Nom indique le type d'entité source : Solide 3D, Solide 3D Ply, ...

Les noms de paramètre sont des chaînes ECI. Le format est le suivant :

ParameterName=value,

La valeur est soit 1 soit 0. Aucun espace ne doit être écrit autour du caractère égal (=).

La section [Entity Types]

Cette section contient la liste des types d'entités qui seront traitées. Le format de chaque ligne peut être l'un des types suivants :

EntityType | DisplayEntityType

  • EntityType est le nom du type d'entité ECI, tel que Circle ou AttributeDefinition. C'est la partie obligatoire de la ligne.

  • DisplayEntityType est facultatif et peut être n'importe quelle chaîne de caractères, y compris les espaces, dans n'importe quelle langue. S'il est présent, cette chaîne apparaît dans la boîte de dialogue EXTRACTDONNEES et dans la table en sortie.

Block | BlockName | Nom du bloc d'affichage

  • Block est le mot ICE prédéfini, et BlockName est le nom insensible à la casse du bloc à traiter, y compris xRefs et MInsert(s).

  • DisplayBlockName est facultatif et a la même signification et le même format que DisplayEntityType.

Block | *

Il s'agit d'une variante du format précédent, ce qui signifie que tous les blocs seront pris en compte. S'ils sont présents, toutes les autres lignes concernant les blocs de cette section sont ignorées. Vous pouvez utiliser la section Filter pour filtrer le contenu à traiter.

*

Tous les types d'entités et blocs seront pris en compte, toutes les autres lignes de cette section sont alors ignorées. Vous pouvez utiliser la section Filter pour filtrer le contenu à traiter.

La section [Properties]

Cette section contient une liste de toutes les propriétés à inclure dans la sortie d'extraction des données. Le format de chaque ligne peut être l'un des types suivants : Propriété d'entité, Attribut, Dessin, Formule ou Vue en bloc.

EntityPropertyName | AffichagePropriétéEntityName | ValueOutputFormat

  • EntityPropertyName est le nom ECI de la propriété de l'entité, par ex. Lineweight, Color, Center Y et ainsi de suite. Notez que tous les noms ne contiennent pas d'espaces à l'exception de ceux qui représentent des coordonnées de points ou vecteurs 2D ou 3D. Dans le dernier cas, les lettres de coordonnées X, Y et Z doivent être séparées par un seul espace du nom général de la propriété.

    EntityPropertyName est la partie obligatoire de la ligne, le reste est facultatif.
  • DisplayEntityPropertyName est défini par l'utilisateur et peut se trouver dans n'importe quelle chaîne, y compris dans n'importe quelle langue. Par défaut, il est égal à EntityPropertyName.

  • ValueOutputFormat est une chaîne qui est utilisée pour formater la sortie. La syntaxe de la chaîne est la même que pour le formatage des champs.

Attribute | AttributeTagName | DisplayAttributeTagName | ValueOutputFormat

  • Attribute est le mot ICE prédéfini.

  • AttributeTagName est le nom de balise d'attribut ECI tel qu'il est stocké dans le dessin.

  • DisplayAttributeTagName et a la même signification que pour EntityPropertyName. (voir ci-dessus).

  • ValueOutputFormat est une chaîne qui est utilisée pour formater la sortie. La syntaxe de la chaîne est la même que pour le formatage des champs.

Drawing | DrawingPropertyName | Nom de la propriété d'affichage | ValueOutputFormat

  • Drawing est un mot ECI prédéfini.

  • DrawingPropertyName est un nom ECI, qui peut être l'un des suivants :
    • Comments
    • DrawingRevisionNumber
    • FileAccessed
    • FileCreated
    • FileLastSavedBy
    • FileLocation
    • FileModified
    • FileName
    • FileSize
    • HyperlinkBase
    • Keywords
    • Subject
    • Titre
    • TotalEditingTime
  • DisplayPropertyName a la même signification que EntityPropertyName. (voir ci-dessus).
  • ValueOutputFormat est une chaîne qui est utilisée pour formater la sortie. La syntaxe de la chaîne est la même que pour le formatage des champs.

Formula | EntityPropertyName | DisplayEntityPropertyName=FormulaExpression | ValueOutputFormat

  • Formula est un mot ICE prédéfini.

  • EntityPropertyName est un nom unique pour cet élément de formule.

  • DisplayEntityPropertyName est un nom facultatif en sortie de la propriété, s'il est omis, alors EntityPropertyName est utilisé comme titre de colonne de la table.

  • = est un signe obligatoire, qui doit exister même si DisplayEntityPropertyName est omis.

  • FormulaExpression est l'expression au format tel que dans les champs de formule \AcExpr, qui peuvent contenir des constantes telles que PI ou des fonctions telles que SIN (voir Utilisation des expressions). Un opérande dans une expression peut être un DisplayPropertyName entouré de crochets fléchés (<> ).

    Par exemple : =2 * PI * <Rayon> calcule la circonférence d'un cercle.
  • ValueOutputFormat est une chaîne qui est utilisée pour formater la sortie. La syntaxe de la chaîne est la même que pour le formatage des champs.

BlockView | BlockViewPropertyName | AffichageBlockViewPropertyName | BlockViewOptions

  • BlockView est un mot ECI prédéfini

  • BlockViewPropertyName est un nom unique pour cet élément de vue du bloc.

  • DisplayEntityPropertyName est le nom de sortie de la propriété ; ne peut être omis.

  • BlockViewOptions est une chaîne au format suivant :

    ViewType;DwgPath;SectionName
    • ViewType est l'un des éléments suivants : Front, Top, Left ou Right ; ne peut être omis.
    • DwgPath est le chemin d'accès au fichier dwg, qui peut être relatif par rapport au fichier dxd ; peut être omis.
    • SectionName est le nom de la coupe où sont extraits les paramètres de coupe issus de la construction de la vue de bloc, et peut être omis.

Si DwgPath ou SectionName sont omis ou non trouvés, les paramètres par défaut seront appliqués.

Un exemple :

BlockView|BlockViewProperty1|Symbole d'élévation|Front ;../Sections/_SectionSettings.dwg;_BlockViewSettingsSection

*

Si toutes les propriétés d'entité sont prises en compte, toutes les autres lignes de cette section, à l'exception des lignes Dessin et Formule, sont ignorées.

Note: La recherche de champs vides est " " (espace requis)

La section [Filter] (Filtre)

Description syntaxique :

Opérateurs relationnels :

Opération Signification en cours
== Egal à
!= Différent de
< Inférieur à
> Supérieur à
<= Inférieur ou égal à
>= Supérieur ou égal à
  • Les expressions relationnelles sont entourées de crochets '()'.
  • Les opérateurs logiques AND et OR sont insensibles à la casse.
  • Les expressions logiques utilisent une notation d'infix.
  • Les jetons peuvent être séparés par zéro ou n'importe quel nombre d'espaces, sauf que l'expression logique commence,

    exemple :

    ( Layer == "MonCalque" ) AND (Thickness<=3)

  • Les expressions peuvent être divisées en un nombre illimité de lignes ; les jetons ne sont pas rompus.
  • Utilisez le EntityPropertyName pour faire référence aux propriétés (et non le DisplayEntityPropertyName).
  • Les lignes peuvent être commentées avec ';'.
  • Les valeurs de type chaîne sont placées entre guillemets "" .

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

Le résultat du filtre dans l'exemple ci-dessus est que seules les entités BIM classées comme fenêtres ou portes sont incluses dans l'extraction de données. Consultez la commande BIMCLASSER pour en savoir plus sur les types d'entités BIM.

L'expression du filtre est soit une expression relationnelle unique, soit plusieurs expressions regroupées par opérations logiques.

Exemple :

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

où (0),...,(6) sont des expressions relationnelles telles que (Rayon >= 3).