Arch Roof/it: Difference between revisions

From FreeCAD Documentation
No edit summary
(Updating to match new version of source page)
 
(26 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{Docnav/it|[[Arch_Grid/it|Griglia]]|[[Arch_Space/it|Spazio]]|[[Arch_Module/it|Arch]]|IconL=Arch_Grid.svg |IconC=Workbench_Arch.svg |IconR=Arch_Space.svg}}


{{Docnav
{{GuiCommand/it|Name=Arch Roof|Name/it=Tetto|Workbenches=[[Arch Module/it|Architettura]]|MenuLocation=Arch → Tetto|Shortcut={{KEY|R}} {{KEY|F}}|SeeAlso=[[Arch Structure/it|Struttura]], [[Arch Wall/it|Muro]]}}
|[[Arch_Window/it|Finestra]]
|[[Arch_CompAxis/it|Assi]]
|[[Arch_Workbench/it|Arch]]
|IconL=Arch_Window.svg
|IconR=Arch_CompAxis.png
|IconC=Workbench_Arch.svg
}}

{{GuiCommand/it
|Name=Arch Roof
|Name/it=Tetto
|MenuLocation=Arch → Tetto
|Workbenches=[[Arch_Workbench/it|Arch]]
|Shortcut={{KEY|R}} {{KEY|F}}
|SeeAlso=[[Arch_Structure/it|Struttura]], [[Arch_Wall/it|Muro]]
}}


<span id="Description"></span>
==Descrizione==
==Descrizione==


Lo strumento [[Image:Arch Roof.svg|16px]] Tetto consente di creare un tetto inclinato selezionando un contorno. L'oggetto Tetto creato in questo modo è parametrico e mantiene le sue relazioni con l'oggetto base. Si basa sul principio che ad ogni bordo viene assegnata una falda del tetto (con le caratteristiche di pendenza, larghezza coperta, sbalzo, spessore).
Lo strumento {{Button|[[Image:Arch Roof.svg|16px]] [[Arch_Roof/it|Tetto]]}} consente di creare un tetto inclinato selezionando un contorno. L'oggetto Tetto creato in questo modo è parametrico e mantiene le sue relazioni con l'oggetto base. Si basa sul principio che ad ogni bordo viene assegnata una falda del tetto (con le caratteristiche di pendenza, larghezza coperta, sbalzo, spessore).


