Essayez d'ajouter un mur à votre fichier IFC avec IfcOpenShell python

introduction

Qu'est-ce qu'un fichier IFC?

Un fichier créé selon les spécifications des classes Industry Foundation. Comprend les éléments utilisés en construction dans l'industrie de la construction (murs, fenêtres, portes, équipement du bâtiment, etc.). Par conséquent, si vous disposez d'un fichier IFC, vous pouvez reproduire le bâtiment en 3D à l'aide d'une application de visualisation.

portée

·Environnement -Lire un fichier IFC existant ・ Ajouter un exemple de mur -Output comme nouveau fichier IFC

Environnement

Télécharger IfcOpenShell

conda install -c conda-forge -c oce -c dlr-sc -c ifcopenshell ifcopenshell

Installez pythonocc-core

conda install -c conda-forge -c dlr-sc -c pythonocc -c oce pythonocc-core

Ajouter un mur à un fichier IFC

import ifcopenshell
from ifcopenshell import geom

settings = ifcopenshell.geom.settings()
settings.set(settings.USE_PYTHON_OPENCASCADE, True)

#Lire un fichier IFC existant
ifc_file = ifcopenshell.open("sample.ifc")

#Chargez le gabarit de mur nouvellement créé
sample_wall = ifc_file.createIfcWall()

#Définir les coordonnées
context = ifc_file.by_type("IfcGeometricRepresentationContext")[0]
point1 = ifc_file.createIfcCartesianPoint((0.0, 0.0, 0.0))
point2 = ifc_file.createIfcCartesianPoint((5.0, 0.0, 0.0))
ifcpts = []
ifcpts.append(point1)
ifcpts.append(point2)
polyline = ifc_file.createIfcPolyLine(ifcpts)

#Définir la forme
axis_representation = ifc_file.createIfcShapeRepresentation(context, "Axis", "Curve2D", [polyline])
product_shape = ifc_file.createIfcProductDefinitionShape(None, None, [axis_representation])

#Ajouter un nouveau mur
sample_wall.Representation = product_shape
ifc_file.add(sample_wall.Representation)

#Exporter en tant que fichier séparé
ifc_file.write("sample_new.ifc")

référence

Création d'un mur simple avec un ensemble de propriétés et des informations sur la quantitéEssayez de créer le mur moi-même

Recommended Posts

Essayez d'ajouter un mur à votre fichier IFC avec IfcOpenShell python
Essayez de dessiner une courbe de vie avec python
Essayez de créer un code de "décryptage" en Python
Essayez de créer un groupe de dièdre avec Python
Je veux écrire dans un fichier avec Python
Faisons un outil de veille de commande avec python
Essayez d'ouvrir une sous-fenêtre avec PyQt5 et Python
Essayez de déchiffrer les caractères déformés dans le nom du fichier joint avec Python
Essayez d'exploiter Facebook avec Python
Sortie vers un fichier csv avec Python
Une histoire sur l'ajout d'une API REST à un démon créé avec Python
Essayez de créer un environnement python avec Visual Studio Code et WSL
Essayez d'extraire une chaîne de caractères d'une image avec Python3
[ROS2] Comment lire un fichier bag avec le lancement au format python
Essayez de reproduire un film couleur avec Python
Créer un fichier power simple avec Python
Essayez le scraping HTML avec la bibliothèque Python
Essayez de dessiner une carte avec python + cartopy 0.18.0
J'ai créé un fichier de configuration avec Python
Créez des raccourcis pour exécuter des fichiers Python sur le terminal avec VScode
Essayez de résoudre un problème défini de mathématiques au lycée avec Python
Essayez de créer votre propre AWS-SDK avec bash
nginxparser: essayez d'analyser le fichier de configuration nginx avec Python
Calculons en fait le problème statistique avec Python
Essayez de résoudre le diagramme homme-machine avec Python
Comment créer un fichier JSON en Python
Je veux faire un jeu avec Python
Essayez de générer automatiquement des documents Python avec Sphinx
Décidez d'une mission de laboratoire avec Python (fiction)
Enregistrer l'objet dans un fichier avec pickle
Créer un fichier au format Photoshop (.psd) avec python
Lire ligne par ligne à partir d'un fichier avec Python
Ouvrir la boîte de dialogue de fichier avec l'interface graphique Python (tkinter.filedialog)
Zubu amateur veut démarrer Python
Essayez de détecter les poissons avec python + OpenCV2.4 (inachevé)
Essayez de résoudre le problème du voyageur de commerce avec un algorithme génétique (code Python)
Comment déposer Google Docs dans un dossier dans un fichier .txt avec python
WEB grattage avec python et essayez de créer un nuage de mots à partir des critiques
Essayez de gratter avec Python.
Analyser une chaîne JSON écrite dans un fichier en Python
Comment convertir / restaurer une chaîne avec [] en python
Mémo pour créer votre propre Box avec le Python de Pepper
Essayez de résoudre le livre des défis de programmation avec python3
Mémo connecté à HiveServer2 d'EMR avec python
python débutant essaie d'ajouter une authentification de base à l'administrateur de Django
Essayez de créer un module Python en langage C
Essayez de créer un fichier compressé en utilisant Python et zlib
Python Ver. Présentation de WebPay avec un peu de code
Essayez d'améliorer votre propre quiz d'introduction avec Python
Effectuez une recherche Twitter à partir de Python et essayez de générer des phrases avec la chaîne de Markov.
Essayez de créer un Checkbutton dynamiquement avec Tkinter en Python
(Python) Essayez de développer une application Web en utilisant Django
Convertir un fichier texte avec des valeurs hexadécimales en fichier binaire
Essayez de résoudre le problème d'affectation du médecin de formation avec Python
J'ai essayé de toucher un fichier CSV avec Python
Essayez d'incorporer Python dans un programme C ++ avec pybind11
Un mémorandum pour exécuter un script python dans un fichier bat
Comment mesurer le temps de lecture d'un fichier mp3 avec python