I use AutoCAD LT primarily, and with that am handy with the dynamic blocks in there. I’ve come across to SketchUp having some experience with it, but not with dynamic components.
The aim in the attached file is to be able to resize the roof lantern, and see the components resize accordingly whilst maintaining the same 25 degree pitch. Along with this, also to be able to choose the number of glazebars along the ridge and have them evenly spread along the ridge between the two end glazebars.
So far the file has a number of DCs, with each corner/hip being it’s own DC so that if one increased others will. My idea, with almost no knowledge of SketchUp DC building, is that the hip triangle could be the basis of the hip component increasing, so that as the overall eaves rectangle increases, the hip triangle follows, and with it all of the components extend out at the bottom. I guess whereby increasing the eaves rectangle width would see the hip triangle extend outwards, and increasing the eaves rectangle length will see the ridge length increase.
I hope I’m making sense anyway, and my question is - how easy is it to put this into practice? Can anyone point me in the direction of handy guides to learning the math/scripts required, or help out in any other way at all?
Eventually I’d like to add in the option to show a roof vent component along each side of the ridge, as well as turn off the finial decoration for example, but for now getting the roof lantern to react as hoped is my main requirement.
Any help or pointers appreciated.
Rooflight 25deg.skp (5.3 MB)
Nice model and yes this is possible. I would consider this an advanced project involving many child components and a variety of DC concepts. I suggest starting with some simpler DCs to build your understanding of them. There is a ton of content here in the forum regarding DCs you can search and read, and here is a link to the SketchUp DC how to page: Making a Dynamic Component | SketchUp Help
The folk around here are generally happy to help but you need to at least make an attempt at creating this on your own to generate some interest from the community I think.
@CMitchell90 Here is a link to info on Dynamic Components:
Repeating a sub-component within a dynamic component (2 Dimensions) | SketchUp Help
This is your rooflight adjusted along the lines of the link above.
Nesting the glazing into the Ridge_Main would probably get those to copy along with the ridge with a little fudging. The sizes are off, but something like this:
SkyLight.skp (1.1 MB)
The glazing parts might be adjustable using LenX or LenY but may take some work in the form of moving the component axes up towards the ridge line and increasing their length away from there. That should (not sure) keep the angle for you.
This is a skeleton roof frame. You can use as the guide for the construction, probably the centre top of rafter / hips that hold the glass. The maths is simple trigonometry tan(ang) = rise/run.
edit, missed a comma
roof lines.skp (61.7 KB)
of course you would have become acquainted with
sorry James attach reply to you instead of C Mitchell, you would be quite acquainted, although like us all, still figuring smart ways of using it
Just a quick thought: I was remined by some other posts that I may have created a problem for the OP by not removing one of his DCs from the .skp file that I attached. @CMitchell90 If you bring your DCs into my file or insert my DC into your file you may have trouble if you don’t make them unique. Particularly in the children, I didn’t make unique or rename anything (if I recall). The problem is that attributes can be overwritten if you have two versions. Just a heads up.
This is perfect for a starting point, and a great help in getting my head around the basics of what is needed to make it work. Thanks!
I’ll look at the suggested reading to get myself familiar with that side of things, and then hopefully work on adding the actual parts to the skeleton and see if I can get them all working as hoped.
Thanks all so far for your various tips and help. It’s given me some interesting things to consider and look into further. I did feel it was more advanced than my beginner knowledge, but doesn’t look too complex. Frustratingly things have picked back up at work which has put this on the back burner for the next few weeks.
I did make some progress of my own after posting the initial question, with regards to the ridge. Using a fence panel tutorial I was able to duplicate the ridge glazebars as I increased the length, distributing them evenly depending on the spacing I chose - however at first this would stretch certain items within the glazing panel so I had to do some tweaking but got there in the end.
On the above point, again this is me thinking as I type and knowing I won’t be looking back into this for a few weeks. Is there a way of basing the length of something, such as the ridge, on a guide line rather than the overall length of a component? In this instance, as the ridge end caps extend past the ridge datum points, I was having a ridge length of 8034.58 rather than 8000 for example. I’m not asking for anyone to go to any lengths and show me, but to know this is possible will be a big help when I come back to resuming this work and learning the various methods required.