sketchucation logo sketchucation
    • Login
    ℹ️ Licensed Extensions | FredoBatch, ElevationProfile, FredoSketch, LayOps, MatSim and Pic2Shape will require license from Sept 1st More Info

    [Plugin] Face2Frame - Updated 27-Mar-2014

    Scheduled Pinned Locked Moved Plugins
    66 Posts 19 Posters 56.1k Views 19 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • TIGT Offline
      TIG Moderator
      last edited by

      Glad it's fixed. πŸ˜„

      πŸ˜• I've never come across this ' sign()' method before, although I can confirm that I have it auto-loaded into my Sketchup Ruby, even without DCs loading, and there's no 'sign' of it in any RB scripts I have that I've grepped - so I suspect an unidentified RBS file adds it, and if a user doesn't have that loading then they are screwed...
      I'd be interested to learn where ' sign()' originates...

      Meanwhile using the 'comparator' n<=>0 returns either 0, 1 or -1: which, when used with * effectively uses the 'sign' of the number 'n' in a calculation, without passing its real numerical 'value'.

      TIG

      1 Reply Last reply Reply Quote 0
      • sdmitchS Offline
        sdmitch
        last edited by

        I'm really not 100% sure where I found the sign function but I believe it was in the Ruby Console. Apparently I typed something like sign(-5) and it returned -1 so I assumed that it was a common function. I do have Ruby 1.8.6 installed so maybe that's why it works for me.

        Nothing is worthless, it can always be used as a bad example.

        http://sdmitch.blogspot.com/

        1 Reply Last reply Reply Quote 0
        • TIGT Offline
          TIG Moderator
          last edited by

          I too get sign() in the RC... but with a standard SUp-Ruby only installation and DCs etc disabled I still get it.
          And it's not deined in any .rb files I have loading...
          So I must assume that there a .rbs file loading from somewhere that adds the global method...
          The alternative 'standard' way of n<=>0 is easy enough though...

          Another one that sometimes trips up scripters is group.definition [which is needed for adding instances of a group into another entities context etc, when 'copying' or 'moving' it to mimic Copy/Cut/Paste_In_Place...] - the method component_instance.definition does return the component's definition and some 3rd party tools add group.definition to the mix... but if you use that method and the recipient of your script hasn't got the other 3rd party script that adds it, then they'll get errors. The 'safe' way is to use group.entities.parent which returns that group's definition properly...

          TIG

          1 Reply Last reply Reply Quote 0
          • gullfoG Offline
            gullfo
            last edited by

            this is a very cool script! 😍 attached are a couple of examples of it in use. couple of things - the header spacing looks like there is overlap. also, after using the tool it's somewhat arbitrary if the dialog comes back or not πŸ˜• in example #1 i'd also tried to use it on a floor and on a ceiling. it's mostly there. in example #2 i tried to use it for a "soffit" and the vertical bits work as expected but the horizontal ones (like #1) are not computing right. this is definitely a great bit of work however it ends!


            face 2 frame example 1.skp


            face 2 frame example 2.skp

            Glenn

            http://www.runnel.com

            1 Reply Last reply Reply Quote 0
            • sdmitchS Offline
              sdmitch
              last edited by

              Given the fact that the plugin was designed for vertical walls, I'm not surprised that it had a problem with floors and ceilings.

              The apparent overlap of the headers is the 3/4" plywood spacer between the headers.

              Nothing is worthless, it can always be used as a bad example.

              http://sdmitch.blogspot.com/

              1 Reply Last reply Reply Quote 0
              • KrisidiousK Offline
                Krisidious
                last edited by

                @unknownuser said:

                The apparent overlap of the headers is the 3/4" plywood spacer between the headers.

                Yes that was my addition... Here in America on the jobs that I've worked we use Plywood in our headers.

                http://biytoday.com/header.jpg

                By: Kristoff Rand
                Home DesignerUnique House Plans

                1 Reply Last reply Reply Quote 0
                • M Offline
                  mics_54
                  last edited by

                  I haven't laminated headers in a decades...energy efficiency dictates 4x10 or 4x12 headers with 2 inches of foam insulation or spray foam on fully sheathed structures.

                  1 Reply Last reply Reply Quote 0
                  • KrisidiousK Offline
                    Krisidious
                    last edited by

                    @mics_54 said:

                    I haven't laminated headers in a decades...energy efficiency dictates 4x10 or 4x12 headers with 2 inches of foam insulation or spray foam on fully sheathed structures.

                    Rich Boy... 🀣

                    By: Kristoff Rand
                    Home DesignerUnique House Plans

                    1 Reply Last reply Reply Quote 0
                    • KrisidiousK Offline
                      Krisidious
                      last edited by

                      I must admit I have not framed a house in probably 20 years and I don't provide framing details as framers from different areas do things differently and I assume know their trade better than I. So I would defer to those who know better.

                      By: Kristoff Rand
                      Home DesignerUnique House Plans

                      1 Reply Last reply Reply Quote 0
                      • M Offline
                        mics_54
                        last edited by

                        You're warm weather too...I do arctic construction.

                        1 Reply Last reply Reply Quote 0
                        • gullfoG Offline
                          gullfo
                          last edited by

                          i wasn't sure if that was a laminate or not but it's ok. in general, i see a lot of newer construction with the laminated i-beam for the headers (similar to floors and rafters) and a foam fill. i think the headers work as-is and folks can draw any details necessary to describe their preferred approach πŸ˜„ it would be really cool if you could "x" the ends of the lumber so a 2D / wireframe view can show it like a construction plan would...

                          Glenn

                          http://www.runnel.com

                          1 Reply Last reply Reply Quote 0
                          • KrisidiousK Offline
                            Krisidious
                            last edited by

                            @gullfo said:

                            i wasn't sure if that was a laminate or not but it's ok. in general, i see a lot of newer construction with the laminated i-beam for the headers (similar to floors and rafters) and a foam fill. i think the headers work as-is and folks can draw any details necessary to describe their preferred approach πŸ˜„ it would be really cool if you could "x" the ends of the lumber so a 2D / wireframe view can show it like a construction plan would...

                            I considered that X as well, but not only at the ends but two faces all the way through studs, so that any stud in any location would show in sections as such. It would jump the polys up quite a bit but I don't think that would be a very big issue.

                            By: Kristoff Rand
                            Home DesignerUnique House Plans

                            1 Reply Last reply Reply Quote 0
                            • sdmitchS Offline
                              sdmitch
                              last edited by

                              Just posted an update to Face2Frame. Now does floors, faces on the XY plane, and adds "X"s to ends of studs, headers and/or joist.

                              Nothing is worthless, it can always be used as a bad example.

                              http://sdmitch.blogspot.com/

                              1 Reply Last reply Reply Quote 0
                              • LAUFERONL Offline
                                LAUFERON
                                last edited by

                                I'm french and i'd like the same famous plugin in metric units !

                                A dream for woodworkers....

                                1 Reply Last reply Reply Quote 0
                                • sdmitchS Offline
                                  sdmitch
                                  last edited by

                                  @unknownuser said:

                                  I'm french and i'd like the same famous plugin in metric units !

                                  A dream for woodworkers....

                                  Sorry, I don't do metric.

                                  Nothing is worthless, it can always be used as a bad example.

                                  http://sdmitch.blogspot.com/

                                  1 Reply Last reply Reply Quote 0
                                  • TIGT Offline
                                    TIG Moderator
                                    last edited by

                                    You can 'metricate' it relatively easily...

                                    @wall_type = "Ext" #unless @wall_type
                                    @stud_size = "2X4" #unless @stud_size; 
                                    @stud_space=16.inch #unless @stud_space
                                    @header_size = "2X8" #unless @header_size
                                    @corner_type = "A"
                                    @thickness=0.0
                                    

                                    could become

                                    @wall_type = "Ext" #unless @wall_type
                                    @stud_size = "50mmX100mm" #unless @stud_size; 
                                    @stud_space=400.mm #unless @stud_space
                                    @header_size = "50mmX200mm" #unless @header_size
                                    @corner_type = "A"
                                    @thickness=0.mm
                                    

                                    Then in the html code... make similar edits so
                                    <option value='2X2'>2x2</option>
                                    ...
                                    <option value='16\"' selected>16\"</option>
                                    becomes
                                    <option value='50mmX50mm'>50mmx50mm</option>
                                    ...
                                    <option value='400mm' selected>400mm</option>
                                    and so on...
                                    Now the cases for the stud sizes...
                                    case @stud_size when "2X2" : dx = 1.500.inch; dy = 1.500.inch;
                                    ...
                                    becomes
                                    case @stud_size when "50mmX50mm" ; dx = 38.mm; dy = 38.mm;
                                    OR whatever...
                                    Fix all 8 or so of those sizes...
                                    unless @wall_type=="Int" || (@stud_size!="2X4" && @stud_size!="2X6") case @stud_size when "2X4" case @corner_type when "A" ; studs=self.A_2X4(xa,ya,p,v,dx,dy)
                                    ...
                                    Needs to be looked at...
                                    unless @wall_type=="Int" || (@stud_size!="50mmX100mm" && @stud_size!="50mmX150mm") case @stud_size when "50mmX100mm" case @corner_type when "A" ; studs=self.A_50mmX100mm(xa,ya,p,v,dx,dy)
                                    ...
                                    Then rename the matching
                                    def A_2X4(vx,vy,p,v,dx,dy)
                                    as
                                    def A_50mmX100mm(vx,vy,p,v,dx,dy)
                                    etc
                                    The parts like 1/2" plywood spacer need 0.5 replacing with 12.mm or whatever is the equivalent ?
                                    Parts of the code like dx+0.01 which add a 1/100" spacing could be adjusted to 0.25.mm or some other small metric equivalent ?
                                    As can [ruby:13xikt90]dx2-0.02[/ruby:13xikt90] to be [ruby:13xikt90]dx2-0.5.mm[/ruby:13xikt90]
                                    It just a matter of steps through every line and deciding what is needed...

                                    TIG

                                    1 Reply Last reply Reply Quote 0
                                    • KrisidiousK Offline
                                      Krisidious
                                      last edited by

                                      Counting in multiples and intervals of 10 is sorcery... Witch craft I say! Someone get a rope and a rock.

                                      By: Kristoff Rand
                                      Home DesignerUnique House Plans

                                      1 Reply Last reply Reply Quote 0
                                      • V Offline
                                        virtualelvis
                                        last edited by

                                        What am I doing wrong? I cannot figure out how to find this
                                        plugin to use it..
                                        I put it in my plugins folder.. but I can't figure out how to use it...
                                        I looked under draw and plugins...
                                        thanks for helping a noob.. d

                                        1 Reply Last reply Reply Quote 0
                                        • KrisidiousK Offline
                                          Krisidious
                                          last edited by

                                          Go to Plugins>SDM Tools>Face Tool>Face2Frame

                                          By: Kristoff Rand
                                          Home DesignerUnique House Plans

                                          1 Reply Last reply Reply Quote 0
                                          • sdmitchS Offline
                                            sdmitch
                                            last edited by

                                            Updated to be SU2014 compatible.

                                            Nothing is worthless, it can always be used as a bad example.

                                            http://sdmitch.blogspot.com/

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 3 / 4
                                            • First post
                                              Last post
                                            Buy SketchPlus
                                            Buy SUbD
                                            Buy WrapR
                                            Buy eBook
                                            Buy Modelur
                                            Buy Vertex Tools
                                            Buy SketchCuisine
                                            Buy FormFonts

                                            Advertisement