Arch Profile: Difference between revisions
m (→Scripting) |
Renatorivo (talk | contribs) (Marked this version for translation) |
||
Line 2: | Line 2: | ||
<translate> |
<translate> |
||
<!--T:1--> |
|||
{{GuiCommand |
{{GuiCommand |
||
|Name=Arch Profile |
|Name=Arch Profile |
||
Line 9: | Line 10: | ||
}} |
}} |
||
==Description== |
==Description== <!--T:2--> |
||
<!--T:3--> |
|||
The Profile tool builds a parametric 2D profile object. This object can then be used as a base in different other tools that perform extrusions, such as [[Arch Frame]], [[Arch CurtainWall]] or [[Part Extrude]]. |
The Profile tool builds a parametric 2D profile object. This object can then be used as a base in different other tools that perform extrusions, such as [[Arch Frame]], [[Arch CurtainWall]] or [[Part Extrude]]. |
||
<!--T:4--> |
|||
See the [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/Presets/profiles.csv list of available presets]. |
See the [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/Presets/profiles.csv list of available presets]. |
||
<!--T:5--> |
|||
The profile tool is also integrated to the [[Arch Structure]] tool, all preset profiles are also available there. |
The profile tool is also integrated to the [[Arch Structure]] tool, all preset profiles are also available there. |
||
==Usage== |
==Usage== <!--T:6--> |
||
<!--T:7--> |
|||
# Press the {{Button|[[Image:Arch Profile.svg|16px]] [[Arch Profile]]}} button |
# Press the {{Button|[[Image:Arch Profile.svg|16px]] [[Arch Profile]]}} button |
||
# Select a preset in the tool task panel |
# Select a preset in the tool task panel |
||
# Click a point in the 3D view to place the profile |
# Click a point in the 3D view to place the profile |
||
==Properties== |
==Properties== <!--T:8--> |
||
=== Data === |
=== Data === <!--T:9--> |
||
<!--T:10--> |
|||
* {{PropertyData|Height}}: The overall height of the profile |
* {{PropertyData|Height}}: The overall height of the profile |
||
* {{PropertyData|Width}}: The overall width of the profile |
* {{PropertyData|Width}}: The overall width of the profile |
||
Line 34: | Line 40: | ||
* {{PropertyData|Flange Thickness}}: The thickness of the profile flange (H and I profiles only) |
* {{PropertyData|Flange Thickness}}: The thickness of the profile flange (H and I profiles only) |
||
==Adding custom profiles== |
==Adding custom profiles== <!--T:11--> |
||
<!--T:12--> |
|||
An additional csv file can be created by the user, containing custom profile definitions. It must be named profiles.csv, and placed in $FREECAD_USER_DIR/Mod/Arch. Use your FreeCAD user folder in place of $FREECAD_USER_DIR. Your FreeCAD user folder location can be obtained by typing in the FreeCAD Python console: |
An additional csv file can be created by the user, containing custom profile definitions. It must be named profiles.csv, and placed in $FREECAD_USER_DIR/Mod/Arch. Use your FreeCAD user folder in place of $FREECAD_USER_DIR. Your FreeCAD user folder location can be obtained by typing in the FreeCAD Python console: |
||
<!--T:13--> |
|||
FreeCAD.getUserAppDataDir() |
|||
<!--T:14--> |
|||
The contents of your custom profiles.csv file must be modeled upon the same rules as the [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/Presets/profiles.csv built-in profiles.csv file]: |
The contents of your custom profiles.csv file must be modeled upon the same rules as the [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/Presets/profiles.csv built-in profiles.csv file]: |
||
<!--T:15--> |
|||
The CSV file must contain one line per available profile, formatted as follows: |
The CSV file must contain one line per available profile, formatted as follows: |
||
<!--T:16--> |
|||
* For C profiles: Category, Name, Class, Diameter, Thickness |
* For C profiles: Category, Name, Class, Diameter, Thickness |
||
* For H and U profiles: Category, Name, Class, Width, Height, Web thickness, Flange thickness |
* For H and U profiles: Category, Name, Class, Width, Height, Web thickness, Flange thickness |
||
Line 49: | Line 60: | ||
* For RH profiles: Category, Name, Class, Width, Height, Thickness |
* For RH profiles: Category, Name, Class, Width, Height, Thickness |
||
<!--T:17--> |
|||
All measures must be in millimeters. Possible profile classes are: |
All measures must be in millimeters. Possible profile classes are: |
||
<!--T:18--> |
|||
* C: Circular tube |
* C: Circular tube |
||
* H: H- or I-profile |
* H: H- or I-profile |
||
Line 57: | Line 70: | ||
* U: U-profile |
* U: U-profile |
||
<!--T:19--> |
|||
Additional profile types can be created, but a corresponding class must be created in [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/ArchProfile.py ArchProfile.py] |
Additional profile types can be created, but a corresponding class must be created in [https://github.com/FreeCAD/FreeCAD/blob/master/src/Mod/Arch/ArchProfile.py ArchProfile.py] |
||
==Scripting== |
==Scripting== <!--T:20--> |
||
<!--T:21--> |
|||
The Profile tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function: |
The Profile tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using the following function: |
||
Line 69: | Line 84: | ||
<translate> |
<translate> |
||
<!--T:22--> |
|||
Where profile_list contains the different elements of a list in the csv file. |
Where profile_list contains the different elements of a list in the csv file. |
||
<!--T:23--> |
|||
Example: |
Example: |
||
Line 80: | Line 97: | ||
<translate> |
<translate> |
||
<!--T:24--> |
|||
Where the first element of the list is an order number that is not used yet. |
Where the first element of the list is an order number that is not used yet. |
||
Revision as of 09:02, 12 June 2020
Arch Profile |
Menu location |
---|
Arch → Profile |
Workbenches |
Arch |
Default shortcut |
None |
Introduced in version |
0.19 |
See also |
None |
Description
The Profile tool builds a parametric 2D profile object. This object can then be used as a base in different other tools that perform extrusions, such as Arch Frame, Arch CurtainWall or Part Extrude.
See the list of available presets.
The profile tool is also integrated to the Arch Structure tool, all preset profiles are also available there.
Usage
- Press the Arch Profile button
- Select a preset in the tool task panel
- Click a point in the 3D view to place the profile
Properties
Data
- DataHeight: The overall height of the profile
- DataWidth: The overall width of the profile
- DataDiameter: The diameter of the profile (circular profiles only)
- DataThickness: The thickness of the tube wall (circular and rectangular hollow profiles only)
- DataWeb Thickness: The thickness of the profile web (H and I profiles only)
- DataFlange Thickness: The thickness of the profile flange (H and I profiles only)
Adding custom profiles
An additional csv file can be created by the user, containing custom profile definitions. It must be named profiles.csv, and placed in $FREECAD_USER_DIR/Mod/Arch. Use your FreeCAD user folder in place of $FREECAD_USER_DIR. Your FreeCAD user folder location can be obtained by typing in the FreeCAD Python console:
FreeCAD.getUserAppDataDir()
The contents of your custom profiles.csv file must be modeled upon the same rules as the built-in profiles.csv file:
The CSV file must contain one line per available profile, formatted as follows:
- For C profiles: Category, Name, Class, Diameter, Thickness
- For H and U profiles: Category, Name, Class, Width, Height, Web thickness, Flange thickness
- For R profiles: Category, Name, Class, Width, Height
- For RH profiles: Category, Name, Class, Width, Height, Thickness
All measures must be in millimeters. Possible profile classes are:
- C: Circular tube
- H: H- or I-profile
- R: Rectangular
- RH: Rectangular hollow
- U: U-profile
Additional profile types can be created, but a corresponding class must be created in ArchProfile.py
Scripting
The Profile tool can be used in macros and from the Python console by using the following function:
profile = makeProfile(profile_list)
Where profile_list contains the different elements of a list in the csv file.
Example:
import Arch
Arch.makeProfile([0,'REC','REC100x100','R',100,100])
Where the first element of the list is an order number that is not used yet.
- Elements: Wall, Structure, Curtain Wall, Window, Roof, Space, Stairs, Equipment, Frame, Fence, Truss, Profile, Pipe, Pipe Connector
- Reinforcements: Straight Rebar, U-Shape Rebar, L-Shape Rebar, Stirrup, Bent-Shape Rebar, Helical Rebar, Column Reinforcement, Beam Reinforcement, Slab Reinforcement, Footing Reinforcement, Custom Rebar
- Panels: Panel, Panel Cut, Panel Sheet, Nest
- Materials: Material, Multi-Material
- Organization: Building Part, Project, Site, Building, Level, External reference, Section Plane, Schedule
- Axes: Axis, Axes system, Grid
- Modification: Cut with plane, Add component, Remove component, Survey
- Utilities: Component, Clone component, Split Mesh, Mesh to Shape, Select non-manifold meshes, Remove Shape from Arch, Close Holes, Merge Walls, Check, Toggle IFC Brep flag, 3 Views from mesh, Create IFC spreadsheet, Toggle Subcomponents
- Additional: Preferences, Import Export Preferences (IFC, DAE, OBJ, JSON, 3DS, SHP), IfcOpenShell, IfcPlusPlus, Arch API
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Arch, Assembly, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub