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

    [Plugin] Material Tools

    Scheduled Pinned Locked Moved Plugins
    123 Posts 43 Posters 148.2k Views 43 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.
    • Q Offline
      Quang Le
      last edited by

      Thank Thomthom...! I understand that...
      I have removed old TT_lib and instal new TT_lib2 of you.
      I have now used material tools and thank you so much.

      1 Reply Last reply Reply Quote 0
      • rami_lpmR Offline
        rami_lpm
        last edited by

        Hi.
        I had this error while running 'instance material to faces'
        With and without geometry selected.

        Error; #<NameError; undefined local variable or method `selection' for TT;;Plugins;;MaterialTools;Module>
        C;/Users/ramiro velazco/AppData/Roaming/SketchUp/SketchUp 2014/SketchUp/Plugins/tt_material_tools/core.rb;149;in `instance_materials_to_faces'
        C;/Users/ramiro velazco/AppData/Roaming/SketchUp/SketchUp 2014/SketchUp/Plugins/tt_material_tools/core.rb;40;in `block in <module;MaterialTools>'
        -e;1;in `call'
        
        

        I solved it(I think?) by adding

        selection = model.selection 
        

        in core.rb right after line 148

        Thanks for a wonderful tool.

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

          I just noticed this post. I've filed an issue: https://bitbucket.org/thomthom/material-tools/issue/1/error-while-running-instance-material-to

          Thanks for the report!

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

          1 Reply Last reply Reply Quote 0
          • demD Offline
            dem
            last edited by

            Hi. Some features not works(
            Transparent Material to Backside quetly do nothing, but with Instance Material to Faces console dsy:

            @unknownuser said:

            Error: #<NameError: undefined local variable or method selection' for TT::Plugins::MaterialTools:Module> C:/Users/dem/AppData/Roaming/SketchUp/SketchUp 2014/SketchUp/Plugins/tt_material_tools/core.rb:149:in instance_materials_to_faces'
            C:/Users/dem/AppData/Roaming/SketchUp/SketchUp 2014/SketchUp/Plugins/tt_material_tools/core.rb:40:in block in <module:MaterialTools>' -e:1:in call'

            Tested in SU2013 & SU2014

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

              Yes, this is the same issue as rami reported: http://sketchucation.com/forums/viewtopic.php?f=323%26amp;t=17587%26amp;view=unread#p537988

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

              1 Reply Last reply Reply Quote 0
              • josephkim626J Offline
                josephkim626
                last edited by

                Thanks Thomas!

                I love the plug in, and very often use it.

                I had some suggestion on improving this plugin:

                All the listed functions such as "remove from all faces and edges" and "all textures" would be nice to be applied to SELECTION rather than in the entire model.

                Thanks!

                1 Reply Last reply Reply Quote 0
                • D Offline
                  ddsstudio
                  last edited by

                  I installed the plugin and everything seems to work great, except the "List Textures in Console" function. It opens the console but there is no list.

                  What am I missing?

                  Thanks for a awesome plugin!

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

                    What version of SU?
                    You might want to open the console before invoking that function if you are on an older SU version.

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

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

                      Hi sorry I'm a beginner at this.
                      I have downloaded and add the Material Tool, it in showing in extension manage (sketch 2017 pro). It is installed.
                      But I cannot find it anywhere in the menu tabs - so how to use???
                      Any i missing something?

                      Luke

                      1 Reply Last reply Reply Quote 0
                      • josephkim626J Offline
                        josephkim626
                        last edited by

                        It does not have a toolbar icon, if that is what you mean.
                        It will show up in the menu however.

                        Look under:
                        Extensions > Material Tools.

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

                          Thanks for a great plugin thomthom. As is mentioned on Extension Warehouse, "List Textures in Console" generates a blank console window. Is this just a SU2018 thing or are other folks experiencing that issue?

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

                            OK, figured out what is up with "List Textures in Console" I think...

                            I changed puts to print in the following def from Plugins/tt_material_tools/core.rb and it works in SU2018 (sorry ThomThom - I'm probably not supposed to be messing around in there!?). So general question... is puts no longer valid in 2018?

                            def self.list_textures
                                Sketchup.send_action('showRubyPanel;')
                                # Collect textures and sort by size
                                mats = Sketchup.active_model.materials.select { |m|
                                  !m.texture.nil?
                                }
                                mats.sort! { |a,b|
                                  size_a = a.texture.image_width * a.texture.image_height
                                  size_b = b.texture.image_width * b.texture.image_height
                                  size_b <=> size_a
                                }
                                # Print textures
                                print "=== TEXTURE MATERIALS BY SIZE ==="
                                buffer = ''
                                mats.each { |m|
                                  next if m.texture.nil?
                                  t = m.texture
                                  size = t.image_width * t.image_height
                                  file = File.basename( t.filename )
                                  path = File.dirname( t.filename )
                                  #puts "#{m.display_name} - #{t.image_width}x#{t.image_height} - #{t.filename}"
                                  buffer << "#{m.display_name}\n"
                                  buffer << "  Size; #{t.image_width}x#{t.image_height} pixels\n"
                                  buffer << "  Size; #{self.readable_file_size(size*3, 2)} estimated uncompressed RGB\n"
                                  buffer << "  Size; #{self.readable_file_size(size*4, 2)} estimated uncompressed RGBA\n"
                                  if File.exist?( t.filename )
                                    disksize = File.size( t.filename )
                                    buffer << "  Size; #{self.readable_file_size(disksize, 2)} on disk\n"
                                  end
                                  buffer << "  File; #{file}\n"
                                  buffer << "  Path; #{path}\n"
                                }
                                print buffer
                                print "---"
                              end
                            
                            1 Reply Last reply Reply Quote 0
                            • S Offline
                              stefankaplan
                              last edited by

                              This is a great extension! - and the only one I've found that lists in model textures and their file sizes, which is key when trying to reduce size of the SketchUp model.

                              Only problem is: It only work on my Mac. When running "List textures in console", an empty console appears (in SketchUp 2022 and 2023) 😞

                              I've tried to disable all other extensions but no luck, the console still doesn't list any textures on my Windows computer.

                              Any advice?


                              list textures in console.png

                              1 Reply Last reply Reply Quote 0
                              • Dave RD Offline
                                Dave R
                                last edited by

                                @stefankaplan said:

                                ... the console still doesn't list any textures on my Windows computer.

                                Any advice?

                                This is what I get in the console when I run this feature. This is in SketchUp 2023.

                                Screenshot - 3_23_2023 , 9_46_15 AM.png

                                Did you install SketchUp correctly? That requires right clicking on the downloaded installer file and selecting Run as administrator from the context menu. If you didn't or don't remember, close SketchUp, find the installer in your Downloads folder, right click on it, choose Run as administrtor and then Repair.

                                BTW, did you have the Ruby Console opened before you ran the extension?

                                Etaoin Shrdlu

                                %

                                (THERE'S NO PLACE LIKE)

                                G28 X0.0 Y0.0 Z0.0

                                M30

                                %

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

                                Advertisement