sketchucation logo sketchucation
    • Login
    Oops, your profile's looking a bit empty! To help us tailor your experience, please fill in key details like your SketchUp version, skill level, operating system, and more. Update and save your info on your profile page today!
    πŸ›£οΈ Road Profile Builder | Generate roads, curbs and pavements easily Download

    [REQ] Open and close all nested groups in selection

    Scheduled Pinned Locked Moved Plugins
    19 Posts 7 Posters 1.1k Views 7 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.
    • PixeroP Offline
      Pixero
      last edited by

      That seem to work.
      Again, thanks!

      1 Reply Last reply Reply Quote 0
      • PixeroP Offline
        Pixero
        last edited by

        I spoke to soon. It doesn't work if there are nested groups.

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

          I knew I had seen a similar discussion some where. This might be what you are looking for.

          http://sketchucation.com/forums/viewtopic.php?p=346107#p346107

          I think there is a newer version in the plugin store.

          Never mind, as written, the plugin fails with nested groups.

          I think it would be an easy fix.

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

          http://sdmitch.blogspot.com/

          1 Reply Last reply Reply Quote 0
          • tt_suT Offline
            tt_su
            last edited by

            @tig said:

            After the selection grep you need a .each ...

            .grep takes a block which it will invoke on all matched elements. On large sets it's somewhat faster.

            1 Reply Last reply Reply Quote 0
            • C Offline
              CAUL
              last edited by

              @pixero said:

              As a way of automating the process from here:
              http://sketchucation.com/forums/viewtopic.php?f=323%26amp;t=61842#p565790
              Can someone make a script that open and close all nested groups in a selection?

              The code below makes a recursive traversal through nested groups. I will add an UI to the hide overlapping extension where make_unique is an option.

                
                def self.makeUnique(ents)
                  ents.grep(Sketchup;;Group).each { |g|
                    g.make_unique
                    makeUnique(g.entities)
                  }
                end
              
                makeUnique(Sketchup.active_model.selection)
              
              1 Reply Last reply Reply Quote 0
              • PixeroP Offline
                Pixero
                last edited by

                I tried your code but it didn't work with nested groups either. 😞

                nested_groups_error.jpg

                1 Reply Last reply Reply Quote 0
                • C Offline
                  CAUL
                  last edited by

                  @pixero said:

                  I tried your code but it didn't work with nested groups either. 😞

                  I think there are two issues here.

                  1. HideOverlappingGeometry does not compare groups within a common top group. So in your example, the 4 boxes within a group will not be compared with each other, they will however be compared to the 4 boxes in the other group. That's just a choice I made in the extension that reflects the way I use the script. If you want to hide the seams between the groups within a group you have to enter the group and select all groups within and then run the script. I think I will add an option to the extension so that is also compares stuff within the same nesting.

                  2. I don't quite see why the provided code doesn't work in your example. I tried with a similar example and the groups all became unique. Do you have a sample model?

                  1 Reply Last reply Reply Quote 0
                  • PixeroP Offline
                    Pixero
                    last edited by

                    Here is a simple example file.
                    A real life model would probably have more nested levels.

                    NestedGroups.skp

                    1 Reply Last reply Reply Quote 0
                    • C Offline
                      CAUL
                      last edited by

                      @pixero said:

                      Here is a simple example file.
                      A real life model would probably have more nested levels.

                      I get the result below (and the nested groups also becomes unique):


                      Before


                      After

                      1 Reply Last reply Reply Quote 0
                      • PixeroP Offline
                        Pixero
                        last edited by

                        Ok, so then it's a matter of you implementing the compare overlapping edges in nested groups?

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

                        Advertisement