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

    [Plugin] Superglue

    Scheduled Pinned Locked Moved Plugins
    81 Posts 18 Posters 42.0k Views 18 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

      If the component has non-coplanar parts you might get the cursor no longer being in the face when the copy is snapped.
      Can you save_as the component and post it so we can have a better idea of what's going on... πŸ˜•

      TIG

      1 Reply Last reply Reply Quote 0
      • brewskyB Offline
        brewsky
        last edited by

        Great little plugin! πŸ˜„
        Found it thanks to the new Extention Warehouse, should have seen this years ago!

        It would be great if you could add a "glue" option to the context menu(below the standard "unglue" option).

        Cheers!
        Jan

        Sketchup BIM-Tools - http://sketchucation.com/forums/viewtopic.php?p=299107

        1 Reply Last reply Reply Quote 0
        • thomthomT Offline
          thomthom
          last edited by

          @brewsky said:

          It would be great if you could add a "glue" option to the context menu(below the standard "unglue" option).

          Good idea!

          Thomas Thomassen β€” SketchUp Monkey & Coding addict
          List of my plugins and link to the CookieWare fund

          1 Reply Last reply Reply Quote 0
          • thomthomT Offline
            thomthom
            last edited by

            Though... not quite sure how to work out what face to glue it to...

            Thomas Thomassen β€” SketchUp Monkey & Coding addict
            List of my plugins and link to the CookieWare fund

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

              The re-glue tool in my HolePunch tool works out the instance.transformation and gets the .origin and .zaxis and looks for a face in the instance.parent.entities that shares the same normal as the .zaxis and also that has a good classify_point result for the .origin ... So it is possible...

              TIG

              1 Reply Last reply Reply Quote 0
              • brewskyB Offline
                brewsky
                last edited by

                @thomthom said:

                Though... not quite sure how to work out what face to glue it to...

                Checking every face in the active collection for a common plane with the component could probably get slow...
                http://www.sketchup.com/intl/en/developer/docs/ourdoc/geom.php#intersect_plane_plane
                If that's too slow, maybe only check if a cutting component AND a face are selected?

                Sketchup BIM-Tools - http://sketchucation.com/forums/viewtopic.php?p=299107

                1 Reply Last reply Reply Quote 0
                • brewskyB Offline
                  brewsky
                  last edited by

                  @tig said:

                  a good classify_point result for the .origin ...

                  Didn't think of that, you are right, you need a classify_point otherwise it could glue to a face on the same plane a mile off! πŸ˜„

                  Sketchup BIM-Tools - http://sketchucation.com/forums/viewtopic.php?p=299107

                  1 Reply Last reply Reply Quote 0
                  • thomthomT Offline
                    thomthom
                    last edited by

                    Wonder what performance that has. ..but I guess it doesn't need to be fast...

                    Thomas Thomassen β€” SketchUp Monkey & Coding addict
                    List of my plugins and link to the CookieWare fund

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

                      You don't need to iterate every face in the array from:
                      faces=instance.parent.entities.grep(SketchUp::Face)
                      The loop can break when a face with a matching normal && classify_point match is found and you do the re-glue.
                      That means on average you only need to look at ~50% of the faces to get a re-glue.
                      On a bad day you need to look through all of the faces, only to find it's the last one == slowest possible re-glue; or there are no suitable faces at all == a "no-glue" !
                      On your lucky day you might look at the first face and find it's a match == instant re-glue...

                      TIG

                      1 Reply Last reply Reply Quote 0
                      • thomthomT Offline
                        thomthom
                        last edited by

                        True that. Will give it a bash. Thanks.

                        Thomas Thomassen β€” SketchUp Monkey & Coding addict
                        List of my plugins and link to the CookieWare fund

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

                        Advertisement