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

    [Plugin] Voxelize - Updated 2011-04-04

    Scheduled Pinned Locked Moved Plugins
    48 Posts 21 Posters 61.2k Views 21 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.
    • Dan RathbunD Offline
      Dan Rathbun
      last edited by

      Made a few changes for you Andrew:

      • properly module wrapped the plugin.

      • cube size is remembered during session in var @@cube_size

      • made it easier to control menu with constants defined at top of file

      • added validation for the menu item

      I think the "group test" should fire before the inputbox is displayed.
      But otherwise it looks good.


      Latest version now in the first post

      I'm not here much anymore.

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

        Very intesting plug-in, and practical too. I was looking for a quick way to place a repeating element on a sphere (in this case Clint Howard's ship from Star Trek TOS "The Corbomite Manuver"). I edited the cube and replaced it with a pyramid with geodesic spheres at each angle.Fesperus.jpg

        It turned what would have been a mind-numbing task into something trivial. Now all I have to do is upload it to the warehouse.

        1 Reply Last reply Reply Quote 0
        • T Offline
          TheDro
          last edited by

          @Gillman: I'm glad to hear that it was of use to you.

          @Khai: I've been looking at the structure of the .schematic file which is used to import structures into Minecraft using MCEdit. I think I've got it figured out but I still need to write the code and I'm reading the book of ruby to try and figure out the best way to do it.

          @Everyone: I've added a new "spiral" algorithm to prevent interpreting sharp edges of solids as "entrances" to the solids. Basically, I improved the algorithm to work with more solids which is good. I'll upload the new version once I'm not too busy with work/school.

          1 Reply Last reply Reply Quote 0
          • 2 Offline
            22curious
            last edited by

            @TheDro, the spiral refinement will be useful - looking forward to it - thanks!

            1 Reply Last reply Reply Quote 0
            • K Offline
              Khai
              last edited by

              thanks Dro 😄

              1 Reply Last reply Reply Quote 0
              • mitcorbM Offline
                mitcorb
                last edited by

                You will discover, while scaling an instance of a component, that the others do not scale accordingly, at least while using the native scale tool.

                I take the slow, deliberate approach in my aimless wandering.

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

                  Scaling one Component Instance from the 'outside' won't affect other Component Instances of the same Component BUT scaling a Component Instance's 'contents' will change all Component Instances of that Component - that's because when you edit the contents of a Component Instance you change the Component Definition itself and this is repeated across all of its Instances]...

                  TIG

                  1 Reply Last reply Reply Quote 0
                  • mitcorbM Offline
                    mitcorb
                    last edited by

                    Aaah yes. Thank you. 😄

                    I take the slow, deliberate approach in my aimless wandering.

                    1 Reply Last reply Reply Quote 0
                    • L Offline
                      Lobster
                      last edited by

                      Thanks for this,

                      Interesting plug in.

                      voxelise.png

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

                        Is there any chance of making this work to allow selection of a component as well as a group?

                        Etaoin Shrdlu

                        %

                        (THERE'S NO PLACE LIKE)

                        G28 X0.0 Y0.0 Z0.0

                        M30

                        %

                        1 Reply Last reply Reply Quote 0
                        • T Offline
                          TheDro
                          last edited by

                          I might eventually get to adding that feature but it's hard to say when. I've been pretty busy this summer and plan to be until September so I might not get to programming any time soon. I just checked out some of the methods of components (instance and definition) and there is a "bounds" method (not found in the api documentation...) which I could use to run my script. This means it should be possible to make it work for components but I might not get to it any time soon.

                          Have a great summer 😄 .

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

                            Of course you could always explode the component-instance and immediately group the highlighted geometry that results... now you have a group to process...

                            TIG

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

                              That's true, TIG. I guess for no more often than I would use the plugin, that wouldn't be too much trouble.

                              Etaoin Shrdlu

                              %

                              (THERE'S NO PLACE LIKE)

                              G28 X0.0 Y0.0 Z0.0

                              M30

                              %

                              1 Reply Last reply Reply Quote 0
                              • L Offline
                                leminilab
                                last edited by

                                @unknownuser said:

                                This screams out for Sketchy Physics to drop all those cubes.

                                👍 That's what I thought too!
                                Can't wait to see that! 🎉

                                • "Live every day as if it were your last and then some day you'll be right."
                                • "ThomThom rules!!!"
                                1 Reply Last reply Reply Quote 0
                                • O Offline
                                  octopus2
                                  last edited by

                                  Is there a way of knowing how many cubes were generated?

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

                                    Since the plugin creates the cubes as instances of a component, select one of them and look at the Entity Info box. It'll tell you how many there are.

                                    Etaoin Shrdlu

                                    %

                                    (THERE'S NO PLACE LIKE)

                                    G28 X0.0 Y0.0 Z0.0

                                    M30

                                    %

                                    1 Reply Last reply Reply Quote 0
                                    • T Offline
                                      TheDro
                                      last edited by

                                      If you open up Window>>Ruby Console, before running the plugin, the debug information will tell you how many cubes were created, among other things. The other things are the amount of time each step takes to run. This is probably more helpful to me than to you but remember, this is still in beta 😄.

                                      1 Reply Last reply Reply Quote 0
                                      • F Offline
                                        Flashhawk
                                        last edited by

                                        You are kidding me right? I mean you must kid me!! I did this by hand last week!!! I was totally not aware of your script and i made a voxelized soldier for a 3d Print project (3mm or 1/600 scale infantry) by overlaying a 3d-warehouse model with a matrix of 30x30x30 voxel and then deleting everything that was not used... (like in Michelangelos "I chipped off everything that did not look like a lion") Man i will so much use this next time!!!! Thanks alot!
                                        Flashhawk

                                        1 Reply Last reply Reply Quote 0
                                        • Dan RathbunD Offline
                                          Dan Rathbun
                                          last edited by

                                          @thedro said:

                                          I just checked out some of the methods of components (instance and definition) and there is a " bounds" method (not found in the api documentation...)

                                          Yes it is.

                                          bounds() is defined in class Drawingelement

                                          Group, ComponentDefinition, ComponentInstance are all subclasses of Drawingelement, so they inherit their superclass' instance methods.

                                          At the console:
                                          Sketchup::Group.superclass()

                                          Sketchup::Drawingelement

                                          Sketchup::Drawingelement.superclass()

                                          Sketchup::Entity

                                          .. so they also have all Sketchup::Entity instance methods. And Sketchup::Entity is a subclass of Object so they have all of those instance methods, and module Kernel is mixed into Object, so they will have of those methods.

                                          I'm not here much anymore.

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

                                            😆 Does anyone play Minecraft? -- everything is made of cubes

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

                                            Advertisement