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

    Selective component explode

    Scheduled Pinned Locked Moved Developers' Forum
    22 Posts 6 Posters 4.3k Views 6 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.
    • G Offline
      glro
      last edited by

      @dan rathbun said:

      @glro said:

      e.definition.name=="**KLC2-**"

      Is " **KLC2-**" a prefix that appears at the beginning of several definition names ??

      If so your logical test needs to use a regular expression, thus:

      if e.definition.name =~ /\A(KLC2\-)/

      ... which returns nil if there is no match, (and evals to false,) ... or if there is a match, it returns the zero based index of the match (which evals as true.)

      The pattern \A matches the at the beginning of the string only, so in this case the only valid index position that can be returned (for a match,) is 0.

      💭

      the component name in the example is KLC1-, it is not a prefix; just to make the difference with KLC1; the component embedded in it

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

        Make a small SKP with a few components in it - one named 'KLC2-'.
        Then run my one-liner [with any typos corrected - original is now fixed!].
        It should not go into a loop...
        Report Console errors, if any...

        TIG

        1 Reply Last reply Reply Quote 0
        • G Offline
          glro
          last edited by

          this is what i typed in the ruby console

          n='KLC1-';m=Sketchup.active_model;m.start_operation('x',true);m.definitions[n].instances.each{|i|i.explode};m.commit_operation;
          

          it does make a loop...

          this a shot of the ruby console, but it never ended, i had to force sketchup out


          loop

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

            What does m.definitions[n] return assuming you define 'n' and 'm' as partial code beforehand...

            TIG

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

              The model you provided, is that the whole model that you are working with or just a portion? The first code I posted completed in 2 seconds on that model, so I'm hoping that is only a small portion of a much larger model?

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

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

                Works fine for me too, and explodes all 122 instances in a few seconds, using my code !
                😕

                TIG

                1 Reply Last reply Reply Quote 0
                • J Offline
                  Jim
                  last edited by

                  Geo - make certain the Outliner window is closed, and try again. Then disable that SketchStruct plugin and try again.

                  Hi

                  1 Reply Last reply Reply Quote 0
                  • G Offline
                    glro
                    last edited by

                    @chris fullmer said:

                    The model you provided, is that the whole model that you are working with or just a portion? The first code I posted completed in 2 seconds on that model, so I'm hoping that is only a small portion of a much larger model?

                    no, it is the whole model

                    the problem must be with my computer

                    i shall try to find out

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

                      Ahh, that's good to know! Definitely try disabling other plugins like Jim mentions.

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

                      1 Reply Last reply Reply Quote 0
                      • G Offline
                        glro
                        last edited by

                        @jim said:

                        Geo - make certain the Outliner window is closed, and try again. Then disable that SketchStruct plugin and try again.

                        you solved my problem !

                        I deleted sketchtruct and both TIG and Chris did the job in a few seconds...

                        How did you guess it was coming from sketchtruct?

                        This shows how much your "plugins quarantine" idea may help to solve plugin problems...

                        Thank you

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

                          Great job Jim!

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

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

                            http://4.bp.blogspot.com/_mFh2uV7t6RQ/S2e_ndxZJNI/AAAAAAAAAF8/SSwefPIDSbw/s320/sherlock-holmes-mind.jpg

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

                            1 Reply Last reply Reply Quote 0
                            • J Offline
                              Jim
                              last edited by

                              @glro said:

                              How did you guess it was coming from sketchtruct?

                              Lucky guess, but the Ruby Console gave a bug hint...

                              177a.png

                              Hi

                              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