BIM Preflight/fr

Description


FreeCAD étant une plate-forme de modélisation très souple, les exigences sont très faibles. Vous pouvez essentiellement modéliser et organiser votre modèle BIM comme vous le souhaitez, en utilisant tous les outils offerts par FreeCAD, à la fois à partir de l'atelier BIM et d'autres ateliers. Le format IFC, cependant, a des exigences strictes, et d'autres applications BIM qui peuvent lire des fichiers IFC apportent souvent des limitations supplémentaires car elles ont plus que souvent des difficultés avec certaines entités ou la façon dont certains objets sont modélisés.

L'outil de contrôle en amont BIM vous permet d'effectuer plusieurs tests sur votre modèle pour vérifier sa compatibilité avec les normes IFC et les meilleures pratiques et vous aider à détecter les éventuels problèmes que vous pourriez vouloir résoudre.

Les résultats de la plupart des tests fournis par cet outil sont facultatifs, ce qui signifie que vous pouvez choisir d'exporter votre modèle même en cas d'échec. Vous êtes le seul à évaluer si vous avez besoin du test pour réussir ou non. Nous avons fait de notre mieux pour fournir des informations fiables afin de vous aider à prendre une décision.

Utilisation

 * Avoir un modèle ouvert dans FreeCAD, avec au moins quelques objets
 * Vous pouvez sélectionner des objets avant de lancer les tests, auquel cas vous avez la possibilité d'effectuer le test uniquement sur les objets sélectionnés
 * Appuyez sur le bouton Test All pour effectuer tous les tests ou uniquement les boutons correspondant aux tests individuels.
 * Une fois les tests terminés, appuyer sur un bouton Failed vous donnera des informations supplémentaires pour vous aider à décider si cela vous concerne ou non.

Tests intégrés

 * Run all tests: Exécute tous les tests les uns après les autres

Tests d'installation de FreeCAD

 * IFC4 support: Teste si le système d'importation/exportation IFC de FreeCAD fonctionne correctement et si le format IFC4 est disponible (nécessite une version à jour de IfcOpenShell) et activé dans les préférences.

Project organization tests

 * Project hierarchy: The IFC format requires at least one building and it is also a common practice to have one site and at least one level (storey). This test checks if these are present in the model
 * Buildings: Checks that all buildings found in the model are part of a site
 * Levels: Checks that all levels (building storeys) found in the model are prt of a building
 * Objects structure: Checks that all objects found in the model are part of a level

Objects & property tests

 * Undefined objects: Checks if there are objects in the model that are not BIM objects, and will therefore be exported without full BIM properties
 * Solids: Checks that all objects in the model have valid solid geometry
 * Explicit quantities: Checks that all objects with length, width or height properties are marked for explicit export of these quantities
 * Common Properties sets: Checks that all BIM objects of common types (wall, door, etc...) have the corresponding "common" properry set applied (Pset_WallCommon, Pset_DoorCommon, etc)
 * Property sets integrity: Checks that all common Psets (Pset_WallCommon, Pset_DoorCommon, etc) found in the model include all and only the properties defined by the IFC standards
 * Materials: Checks that all BIM objects have a material
 * Standards: Checks that all BIM objects have a standard code

Compatibility tests

 * Extrusions: Checks that all BIM objects are linear extrusions
 * Standard cases: Checks that all walls and structural elements are standard cases, as defined by the IFC schema
 * Tiny lines: Checks that no line segment in the model is smaller than 1/32", the minimum length that Revit is able to manage...
 * IfcRectangleProfileDef: Checks that the option to export rectangular profiles as IfcRectangleProfileDef is disabled, because Revit (yes, them again) is unable to import that entity.

Custom tests
The Preflight tool also allows you to write custom tests, that will be appended after the built-in tools in the Preflight dialog, and run when using the Run all tests button. These tests are written in Python. They consists of simple functions inside one or more Python files. You can perform any operation you want inside those functions, they must just pass or fail, and in case they fail, show a message informing the user of what failed.

You can write several tests in one single Python file, or divide in several files, as you prefer. These files must be placed in $USERAPPDATA/BIM/Preflight and can be given any name (Be sure to use very unique names as to not conflict with any built-in Python module. The $USERAPPDATA folder depends on your platform/operating system (usually $HOME/.FreeCAD on linux/mac, /users/YOUR USER/Application Data/roaming/FreeCAD on windows), and can also be found by entering this in the FreeCAD Python console:

FreeCAD.getUserAppDataDir

Inside each Python file, tests are simple functions that take no argument, and return either True if the test passed, or a string of text that will be shown to the user if the test failed.

A typical test file would be like this, that should be named something like "myCustomTest.py" and placed inside $USERAPPDATA/BIM/Preflight:

import FreeCAD def myCustomTest: # This describes what your test does. For example, # here, it checks that there is at least one object in the document. # This text will appear next to the button in the Preflight tool """Checks that the document contains at least one object""" doc = FreeCAD.ActiveDocument objects = doc.Objects if len(objects) >= 1: result = True else: result = "This document contains no object" # The function must return either True or a string of   # text if the test failed. The string or text will be displayed # to the user when they press the "Failed" button. return result
 * 1) The name of your test. You can give the functions any name
 * 2) you want, the important is the description text below