Arch Roof/fr: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
 
(67 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>

{{Docnav/fr
{{Docnav/fr
|[[Arch_Grid/fr|Grille]]
|[[Arch_Window/fr|Fenêtre]]
|[[Arch_Space/fr|Espace]]
|[[Arch_CompAxis/fr|Outils pour les axes]]
|[[Arch_Module/fr|Atelier Arch]]
|[[Arch_Workbench/fr|Atelier Arch]]
|IconL=Arch_Grid.svg
|IconL=Arch_Window.svg
|IconR=Arch_Space.svg
|IconR=Arch_CompAxis.png
|IconC=Workbench_Arch.svg
|IconC=Workbench_Arch.svg
}}
}}


<div class="mw-translate-fuzzy">
{{GuiCommand/fr
{{GuiCommand/fr
|Name=Arch Roof
|Name=Arch Roof
|Name/fr=Arch Toiture
|Name/fr=Arch Toit
|MenuLocation=Arch → Toiture
|MenuLocation=Arch → Toit
|Workbenches=[[Arch_Module/fr|Arch]]
|Workbenches=[[Arch_Workbench/fr|Arch]]
|Shortcut={{KEY|R}} {{KEY|F}}
|Shortcut={{KEY|R}} {{KEY|F}}
|SeeAlso=[[Arch_Structure/fr|Arch Structure]], [[Arch_Wall/fr|Arch Mur]]
|SeeAlso=[[Arch_Structure/fr|Arch Structure]], [[Arch_Wall/fr|Arch Mur]]
}}
}}
</div>


==Description==
==Description==


L'outil {{Button|[[Image:Arch Roof.svg|16px]] [[Arch_Roof/fr|Arch Toit]]}} permet de créer un toit en pente à partir d'une polyligne sélectionnée. L'objet Toit créé est paramétrique et garde sa relation avec l'objet de base. Le principe est que chaque arête se voit attribuer un profilé de toit (pente, largeur, débord, épaisseur).
<div class="mw-translate-fuzzy">
L'outil {{Button|[[Image:Arch Roof.svg|16px]] [[Arch Roof/fr|Toiture]]}} permet de créer un toit en pente à partir d'un fil sélectionné. L'objet Toiture créé est paramétrique et garde sa relation avec l'objet de base. Le principe est que chaque bord se voit attribuer un profil de toiture (pente, largeur, surplomb, épaisseur).
</div>


'''Remarque:''' cet outil est encore en développement et peut échouer avec des formes très complexes.
'''Remarque :''' cet outil est encore en développement et peut échouer avec des formes très complexes.


[[Image:RoofExample.png|600px]]
[[Image:RoofExample.png|600px]]
{{Caption|Vue d'en haut d'un modèle de bâtiment montrant le toit avec une certaine transparence}}
{{Caption|Vue d'en haut d'un modèle de bâtiment montrant le toit avec une certaine transparence}}


<span id="Usage"></span>
==Utilisation==
==Utilisation==


# Créez un fil dans le sens antihoraire et sélectionnez le.
# Créez une polyligne fermée dans le sens anti-horaire et sélectionnez la.
#*[[Image:CounterclockwiseWire.png|600px]]
#:[[Image:CounterclockwiseWire.png|600px]]
# Cliquez sur le bouton {{Button|[[Image:Arch Roof.svg|16px]] [[Arch_Roof/fr|Toiture]]}} ou sur les touches {{KEY|R}} puis {{KEY|F}}.
# Cliquez sur le bouton {{Button|[[Image:Arch Roof.svg|16px]] [[Arch_Roof/fr|Toit]]}} ou appuyez sur les touches {{KEY|R}} puis {{KEY|F}}.
# L'objet Toit par défaut a l'air étrange car l'outil manque certaines informations nécessaires.
# L'objet Toit par défaut a l'air étrange car l'outil manque de certaines informations nécessaires.
# Après la création du toit par défaut, double cliquez sur l'objet dans la [[Tree_view/fr|Vue par arborescence]] pour accéder à son édition et ses propriétés. Les angles doivent être compris entre 0 et 90 degrés.
# Après la création du toit par défaut, double-cliquez sur l'objet dans la [[Tree_view/fr|vue en arborescence]] pour accéder à son édition et ses propriétés. Les angles doivent être compris entre 0 et 90 degrés.
#:[[File:RoofTable.png]]
#:[[File:RoofTable.png]]
# Chaque ligne correspond à un pan de toit. Vous pouvez ainsi définir les propriétés que vous dédirez pour chaque pan du toit.
# Chaque ligne correspond à un pan du toit. Vous pouvez ainsi définir les propriétés que vous dédirez pour chaque pan du toit.
# Pour vous aider, vous pouvez régler {{incode|Angle}} ou {{incode|Run}} sur {{incode|0}} et définir un {{incode|Relative Id}}, cela effectue un calcul automatique pour trouver les données relatives au {{incode|Relative Id}}.
# Pour vous aider, vous pouvez régler {{incode|Angle}} ou {{incode|Course}} à {{incode|0}} et définir un {{incode|Identifiant rel.}}, cela effectue un calcul automatique pour trouver les données relatives au {{incode|Identifiant rel.}}.
# Cela fonctionne ainsi :
# Cela fonctionne ainsi :
## Si {{incode|Angle &#61; 0}} et {{incode|Run &#61; 0}} alors le profil est identique au profil relatif.
## Si {{incode|Angle &#61; 0}} et {{incode|Course &#61; 0}} alors le profilé est identique au profilé relatif.
## Si {{incode|Angle &#61; 0}} alors {{incode|Angle}} est calculé de manière à ce que la hauteur soit identique au profil relatif.
## Si {{incode|Angle &#61; 0}} alors {{incode|Angle}} est calculé de manière à ce que la hauteur soit identique au profilé relatif.
## Si {{incode|Run &#61; 0}} alors {{incode|Run}} est calculé de manière à ce que la hauteur soit identique à celle du profil relatif.
## Si {{incode|Course &#61; 0}} alors {{incode|Course}} est calculé de manière à ce que la hauteur soit identique à celle du profilé relatif.
## Enfin, fixez un angle à 90° pour faire un pignon.
## Enfin, fixez un angle à 90° pour faire un pignon.
#:[[Image:RoofProfil.png|600px]]
#:[[Image:RoofProfil.png|600px]]
# {{Emphasis|Remarque}}: pour une meilleure compréhension, veuillez consulter ce [https://www.youtube.com/watch?v=4Urwru71dVk vidéo youtube].
# {{Emphasis|Remarque}} : pour une meilleure compréhension, veuillez consulter cette [https://www.youtube.com/watch?v=4Urwru71dVk vidéo youtube].

<span id="Usage_(solid_base)"></span>
==Utilisation (base solide)==

Si votre toit a une forme complexe (par exemple, s'il contient des fenêtres en pente ou d'autres caractéristiques non standard), vous pouvez créer un objet solide personnalisé à l'aide d'autres ateliers de FreeCAD ([[Part_Workbench/fr|Part]], [[Sketcher_Workbench/fr|Sketcher]], etc.) Puis utilisez ce solide comme objet de base pour votre toit :

# Sélectionnez l'objet de base solide.
# Appuyez sur le bouton {{Button|[[Image:Arch_Roof.svg|16px]] [[Arch Roof/fr|Toit]]}}, ou appuyez sur les touches {{KEY|R}} puis {{KEY|F}}.

Pour un tel toit personnalisé, le volume de soustraction automatique (sous-volume) est simplement l'objet de base lui-même. Si vous [[Arch_Remove/fr|supprimer]] ce toit de vos murs, vous verrez que les murs ne sont pas soustraits correctement. Les parties de mur situées au-dessus du toit ne sont pas supprimées :

[[File:Arch_Roof_Subtract_Default.png|300px]]

Pour y remédier, vous devez définir votre propre sous-volume. Cette forme peut être créée en extrudant les faces inférieures du toit dans la direction Z :

[[File:Arch_Roof_Subvolume_Example.png|300px]]

Après cela :
* {{VersionMinus/fr|0.21}} : enlever cette forme des murs avec [[Arch_Remove/fr|Arch Soustraire]].
* {{Version/fr|0.22}} : pour remplacer le sous-volume par défaut, définissez la propriété {{PropertyData|Subvolume}} du toit à la forme créée et [[Arch_Remove/fr|supprimer]] le toit lui-même des murs.

[[File:Arch_Roof_Subtract_Subvolume.png|300px]]


==Options==
==Options==


* L'objet Roofs partage les propriétés communes et le comportement de tous les objet [[Arch Component/fr|Arch Composants]]
* L'objet Toit partage les propriétés communes et le comportement de tous les [[Arch_Component/fr|Arch Composants]].


<span id="Properties"></span>
==Propriétés==
==Propriétés==


<span id="Data"></span>
* {{PropertyData/fr|Angles}}: Liste les angles des pans de la toiture (un angle pour chaque pan) de la pente.
===Données===
* {{PropertyData/fr|Runs}}: Liste de la largeur du pan de la toiture (une pour chaque bord).
* {{PropertyData/fr|IdRel}}: Liste des relations Id de l'angle de pente du toit.
* {{PropertyData/fr|Thickness}}: Liste de l'épaisseur du pan de la toiture. (Une épaisseur pour chaque bord).
* {{PropertyData/fr|Overhang}}: Liste de la saillie du pan de la toiture (un surplomb pour chaque bord).
* {{PropertyData/fr|Face}}: Indice de la face de l'objet de base utilisée (Pas vraiment utilisé).


{{TitleProperty|Roof}}

* {{PropertyData|Angles|FloatList}} : liste des angles des segments du toit.
* {{PropertyData|Border Length|Length}} : longueur totale des bordures du toit.
* {{PropertyData|Face|Integer}} : numéro de la face de l'objet de base utilisé pour construire le toit (non utilisé).
* {{PropertyData|Flip|Bool}} : indique si la direction du toit doit être inversée.
* {{PropertyData|Heights|FloatList}} : liste des hauteurs calculées des segments du toit.
* {{PropertyData|Id Rel|IntegerList}} : liste des identifiants des profilés relatifs aux segments du toit.
* {{PropertyData|Overhang|FloatList}} : liste des débords des segments du toit.
* {{PropertyData|Ridge Length|Length}} : longueur totale des faîtages et des arêtiers du toit.
* {{PropertyData|Runs|FloatList}} : liste des projections horizontales des segments du toit.
* {{PropertyData|Subvolume|Link}} : volume à soustraire. S'il est spécifié, il est utilisé à la place du sous-volume généré automatiquement. {{Version/fr|0.22}}
* {{PropertyData|Thickness|FloatList}} : liste des épaisseurs des segments du toit.

<span id="Scripting"></span>
==Script==
==Script==
{{Emphasis|Voir aussi :}} [[Arch API/fr|Arch API]] et [[FreeCAD Scripting Basics/fr|FreeCAD Scripts de Base]].


{{Emphasis|Voir aussi :}} [[Arch_API/fr|Arch API]] et [[FreeCAD_Scripting_Basics/fr|Débuter avec les scripts FreeCAD]].
L'outil Toiture peut être utilisé dans les [[macros/fr|macros]] et à partir de la console [[Python/fr|Python]] en utilisant la fonction suivante:

L'outil Toit peut être utilisé dans des [[Macros/fr|macros]] et à partir de la console [[Python/fr|Python]] en utilisant la fonction suivante :

{{Code|code=
{{Code|code=
Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof")
Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof")
}}
}}


* Crée un objet {{incode|Roof}} (toiture) à partir du {{incode|baseobj}} donné qui peut être un fil fermé ou un objet solide.
* Crée un objet {{incode|Roof}} à partir de {{incode|baseobj}} donné, qui peut être une polyligne fermée ou un objet solide.
** Si {{incode|baseobj}} est un fil, vous pouvez fournir des listes pour les {{incode|angles}}, {{incode|run}}, {{incode|idrel}}, {{incode|thickness}} et {{incode|overhang}} pour chaque bord du câble définissant la forme du toit.
** Si {{incode|baseobj}} est une polyligne, vous pouvez fournir des listes de {{incode|angles}}, {{incode|run}}, {{incode|idrel}}, {{incode|thickness}} et {{incode|overhang}} pour chaque arête de la polyligne afin de définir la forme du toit.
** Les listes sont automatiquement complétées pour correspondre au nombre d'arêtes.
** Les listes sont automatiquement complétées pour correspondre au nombre d'arêtes de la polyligne.

Exemple :


Exemple:
{{Code|code=
{{Code|code=
import FreeCAD, Arch, Draft
import FreeCAD as App
import Arch, Draft


doc = App.newDocument()
Rect = Draft.makeRectangle(3000, 4000)
Roof = Arch.makeRoof(Rect, angles=[30.,])
FreeCAD.ActiveDocument.recompute()


rect = Draft.makeRectangle(3000, 4000)
p1 = FreeCAD.Vector(0, 0, 0)
doc.recompute()
p2 = FreeCAD.Vector(1000, 1000, 0)

p3 = FreeCAD.Vector(0, 2000, 0)
roof = Arch.makeRoof(rect, angles=[30.,])
Wire = Draft.makeWire([p1, p2, p3], closed=True)

Roof2 = Arch.makeRoof(Wire)
p1 = App.Vector(0, 0, 0)
FreeCAD.ActiveDocument.recompute()
p2 = App.Vector(1000, 1000, 0)
p3 = App.Vector(0, 2000, 0)

wire = Draft.make_wire([p1, p2, p3], closed=True)
doc.recompute()

roof1 = Arch.makeRoof(wire)

doc.recompute()
}}
}}



<div class="mw-translate-fuzzy">
{{Docnav/fr
{{Docnav/fr
|[[Arch_Grid/fr|Grille]]
|[[Arch_Window/fr|Fenêtre]]
|[[Arch_Space/fr|Espace]]
|[[Arch_CompAxis/fr|Outils pour les axes]]
|[[Arch_Module/fr|Atelier Arch]]
|[[Arch_Workbench/fr|Atelier Arch]]
|IconL=Arch_Grid.svg
|IconL=Arch_Window.svg
|IconR=Arch_CompAxis.png
|IconC=Workbench_Arch.svg
|IconR=Arch_Space.svg
|IconC=Workbench_Arch.svg
}}
}}
</div>


{{Arch Tools navi{{#translation:}}}}
{{Arch Tools navi{{#translation:}}}}

Latest revision as of 21:06, 4 March 2024

Arch Toit

Emplacement du menu
Arch → Toit
Ateliers
Arch
Raccourci par défaut
R F
Introduit dans la version
-
Voir aussi
Arch Structure, Arch Mur

Description

L'outil Arch Toit permet de créer un toit en pente à partir d'une polyligne sélectionnée. L'objet Toit créé est paramétrique et garde sa relation avec l'objet de base. Le principe est que chaque arête se voit attribuer un profilé de toit (pente, largeur, débord, épaisseur).

Remarque : cet outil est encore en développement et peut échouer avec des formes très complexes.

Vue d'en haut d'un modèle de bâtiment montrant le toit avec une certaine transparence

Utilisation

  1. Créez une polyligne fermée dans le sens anti-horaire et sélectionnez la.
  2. Cliquez sur le bouton Toit ou appuyez sur les touches R puis F.
  3. L'objet Toit par défaut a l'air étrange car l'outil manque de certaines informations nécessaires.
  4. Après la création du toit par défaut, double-cliquez sur l'objet dans la vue en arborescence pour accéder à son édition et ses propriétés. Les angles doivent être compris entre 0 et 90 degrés.
  5. Chaque ligne correspond à un pan du toit. Vous pouvez ainsi définir les propriétés que vous dédirez pour chaque pan du toit.
  6. Pour vous aider, vous pouvez régler Angle ou Course à 0 et définir un Identifiant rel., cela effectue un calcul automatique pour trouver les données relatives au Identifiant rel..
  7. Cela fonctionne ainsi :
    1. Si Angle = 0 et Course = 0 alors le profilé est identique au profilé relatif.
    2. Si Angle = 0 alors Angle est calculé de manière à ce que la hauteur soit identique au profilé relatif.
    3. Si Course = 0 alors Course est calculé de manière à ce que la hauteur soit identique à celle du profilé relatif.
    4. Enfin, fixez un angle à 90° pour faire un pignon.
  8. Remarque : pour une meilleure compréhension, veuillez consulter cette vidéo youtube.

Utilisation (base solide)

Si votre toit a une forme complexe (par exemple, s'il contient des fenêtres en pente ou d'autres caractéristiques non standard), vous pouvez créer un objet solide personnalisé à l'aide d'autres ateliers de FreeCAD (Part, Sketcher, etc.) Puis utilisez ce solide comme objet de base pour votre toit :

  1. Sélectionnez l'objet de base solide.
  2. Appuyez sur le bouton Toit, ou appuyez sur les touches R puis F.

Pour un tel toit personnalisé, le volume de soustraction automatique (sous-volume) est simplement l'objet de base lui-même. Si vous supprimer ce toit de vos murs, vous verrez que les murs ne sont pas soustraits correctement. Les parties de mur situées au-dessus du toit ne sont pas supprimées :

Pour y remédier, vous devez définir votre propre sous-volume. Cette forme peut être créée en extrudant les faces inférieures du toit dans la direction Z :

Après cela :

  • version 0.21 et précédentes : enlever cette forme des murs avec Arch Soustraire.
  • introduit dans la version 0.22 : pour remplacer le sous-volume par défaut, définissez la propriété DonnéesSubvolume du toit à la forme créée et supprimer le toit lui-même des murs.

Options

  • L'objet Toit partage les propriétés communes et le comportement de tous les Arch Composants.

Propriétés

Données

Roof

  • DonnéesAngles (FloatList) : liste des angles des segments du toit.
  • DonnéesBorder Length (Length) : longueur totale des bordures du toit.
  • DonnéesFace (Integer) : numéro de la face de l'objet de base utilisé pour construire le toit (non utilisé).
  • DonnéesFlip (Bool) : indique si la direction du toit doit être inversée.
  • DonnéesHeights (FloatList) : liste des hauteurs calculées des segments du toit.
  • DonnéesId Rel (IntegerList) : liste des identifiants des profilés relatifs aux segments du toit.
  • DonnéesOverhang (FloatList) : liste des débords des segments du toit.
  • DonnéesRidge Length (Length) : longueur totale des faîtages et des arêtiers du toit.
  • DonnéesRuns (FloatList) : liste des projections horizontales des segments du toit.
  • DonnéesSubvolume (Link) : volume à soustraire. S'il est spécifié, il est utilisé à la place du sous-volume généré automatiquement. introduit dans la version 0.22
  • DonnéesThickness (FloatList) : liste des épaisseurs des segments du toit.

Script

Voir aussi : Arch API et Débuter avec les scripts FreeCAD.

L'outil Toit peut être utilisé dans des macros et à partir de la console Python en utilisant la fonction suivante :

Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof")
  • Crée un objet Roof à partir de baseobj donné, qui peut être une polyligne fermée ou un objet solide.
    • Si baseobj est une polyligne, vous pouvez fournir des listes de angles, run, idrel, thickness et overhang pour chaque arête de la polyligne afin de définir la forme du toit.
    • Les listes sont automatiquement complétées pour correspondre au nombre d'arêtes de la polyligne.

Exemple :

import FreeCAD as App
import Arch, Draft

doc = App.newDocument()

rect = Draft.makeRectangle(3000, 4000)
doc.recompute()

roof = Arch.makeRoof(rect, angles=[30.,])

p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1000, 1000, 0)
p3 = App.Vector(0, 2000, 0)

wire = Draft.make_wire([p1, p2, p3], closed=True)
doc.recompute()

roof1 = Arch.makeRoof(wire)

doc.recompute()