Plugin for drawing canopies from a configuration file
-
Hello,
I am sharing this SketchUp plugin, which I developed for my own needs with the help of Copilot.It can be found on Github at(https://github.com/marco402/plugin-squetchup-ruby)
It allows you to draw canopies or other assemblies in SketchUp based on a configuration file.
Menu items (found under the SketchUp Extensions menu)
Generate framework from file
Generate roofing
Generate A4 plan (3 or 4 views)
Export A4 plan (JPG)
Generate garage roof
Export material inventory to console
Debug \ Select a line (useful for configuring cutters).
Debug \ Display hierarchy in console
The configuration file describes the components; the filename itself is used to name the generated SketchUp component.Roofing generation is separate from framework generation so that A4 plans can be created without the roof. A4 plan export is separate from A4 plan generation to allow for the addition of dimensions. The "Generate garage roof" function allows you to roof a rectangular building with a single or double pitch oriented along the Y-axis (see special cases). To generate A4 plans, search for "cartouche" (title block) in auvent.rb if necessary.
The components are:
-
POTEAU (POST);section x;section y;top;x;y;z;MAT=xxx
-
POUTRE (BEAM);section y;section z;x;y;z;length;y-direction;z-direction;MAT=xxx
-
CHEVRON (RAFTER);number;section x;section y;overhang;MAT=xxx (automatically placed on the outermost beams)
-
LITEAU (BATTEN);number;section y;section_z;MAT=xxx
-
CLINS (CLADDING);x;y;z;width x;height y;direction;orientation;spacing;thickness;delta_height;Id;MAT=xxx
-
PANNEAU (PANEL);x1;y1;z1;x2;y2;z2;thickness;option;type;MAT=xxx (option: CAP type=1:polycarbonate type=2:solid panel)
-
RIVE (EDGE);section x;section y;MAT=xxx
-
GOUTIERE (GUTTER);diameter;MAT=xxx
-
LAMBRIS (PANELING);x;y;z;width x;height y;direction;orientation;spacing;thickness;delta height;Id;MAT=xxx
-
SOL (FLOOR);section x;section y;height;x;y;z;MAT=xxx
-
XY;section x;section y;x1;y1;z1;x2;y2;z2;option;MAT=xxxdu clins en chêne
-
ANGLE_XZ;section x;section y;x;y;z;length;angle in degrees;MAT=xxxrive de toit
-
ANGLE_YZ;section x;section y;x;y;z;length;angle in degrees;high_point;MAT=xxx (if x,y,z is the high point: high_point = 1)
For panels that do not touch a rafter or for special cases,
the ID of the cutter and the ID of the panel to be processed must match
CUTTER;x1;y1;z1;x2;y2;z2;x3;y3;z3;x4;y4;z4;direction;Id(panel to cut) (4 points + 1 direction; removes the part towards the direction; object = siding, paneling...)
Constraints:
A minimum of the following is required: - 2 beams to support the rafters - 2 rafters to support the battens - 2 battens to support the roofing (see menu)Plugin composition in C:\Users\userNameAppData\Roaming\SketchUp\SketchUp 2017\SketchUp
\Plugins
- UI_auvent.rb
- auvent\auvent.rb
- auvent\auvent_constants.rb
- auvent\utils_auvent.rb
- auvent\PrintHierarchy.rb
- auvent\materialsAuvent
- woodAuvent.skm
- lambris.skm
- EffetTransparent.skm
- ...
A default template file \Templates AuventTemplate.skpA style file \Styles Plan mairie.style
A template file for using the "Generate garage roof" menu. \components\garage_sans_toit.skp
Special cases
This code includes specific handling for my awnings; the check is based on the component name.
These checks take the form:if(last_component_name=="AUVENT_GARAGE")
There are also configuration settings within the code that could easily be moved to the configuration file.
TheAuvent_garageinvolves a special case: unlike the "standard" scenario, the rafters run lengthwise, so they must be named "battens" (liteaux).
Additionally, the bargeboard is omitted, and the gutter is attached directly to the fiber-cement sheeting.
The "Generate garage roof" menu allows you to roof a rectangular building with a single- or double-pitch roof oriented along the Y-axis.
You need to place 2 battens (for a single-pitch roof) or 3 (for a double-pitch roof) to position the roof; if overhangs are required, modify the settings in the code.
Refer to thegarage_sans_toit.skpmodel.Marc
-
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register LoginAdvertisement