Kreator:
thanks for the advice... it would seem that I released these scripts a little prematurely, but I needed some encouragement to continue with their development... getting a little burned out with ASL... it hasn't got enough instructions to write really elegant code... needs user defined functions, or subroutines at least (Steve?!?). sooooo... if you change the code in roofs.a8s parameters from: #parameter("16\"o.c. or 24\"o.c.", int, 0, 0, 0);
to: #parameter("Rafter Centers", int, 24, 0, 24);
and add this code at the end just before $roof:Close();:
if (parameter("Rafter Centers") == 0 && parameter("Gables %") <100)
{
$roof.OpenFace(0,4); /* soffits */
$roof.VertexN($roof.AddPoint(($lx/2, $tail_height-$fascia+0.06944, $wz/2)));
$roof.VertexN($roof.AddPoint((-$lx/2, $tail_height-$fascia+0.06944, $wz/2)));
$roof.VertexN($roof.AddPoint((-$lx/2-$overhang, $tail_height-$fascia+0.06944, $wz/2+$overhang)));
$roof.VertexN($roof.AddPoint(($lx/2+$overhang, $tail_height-$fascia+0.06944, $wz/2+$overhang)));
$roof.CloseFace();
$roof.OpenFace(0,4);
$roof.VertexN($roof.AddPoint(($lx/2, $tail_height-$fascia+0.06944, $wz/2)));
$roof.VertexN($roof.AddPoint(($lx/2+$overhang, $tail_height-$fascia+0.06944, $wz/2+$overhang)));
$roof.VertexN($roof.AddPoint(($lx/2+$overhang, $tail_height-$fascia+0.06944, -$wz/2-$overhang)));
$roof.VertexN($roof.AddPoint(($lx/2, $tail_height-$fascia+0.06944, -$wz/2)));
$roof.CloseFace();
$roof.OpenFace(0,4);
$roof.VertexN($roof.AddPoint(($lx/2, $tail_height-$fascia+0.06944, -$wz/2)));
$roof.VertexN($roof.AddPoint(($lx/2+$overhang, $tail_height-$fascia+0.06944, -$wz/2-$overhang)));
$roof.VertexN($roof.AddPoint((-$lx/2-$overhang, $tail_height-$fascia+0.06944, -$wz/2-$overhang)));
$roof.VertexN($roof.AddPoint((-$lx/2, $tail_height-$fascia+0.06944, -$wz/2)));
$roof.CloseFace();
$roof.OpenFace(0,4);
$roof.VertexN($roof.AddPoint((-$lx/2, $tail_height-$fascia+0.06944, $wz/2)));
$roof.VertexN($roof.AddPoint((-$lx/2, $tail_height-$fascia+0.06944, -$wz/2)));
$roof.VertexN($roof.AddPoint((-$lx/2-$overhang, $tail_height-$fascia+0.06944, -$wz/2-$overhang)));
$roof.VertexN($roof.AddPoint((-$lx/2-$overhang, $tail_height-$fascia+0.06944, $wz/2+$overhang)));
$roof.CloseFace();
}
it will add soffits on roofs with hips if #parameter("Rafter Centers", int, 24, 0, 24); is zero.
I also added code to make adjustable barge rafters( I assume you mean the gable overhang here), but ran into a little problem with the code and am still considering ways to correct it.
One problem I have with soffits and such is that I live in Hawaii, and this type of construction is rare(only multi_million mansions have soffits...lol), so I have very little experience with their actual layout... I have built some houses with soffits, but they had str8 gable roofs with no overhang... not sure how to construct the junction of gable overhang and soffit... pictures would be of great help... I believe that UK construction practices a lot of this type of stuff...
windows.a8s: the only parameter that doesn't work is "Double Hung", I'm still pondering that one....
but the stiles and mulliens size can be changed... the point2 array $dim holds a variety of sizes for the window.. guess I shoulda commented that one a little better... anyway $dim[2].x & $dim[2].y hold the sizes of the stiles and mulliens... default is 5/4... all the sizes in $dim[] are commented, so you can change them if you want, although I'm trying to make all these scripts produce structurally correct drawings, so adjusting the sizes should be done with that in mind.... i.e. if your wall happens to be built of 2x6's it shouldn't be necessary to change the stile size to keep everything proportional(I think?!?) It would be nice if there were more parameters available, then i could include all dimensions there.
Anyway, your interest encourages me to continue with these scripts, thank you for the words of advice, and i will post any major changes to either script as I make them.
Oh, and for Neirao: It wasn' my intention to make a script that would create any roof possible, this would be difficult if not impossible... what I trying to provide is a tool with which one can use to create a variety of basic roofs quickly... attached is an example of one that took me about 20 minutes(how does one put images in the body of a post, anyway?
?Grrr)
aloha
freesailor