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

    [Plugin] #SelectionHideShow.rb v1.1

    Scheduled Pinned Locked Moved Plugins
    22 Posts 13 Posters 36.2k Views 13 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 Online
      TIG Moderator
      last edited by

      Reverse and Orient faces is already built-in on the context-menu - near the top [as are some other 'select tools']... adding them would only duplicate stuff...

      TIG

      1 Reply Last reply Reply Quote 0
      • A Offline
        AlexMozg
        last edited by

        TIG
        ❓ Why constantly to use the method of group_miner, when in him practically is not there a necessity?
        ❓ Why to apply properties to entity, when are new properties of entity equal to the applied properties?
        These questions are linked at a speed of implementation of script on the large scenes.

        ❗ Example of considerable increase of speed of implementation of script:

        
        class Sketchup;;Group
            def definition
                self.entities.parent
            end
        end
        def SelectionTool;;group_miner(ents)
            ents.each do |e|
                if e.is_a? Sketchup;;Group
                    e.make_unique if e.definition.instances.length > 1
                    SelectionTool;;group_miner(e.entities)
                end
            end
        end
        
        

        ❗ At the use of method of typename speed of implementation of script goes down in once or twice!
        It would be desirable to correct these shortages...

        1 Reply Last reply Reply Quote 0
        • Chris FullmerC Offline
          Chris Fullmer
          last edited by

          Alex, I have not run any tests on typename, but I use it regularly. Are you saying that it is much slower than .is_a?

          I'd rather use the faster method too, I just never knew there was a faster one. I'm sure TIG isn't using a slow method on purpose either...

          Chris

          Lately you've been tan, suspicious for the winter.
          All my Plugins I've written

          1 Reply Last reply Reply Quote 0
          • A Offline
            AlexMozg
            last edited by

            @chris fullmer said:

            Alex, I have not run any tests on typename, but I use it regularly. Are you saying that it is much slower than .is_a?
            Chris

            Easily to check...
            The more elements in the model - the better results script.

            @unknownuser said:

            SpeedTest
            is_a? - 0.36c
            kind_of? - 0.39c
            class - 0.422c
            typename - 1.313c

            Model Statistics:
            edges = 48981
            faces = 8009
            groups = 729
            components = 365
            construction_lines = 1
            construction_points = 4
            images = 3
            section_planes = 4
            texts = 4
            others = 2


            Not plugin!

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

              That's some interesting numbers. I've always used k ind_of? - wasn't aware of the is_a?. then again, I've never tested the speed of methods either.

              Thanks for posting this test.

              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

                Maybe we could add this info to a new stickcy where we collect such useful tips and info?

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

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

                  Thanks Alex - you've probably noticed I used the .is_a? test everywhere else in the script - however, I didn't realise it was so much slower to use typename=="". 😳
                  I've also incorporated my own version of your group_miner speed-up suggestion that now avoids testing groups that area already unique... 🤓

                  I just need to edit ALL of my other scripts to change e.typename=="" to e.is_a?() !!! 😢

                  Here's v1.1 http://forums.sketchucation.com/viewtopic.php?p=161963#p161963

                  TIG

                  1 Reply Last reply Reply Quote 0
                  • A Offline
                    AlexMozg
                    last edited by

                    @tig said:

                    ...I didn't realise it was so much slower to use typename=="". 😳
                    .....

                    For a model ot a few kilobytes to 10 megabyte of substantial difference it is not, but my models ot 40 to 75 megabyte!


                    My model statistics:

                    @unknownuser said:

                    Model 68.4 Mb:
                    Edges 485016
                    Faces 128906
                    Component Instances 6055
                    Groups 3078
                    Section Planes 4

                    P.S.
                    It was even necessary to write the analogue of SketchUp Text tool, because a standard tool begins to work very long.
                    😒

                    1 Reply Last reply Reply Quote 0
                    • B Offline
                      bianhai
                      last edited by

                      Very good 😎 !

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

                        @alexmozg said:

                        @chris fullmer said:

                        Alex, I have not run any tests on typename, but I use it regularly. Are you saying that it is much slower than .is_a?
                        Chris

                        Easily to check...
                        The more elements in the model - the better results script.

                        @unknownuser said:

                        SpeedTest
                        is_a? - 0.36c
                        kind_of? - 0.39c
                        class - 0.422c
                        typename - 1.313c

                        Model Statistics:
                        edges = 48981
                        faces = 8009
                        groups = 729
                        components = 365
                        construction_lines = 1
                        construction_points = 4
                        images = 3
                        section_planes = 4
                        texts = 4
                        others = 2

                        Hmm... .kind_of? is an alias for .is_a? - Is that fraction of a differences just some other random outside co-incidence?
                        http://www.ruby-doc.org/core/classes/Object.html#M000370

                        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

                          I did a somewhat larger test. By the looks of it .is_a?, .kind_of? and .class are pretty much the same. I take the differences due to other system factors at the time of execution.

                          AT - SpeedTest:
                          is_a? - 0.89c
                          kind_of? - 0.782c
                          class - 0.875c
                          typename - 2.297c

                          Model Statistics:
                          edges = 159630
                          faces = 61300
                          groups = 0
                          components = 1000
                          construction_lines = 0
                          construction_points = 0
                          images = 0
                          section_planes = 0
                          texts = 0
                          others = 0

                          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

                            Much larger test. (did have a few programs open while I did the tests.)

                            AT - SpeedTest:
                            is_a? - 16.297c
                            kind_of? - 16.141c
                            class - 18.703c
                            typename - 88.703c

                            Model Statistics:
                            edges = 8396595
                            faces = 1026520
                            groups = 52643
                            components = 526428
                            construction_lines = 2
                            construction_points = 4
                            images = 0
                            section_planes = 0
                            texts = 0
                            others = 0

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

                            1 Reply Last reply Reply Quote 0
                            • 3 Offline
                              3dsmax9
                              last edited by

                              a tool bar will be very great with this script

                              1 Reply Last reply Reply Quote 0
                              • irwanwrI Offline
                                irwanwr
                                last edited by

                                i think i need this plugin
                                thank you in advance, sir.

                                1 Reply Last reply Reply Quote 0
                                • I Offline
                                  Ivancho
                                  last edited by

                                  [highlight=#ffff40:2a81c421]NICE[/highlight:2a81c421]!! 😍

                                  1 Reply Last reply Reply Quote 0
                                  • H Offline
                                    hygicell
                                    last edited by

                                    I have lost a component somewhere in my drawing
                                    to find it, I pasted a second one in a visible place
                                    when I select this, the entity info clearly says Component (2 in model)
                                    with the components window context menu, I selected all components
                                    I thought then, if I could hide the rest of the model, I would easily spot where the original one is
                                    but view/hide rest of model doesn't work unless you are inside the component,
                                    which means you can select only one of both, and the other one is deselected
                                    please help
                                    Frank

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

                                      View > Hidden Geometry ON will show all hidden objects.
                                      If it's on a Layer that is OFF you won't see it though...
                                      The Outliner will also show all instances that are on ON Layers...
                                      You can select them in the Outliner and they select in the model.

                                      TIG

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

                                      Advertisement