'''Nota:''' Questo strumento è ancora in sviluppo e potrebbe non funzionare correttamente con le forme molto complesse.
'''Nota:''' Questo strumento è ancora in sviluppo e potrebbe non funzionare correttamente con le forme molto complesse.
Line 13: Line 29:
{{Caption|Vista dall'alto di un modello di edificio che mostra il tetto in trasparenza}}
{{Caption|Vista dall'alto di un modello di edificio che mostra il tetto in trasparenza}}


<span id="Usage_(wire_base)"></span>
<div class="mw-translate-fuzzy">
==Utilizzo==
==Utilizzo==
</div>


# Creare un contorno seguendo il senso antiorario e selezionarlo.
# Creare un contorno chiuso seguendo il senso antiorario e selezionarlo.
#:[[Image:CounterclockwiseWire.png|600px]]
#:[[Image:CounterclockwiseWire.png|600px]]
# Premere il pulsante {{Button|[[Image:Arch Roof.svg|16px]] [[Arch Roof/it|Tetto]]}}, o premere i tasti {{KEY|R}} e poi {{KEY|F}}.
# Premere il pulsante {{Button|[[Image:Arch Roof.svg|16px]] [[Arch Roof/it|Tetto]]}}, o premere i tasti {{KEY|R}} e poi {{KEY|F}}.
# Se l'oggetto tetto di default ha una forma strana è perché lo strumento non possiede tutte le informazioni necessarie.
# Se l'oggetto tetto di default ha una forma strana è perché lo strumento non possiede tutte le informazioni necessarie.
# Dopo aver creato il tetto di default, fare doppio clic sull'oggetto nella vista ad albero per accedere alla modifica di tutte le sue proprietà. Angolo deve essere compreso tra 0 e 90.
# Dopo aver creato il tetto di default, fare doppio clic sull'oggetto nella [[Tree_view/it|vista ad albero]] per accedere alla modifica di tutte le sue proprietà. Angolo deve essere compreso tra 0 e 90.
#:[[File:RoofTable.png]]
#:[[File:RoofTable.png]]
# Ogni riga corrisponde ad una falda del tetto. Quindi è possibile impostare le proprietà desiderate per ogni falda del tetto.
# Ogni riga corrisponde ad una falda del tetto. Quindi è possibile impostare le proprietà desiderate per ogni falda del tetto.
Line 31: Line 50:
# {{Emphasis|Nota}}: per una migliore comprensione, vedere questo [https://www.youtube.com/watch?v=4Urwru71dVk youtube clip].
# {{Emphasis|Nota}}: per una migliore comprensione, vedere questo [https://www.youtube.com/watch?v=4Urwru71dVk youtube clip].


==Usage (solid base)==

If your roof has a complex shape (e.g. contains pitched windows or other non-standard features) you can create a custom solid object using various other FreeCAD workbenches ([[Part_Workbench|Part]], [[Sketcher_Workbench|Sketcher]] etc.). And then use this solid as the {{PropertyData|Base}} object of your roof:

# Select the solid base object.
# Press the {{Button|[[Image:Arch_Roof.svg|16px]] [[Arch Roof|Arch Roof]]}} button, or press {{KEY|R}} then {{KEY|F}} keys.

==Subtracting a roof==

Roofs have an automatically generated subtraction volume ({{Version|1.0}} for roofs with a solid base). When a roof is [[Arch_Remove|removed]] from the walls of a building, both the roof itself as well as everything above it is subtracted from the walls.

{{Version|1.0}}: It is possible to override the automatic subtraction volume by setting the {{PropertyData|Subvolume}} property of the roof to a custom solid object.

[[File:Arch_Roof_Subtract_Default.png|x150px]] [[File:Arch_Roof_Subtract_Subvolume.png|x150px]] [[File:Arch_Roof_Subvolume_Example.png|x150px]]
{{Caption|Solid-based roof before (1st image) and after (2nd image) [[Arch_Remove|removing]] it from walls.<br>
The 3rd image shows the generated subtraction volume.}}

<span id="Options"></span>
==Opzioni==
==Opzioni==


* Gli elementi Tetto condividono le proprietà e i comportamenti comuni di tutti i [[Arch Component/it|Componenti Arch]]
* Gli elementi Tetto condividono le proprietà e i comportamenti comuni di tutti i [[Arch_Component/it|Componenti Arch]]


<span id="Properties"></span>
== Proprietà ==
== Proprietà ==


<span id="Data"></span>
* {{PropertyData/it|Angles}}: Angolo di pendenza di ogni falda (un angolo per ciascun lato del contorno di base).
===Dati===
* {{PropertyData/it|Runs}}: Proiezione orizzontale della lunghezza della falda (un Run per ciascun lato del contorno di base).
* {{PropertyData/it|IdRel}}: Elenco delle relazioni Id dell'angolo di inclinazione del tetto.
* {{PropertyData/it|Thickness}}: Spessore della falda (uno spessore per ciascun lato del contorno di base).
* {{PropertyData/it|Overhang}}: Sbalzo della falda, in proiezione orizzontale (uno sbalzo per ciascun lato del contorno di base).
* {{PropertyData/it|Face}}: L'indice della faccia dell'oggetto di base da utilizzare (non ancora usato)


{{TitleProperty|Roof}}
== Script ==

{{Emphasis|Vedere anche:}} [[Arch API/it|Arch API]] e [[FreeCAD Scripting Basics/it|Nozioni di base sugli script di FreeCAD]].
<div class="mw-translate-fuzzy">
* {{PropertyData|Angles|FloatList}}: L'elenco degli angoli dei segmenti del tetto.
* {{PropertyData|Border Length|Length}}: La lunghezza totale dei bordi del tetto.
* {{PropertyData|Face|Integer}}: Il numero di faccia dell'oggetto base utilizzato per costruire il tetto (non utilizzato).
* {{PropertyData|Flip|Bool}}: Specifica se la direzione del tetto deve essere invertita.
* {{PropertyData|Heights|FloatList}}: L'elenco delle altezze calcolate dei segmenti del tetto.
* {{PropertyData|Id Rel|IntegerList}}: L'elenco degli ID dei relativi profili dei segmenti di tetto.
* {{PropertyData|Overhang|FloatList}}: L'elenco delle sporgenze dei segmenti del tetto.
* {{PropertyData|Ridge Length|Length}}: La lunghezza totale delle creste e dei fianchi del tetto.
* {{PropertyData|Runs|FloatList}}: L'elenco delle proiezioni della lunghezza orizzontale dei segmenti del tetto.
* {{PropertyData|Thickness|FloatList}}: L'elenco degli spessori dei segmenti del tetto.
</div>

<span id="Scripting"></span>
==Script==

{{Emphasis|Vedere anche:}} [[Arch_API/it|API di Arch]] e [[FreeCAD_Scripting_Basics/it|Nozioni di base sugli script di FreeCAD]].

Lo strumento Tetto può essere utilizzato nelle [[Macros/it|macro]] e dalla console [[Python/it|Python]] utilizzando la seguente funzione:


Lo strumento Tetto può essere utilizzato nelle [[macros/it|macro]] e dalla console [[Python/it|Python]] utilizzando la seguente funzione:
{{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")
Line 57: Line 109:


Esempio:
Esempio:

{{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()
}}
}}



{{Docnav/it|[[Arch_Grid/it|Griglia]]|[[Arch_Space/it|Spazio]]|[[Arch_Module/it|Arch]]|IconL=Arch_Grid.svg |IconC=Workbench_Arch.svg |IconR=Arch_Space.svg}}
{{Docnav
|[[Arch_Window/it|Finestra]]
|[[Arch_CompAxis/it|Assi]]
|[[Arch_Workbench/it|Arch]]
|IconL=Arch_Window.svg
|IconR=Arch_CompAxis.png
|IconC=Workbench_Arch.svg
}}


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

Latest revision as of 09:47, 21 April 2024

Tetto

Posizione nel menu
Arch → Tetto
Ambiente
Arch
Avvio veloce
R F
Introdotto nella versione
-
Vedere anche
Struttura, Muro

Descrizione

Lo strumento Tetto consente di creare un tetto inclinato selezionando un contorno. L'oggetto Tetto creato in questo modo è parametrico e mantiene le sue relazioni con l'oggetto base. Si basa sul principio che ad ogni bordo viene assegnata una falda del tetto (con le caratteristiche di pendenza, larghezza coperta, sbalzo, spessore).

Nota: Questo strumento è ancora in sviluppo e potrebbe non funzionare correttamente con le forme molto complesse.

Vista dall'alto di un modello di edificio che mostra il tetto in trasparenza

Utilizzo

  1. Creare un contorno chiuso seguendo il senso antiorario e selezionarlo.
  2. Premere il pulsante Tetto, o premere i tasti R e poi F.
  3. Se l'oggetto tetto di default ha una forma strana è perché lo strumento non possiede tutte le informazioni necessarie.
  4. Dopo aver creato il tetto di default, fare doppio clic sull'oggetto nella vista ad albero per accedere alla modifica di tutte le sue proprietà. Angolo deve essere compreso tra 0 e 90.
  5. Ogni riga corrisponde ad una falda del tetto. Quindi è possibile impostare le proprietà desiderate per ogni falda del tetto.
  6. Per aiutarvi, è possibile impostare Angle o Run a 0 e definire un Relative Id, questo rende automatici i calcoli per trovare i dati relativi a Relative Id.
  7. Funziona in questo modo:
    1. Se Angle = 0 e Run = 0 allora il profilo è identico al profilo relativo.
    2. Se Angle = 0 allora Angle viene calcolato in modo che l'altezza sia la stessa del profilo relativo.
    3. Se Run = 0 allora Run è calcolato in modo che l'altezza sia la stessa del profilo relativo.
  8. Alla fine, impostare un angolo di 90° per creare un frontone, una parete di tamponamento.
  9. Nota: per una migliore comprensione, vedere questo youtube clip.

Usage (solid base)

If your roof has a complex shape (e.g. contains pitched windows or other non-standard features) you can create a custom solid object using various other FreeCAD workbenches (Part, Sketcher etc.). And then use this solid as the DatiBase object of your roof:

  1. Select the solid base object.
  2. Press the Arch Roof button, or press R then F keys.

Subtracting a roof

Roofs have an automatically generated subtraction volume (introduced in version 1.0 for roofs with a solid base). When a roof is removed from the walls of a building, both the roof itself as well as everything above it is subtracted from the walls.

introduced in version 1.0: It is possible to override the automatic subtraction volume by setting the DatiSubvolume property of the roof to a custom solid object.

Solid-based roof before (1st image) and after (2nd image) removing it from walls.
The 3rd image shows the generated subtraction volume.

Opzioni

  • Gli elementi Tetto condividono le proprietà e i comportamenti comuni di tutti i Componenti Arch

Proprietà

Dati

Roof

  • DatiAngles (FloatList): L'elenco degli angoli dei segmenti del tetto.
  • DatiBorder Length (Length): La lunghezza totale dei bordi del tetto.
  • DatiFace (Integer): Il numero di faccia dell'oggetto base utilizzato per costruire il tetto (non utilizzato).
  • DatiFlip (Bool): Specifica se la direzione del tetto deve essere invertita.
  • DatiHeights (FloatList): L'elenco delle altezze calcolate dei segmenti del tetto.
  • DatiId Rel (IntegerList): L'elenco degli ID dei relativi profili dei segmenti di tetto.
  • DatiOverhang (FloatList): L'elenco delle sporgenze dei segmenti del tetto.
  • DatiRidge Length (Length): La lunghezza totale delle creste e dei fianchi del tetto.
  • DatiRuns (FloatList): L'elenco delle proiezioni della lunghezza orizzontale dei segmenti del tetto.
  • DatiThickness (FloatList): L'elenco degli spessori dei segmenti del tetto.

Script

Vedere anche: API di Arch e Nozioni di base sugli script di FreeCAD.

Lo strumento Tetto può essere utilizzato nelle macro e dalla console Python utilizzando la seguente funzione:

Roof = makeRoof(baseobj=None, facenr=0, angles=[45.,], run=[], idrel=[0,], thickness=[50.,], overhang=[100.,], name="Roof")
  • Crea un oggetto Roof dal baseobj dato, che può essere un contorno chiuso o un oggetto solido.
    • Se baseobj è un contorno, è possibile fornire elenchi per angles, run, idrel, thickness, e overhang, per ciascun bordo del contorno per definire la forma del tetto.
    • Gli elenchi vengono completati automaticamente per corrispondere al numero di spigoli del contorno.

Esempio:

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()