Latest revision |
Your text |
Line 1: |
Line 1: |
| {{BlenderBIM_Addon_Documentation}} | | {{BlenderBIM_Addon_Documentation}} |
| | | |
| + | ==Critical Funding== |
| + | ''Please consider funding [https://www.bountysource.com/issues/95048565-make-construction-drawing-generation-like-really-really-awesome this] Bountysource in order to provide the developer(s) with the much needed funding to help improve these 2D documentation features in Blender.'' |
| | | |
| ==2D Construction Documentation== | | ==2D Construction Documentation== |
Line 31: |
Line 33: |
| The symbols and hatches referenced by the CSS file are standard SVG files stored in <code>PROJECT_DATA_DIRECTORY⁄templates⁄</code> | | The symbols and hatches referenced by the CSS file are standard SVG files stored in <code>PROJECT_DATA_DIRECTORY⁄templates⁄</code> |
| | | |
− | The predefined material classes are assigned automatically to all objects, based on the name of their Blender material. As an example, when no material is defined, the section hatch in SVG is the default black. By assigning a material named named <code>brick</code> (case sensitive!) to an object, its resulting hatch in SVG changes in two parallel diagonal lines. Note that it is's blender material name if your object's material is IfcMaterial. If it's not IfcMaterial (for example if it's IfcMaterialLayerSet) then <code>brick</code> should be IfcMaterialLayerSet's name. | + | The predefined material classes are assigned automatically to all objects, based on the name of their Blender material. As an example, when no material is defined, the section hatch in SVG is the default black. By assigning a material named named "brick" (case sensitive!) to an object, its resulting hatch in SVG changes in two parallel diagonal lines. |
| | | |
− | There are more patterns for materials you can find in [https://github.com/IfcOpenShell/IfcOpenShell/blob/v0.7.0/src/blenderbim/blenderbim/bim/data/assets/patterns.svg?short_path=11be0ee blenderbim\bim\data\assets\patterns.svg] that comes with BlenderBIM. Patterns like <code>crosshatch1</code>, <code>crosshatch2</code>, <code>crosshatch3</code>, <code>sand</code>, <code>grass</code>, etc. You can also define your own patterns in the similar manner.
| + | [[File:BlenderBIM_SVGHatch_01.jpg|frame|center|Left: object without material, Right: object with Blender material named "brick".]] |
− | [[File:Svg brick hatch pattern.jpg|frame|center|Left: object without material, Right: object with Blender material named "brick".]] | |
| | | |
| ==Adding annotation== | | ==Adding annotation== |
Line 40: |
Line 41: |
| | | |
| Currently recognized objects with their respective necessary names are: | | Currently recognized objects with their respective necessary names are: |
− |
| |
− |
| |
| *Curve - IfcAnnotation/Dimension.Number - as a dimension | | *Curve - IfcAnnotation/Dimension.Number - as a dimension |
| *Curve - IfcAnnotation/Equal.Number - as a dimension with the letters EQ instead of its value | | *Curve - IfcAnnotation/Equal.Number - as a dimension with the letters EQ instead of its value |
Line 50: |
Line 49: |
| *Mesh - IfcAnnotation/Hidden.Number - as a dashed curve | | *Mesh - IfcAnnotation/Hidden.Number - as a dashed curve |
| *Text - IfcAnnotation/Text.Number - as a text field | | *Text - IfcAnnotation/Text.Number - as a text field |
− | * Curve - IfcAnnotation/Fall - indicate slope on a ramp, for example
| |
| | | |
| The plug-in provides commands to create the correctly named dummy object in the Sidebar ("N" panel) > BlenderBIM > Annotation. | | The plug-in provides commands to create the correctly named dummy object in the Sidebar ("N" panel) > BlenderBIM > Annotation. |
| [[File:BlenderBIM_Annotation_01.JPG|frame|center|Dummy annotation objects]] | | [[File:BlenderBIM_Annotation_01.JPG|frame|center|Dummy annotation objects]] |
− |
| |
− | ==Dimensions==
| |
− |
| |
− | * Override a dimension
| |
− | ** Set the Description attribute of that dimension. This means that that dimension needs to be separate from other dimensions.
| |
− | ** Add BBIM_Dimension pset and enable "DescriptionOnly". Otherwise the description is shown in addition, instead of replacing the dimension.
| |
− |
| |
− | * Show ticks on dimension strings in Blender viewport [[File:Dimension.png]]
| |
− | ** EPset_Annotation.Classes = oblique
| |
− | *** [[File:Ticks.png]]
| |
| | | |
| ==Intelligent Tagging of Objects== | | ==Intelligent Tagging of Objects== |
| | | |
| Go [[BlenderBIM Add-on Adding labels linked to properties and quantities|here]] for adding labels, like wall/window tags, that are intelligently linked to the object's data. | | Go [[BlenderBIM Add-on Adding labels linked to properties and quantities|here]] for adding labels, like wall/window tags, that are intelligently linked to the object's data. |
− |
| |
− | [[File:Bulk tag location.png|thumb]]
| |
− |
| |
− | To tag objects:
| |
− | * select Annotation Tool choose annotation type
| |
− | * select objects to tag
| |
− | * use "Bulk Tag"
| |
− |
| |
− |
| |
− |
| |
− | If you moved the tagged objects or changed them (for example stair is wider now) you can readjust tags by selection annotations and using "Readjust" in Annotation Tool.
| |
− |
| |
− | Currently there are 2 ways of tagging:
| |
− | # Text tagging - will create IfcAnnotation of type Text at the center of the object then you can refer to the tagged object properties in the text. [[BlenderBIM_Add-on_Adding_labels_linked_to_properties_and_quantities#Adding_a_text_with_a_variable|More]].
| |
− | # Stair Arrow tagging - will create stair arrow by the stair X axis going until the last stair step. [https://i.imgur.com/xFHtY73.png Example].
| |
− |
| |
− | ==Drawing Styles and Filters==
| |
− |
| |
− | If you select the camera object of the drawing, and go to EPset_Drawing property you can set the following property values
| |
− |
| |
− | * Metadata:
| |
− | ** For example add property you'd like to be exported to SVG class. Examples
| |
− | *** <code>Pset_WallCommon.Status</code>
| |
− | *** <code>r"Pset_.*Common"</code>
| |
− | **** Will attach a class like the following to the SVG object <code>rPsetCommon-StatusEXISTINGDEMOLISHid68585</code>
| |
− | ***** Example of how a css regular expression to style the svg <code>[class*="PsetCommon-StatusEXISTINGDEMOLISH"] { fill: url(#demolish); stroke: red; stroke-dasharray: 2, 1; }</code>
| |
− | ''NOTE: currently attaching metadata is not supported for 2d representations and it's not possible to create custom style for them. See [https://community.osarch.org/discussion/comment/16117/#Comment_16117 example], [https://github.com/IfcOpenShell/IfcOpenShell/issues/3330 related issue to track progress]''
| |
− | * Include and Exclude
| |
− | ** In the Include and Exclude property you can indicate what to include/exclude from the drawing. A few examples.
| |
− | *** Exclude:
| |
− | **** <code>IfcElement , /Pset_.*Common/.Status=DEMOLISH</code>
| |
− | **** <code>IfcElement , /Pset_.*Common/.Status=NEW</code>
| |
− | **** <code>IfcElement , EPset_Status.Status=DEMOLISH</code>
| |
− | *** Include:
| |
− | **** <code>IfcElement , /Pset_.*Common/.Status=DEMOLISH</code> only show demo.
| |
− | **** <code>IfcElement , /Pset_.*Common/.Status=NEW</code> only show new.
| |
− | * Paths to...
| |
− | ** Stylesheet:
| |
− | *** defaults to: <code>drawings/assets/default.css</code>
| |
− | ** Markers:
| |
− | *** defaults to: <code>drawings/assets/markers.svg</code>
| |
− | ** Symbols:
| |
− | *** defaults to: <code>drawings/assets/symbols.svg</code>
| |
− | ** Patterns:
| |
− | *** defaults to: <code>drawings/assets/patterns.svg</code>
| |
− | ** ShadingStyles:
| |
− | *** defaults to: <code>drawings/assets/shading_styles.json</code>
| |
− |
| |
− | * Dimension Rounding
| |
− | ** MetricPrecision:
| |
− | ** ImperialPrecision:
| |
− | *** Example: <code>1/2</code> rounds to the nearest 1/2"
| |
− | * JoinCriteria
| |
− | ** If no JoinCriteria is given, it defaults to unjoin the following things <code>["class", "material.Name", 'r"Pset.*Common"."Status"']</code>. If you want to unjoin just <code>material.Name</code>, for example, set JoinCriteria value to: <code>material.Name</code>
| |
− |
| |
− | ==Text Styling==
| |
− |
| |
− | * Background for Ifc Text annotations in SVG
| |
− | To add fill background of Ifc Text annotation with white color you can add "fill-bg" class to EPset_Annotation.
| |
− | [[File:Text fill-bg class tag.png|frame|center|Top: in Blender setup, Bottom: the result in svg]]
| |
− |
| |
| | | |
| ==Exporting a view== | | ==Exporting a view== |
Line 138: |
Line 65: |
| [[File:BlenderBIM ViewExportOptions 01.JPG|frame|center|View export options]] | | [[File:BlenderBIM ViewExportOptions 01.JPG|frame|center|View export options]] |
| | | |
− | ==Creating schedules and adding them to a sheet==
| |
| | | |
− | video: https://matrix.to/#/!WKUQKbTubvxEQJxrIY:matrix.org/$ESx7ajDMO8ZBQahCuD63p0UXn38TCz7cfK4ipq0bgcw?via=matrix.org
| + | = Settings in Blender Preferences - Add-ons= |
− | | + | * SVG Command: |
− | Using IFCCSV
| + | ** Windows Example: <code> [[[['C:\\Program Files\\Inkscape\\bin\\inkscape.exe', path]]]] </code> |
− | https://wiki.osarch.org/index.php?title=BlenderBIM_Add-on/BlenderBIM_IFCCSV
| |
− | | |
− | ==Background SVG==
| |
− | Background SVG's: https://github.com/IfcOpenShell/IfcOpenShell/issues/3002#issuecomment-1518668495
| |
| | | |
− | ==Copying Annotation from one drawing to another==
| |
− | https://github.com/IfcOpenShell/IfcOpenShell/issues/2966#issuecomment-1606914228
| |
| | | |
− | = Settings in Blender Preferences - Add-ons=
| |
− | * SVG Command:
| |
− | ** Windows Examples:
| |
− | *** <code> [[[["C:/Program Files/Google/Chrome/Application/chrome.exe", "path"]]]] </code>
| |
− | *** <code> [[[["C:/Program Files/Inkscape/bin/inkscape.exe", "path"]]]] </code>
| |
| | | |
| = See also= | | = See also= |
| * [[Getting_started_with_2D_CAD_drafting]] | | * [[Getting_started_with_2D_CAD_drafting]] |
− |
| |
− | =Updating from older Drawing System=
| |
− | https://github.com/IfcOpenShell/IfcOpenShell/issues/2978#issuecomment-1510374693
| |
| | | |
| =External Resources= | | =External Resources= |