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

    [Plugin] Point Merger tools v1.2 UPDATED@ 23/06/09

    Scheduled Pinned Locked Moved Plugins
    68 Posts 20 Posters 41.9k Views 20 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.
    • JClementsJ Offline
      JClements
      last edited by

      What a time saver this could turn out to be.

      This functionality should be a standard/built in tool of SketchUp pro.

      Thank you.

      John | Illustrator | Beaverton, Oregon

      1 Reply Last reply Reply Quote 0
      • GaieusG Offline
        Gaieus
        last edited by

        Imagine you take a couple of neighbouring snapshots from GE and simply "stitch" them together with this tool in no time!

        Thanks BTM! 👍

        Gai...

        1 Reply Last reply Reply Quote 0
        • pilouP Offline
          pilou
          last edited by

          No possible to make this with automatic process? (Merge points)
          Exploring all points! ❓

          Frenchy Pilou
          Is beautiful that please without concept!
          My Little site :)

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

            @unknownuser said:

            No possible to make this with automatic process? (Merge points)
            Exploring all points! ❓

            Actually, I was thinking about something like this initially, before making the scripts. It would go through the entire selection, find which points were close to each-other, then move them together.

            I didn't try it though, because I would imagine that it would be extremely slow, having to find the distance between every single point that's part of the selection.

            To put the amount of times it would have to find the distance between 2 points into perspective, (I think) the equation for possible lines between a number of points(a) is:
            (a-1)÷2=b
            ab = c = amount of equations necessary.

            …so if you have 60 vertices in the selection, it would need to find the distance between points 1770 times.
            60 - 1 = 59
            59 ÷ 2 = 29.5
            29.5 x 60= 1770

            …So yes, it's possible, but maybe slow, unless used with a fairly low amount of vertices in the selection.

            Nonetheless, I'll try it sometime soon, but first I'm going to start getting some visualizations working with the current scripts. 😉 Maybe I'll make it highlight affected points in yellow, and the point they'll move to in blue or something.

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

              This script is really coming along nicely, good work!

              As for stitching together terrains...it could work, but there is a good chance it will have overlap. That overlap wil still need to be cleaned by hand. I'd be interested in seeing a demo on that Gaieus if you get around to it.

              Chris

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

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

                @chris fullmer said:

                This script is really coming along nicely, good work!

                As for stitching together terrains...it could work, but there is a good chance it will have overlap. That overlap wil still need to be cleaned by hand. I'd be interested in seeing a demo on that Gaieus if you get around to it.

                Chris

                …I don't know exactly what GE terrains look like, but you could probably overlap them, and select all geometry of one of the terrains; then you could use Merge Points to Lines, probably using endpoints, with a small enough max radius. As for the messy parts, the Merge Points tool could probably help fix them up some.

                I'm saying 'probably' a lot, because I've never done it, and, as I mentioned, I don't know what GE terrains' geometry look like.

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

                  Their geometry comes in very cleanly. But when you take lots of snapshots, the different terrains don't actually match up very well. So it is those interesections that most people want to clean up. This tool looks very promising for that!

                  Chris

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

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

                    …Anyways, If the above doesn't work, which I don't know when it comes to having more than 2 snapshots, I think I know a way to make a script that would work.

                    @unknownuser said:

                    Actually, I was thinking about something like this initially, before making the scripts. It would go through the entire selection, find which points were close to each-other, then move them together.

                    I didn't try it though, because I would imagine that it would be extremely slow, having to find the distance between every single point that's part of the selection.

                    If it turns out it runs faster than I'd expect, it would do this:

                    • setting the 'affect radius'
                    • taking the selected vertices and finding the distance between each one. If the distance between 2 points is smaller then the 'affect radius', and if it's smaller than the distance between the point and any other point, find the halfway point between the 2 points and move them both there.

                    1 Reply Last reply Reply Quote 0
                    • GaieusG Offline
                      Gaieus
                      last edited by

                      @chris fullmer said:

                      As for stitching together terrains...it could work, but there is a good chance it will have overlap. That overlap wil still need to be cleaned by hand. I'd be interested in seeing a demo on that Gaieus if you get around to it.

                      Yeah, I actually have a bigger area to cover and have been encouraging myself to get to work on it for weeks now. Maybe I'll give it a try and make some "progress report" on how it is going.

                      @unknownuser said:

                      I don't know what GE terrains' geometry look like.

                      Actually the case with GE is that it's streaming nicely but it's achieved by some good "level of detail" engine (both for the imagery and the terrain details) so if you want to grab a bigger area from (obviously) a bigger distance/height, the details are low therefore if you want to cover that area as detailed as possible, you have to go closer but then it means that you also have to pan aside, snapshot another one etc. and you end up with a bunch of pieces that need to be stitched together if you want something else than simply geolocating.

                      Otherwise it's just a regular TIN


                      Keep these ideas coming along and we'll also bug you with ours. 😉

                      Gai...

                      1 Reply Last reply Reply Quote 0
                      • JClementsJ Offline
                        JClements
                        last edited by

                        ❓
                        The script does not quite work for me like what is shown in the video.

                        Perhaps I copied the wrong files to the Plugin directory?

                        From the ZIP folder I copied the two .rb's shown below:


                        Files.png

                        John | Illustrator | Beaverton, Oregon

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

                          Hi John, I think you just need to copy those 2 .rb files into your plugins folder. They don't need to be in the subfolder - unless I'm missing something. I'll edit that out if its wrong.

                          @BTM - The reason that the class variables are not working correctly (meaning they are not keeping their value during the entire SU session) is because you are declaring the variable in your activate method. So everytime the activate the tool gets activated, it resets the @@max_weld_distance variable back to 0.0.to_l.

                          So what you want to do is declare that variable inside the class, outside of the methods. Like this:

                          class MergePoints @@max_weld_distance=0.0.to_l

                          I know it works, and I think that is the correct way to do it. it feels weird to have code not wrapped up in a method....

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

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

                            @chris fullmer said:

                            Hi John, I think you just need to copy those 2 .rb files into your plugins folder. They don't need to be in the subfolder - unless I'm missing something. I'll edit that out if its wrong.

                            Chris, you're right, they both go into the plugins folder.

                            @chris fullmer said:

                            @BTM - The reason that the class variables are not working correctly (meaning they are not keeping their value during the entire SU session) is because you are declaring the variable in your activate method. So everytime the activate the tool gets activated, it resets the @@max_weld_distance variable back to 0.0.to_l.

                            I know that the variable needs to be outside of a method, but with things like
                            @@max_weld_distance=1.to_l if not @@max_weld_distance
                            it would call it an uninitialized variable, and give an error message.

                            @chris fullmer said:

                            So what you want to do is declare that variable inside the class, outside of the methods. Like this:

                            class MergePoints @@max_weld_distance=0.0.to_l

                            ☀ It does work! I've been trying if functions, (so that if @@max_wld_distance doesn't have a value, it gets set to 0.0.to_l), but I kept getting error messages, and I guess that an if function isn't necessary. 😄

                            1 Reply Last reply Reply Quote 0
                            • JClementsJ Offline
                              JClements
                              last edited by

                              OK,

                              I guess my original download of the two .rb's DID work. It was the UI that threw me off.

                              When I selected the Merge Points submenu option, I expected the Dialog box to appear, but none did.

                              1)
                              Only by accident did I discover I had to hit the [Enter] key to display it.

                              Question, shouldn't the dialog appear as soon as you select Merge Points from the submenu?

                              Also, if that dialog or the Taskbar could include a message to "press [Enter] to change value" that would be helpful (if you don't use the script frequently, then it may take a bit of experimentation to use it properly 😄 )

                              2)
                              Regarding Merge Points to Line, it seems to do just the opposite. The dialog box appears when you first select it from the submenu, but you can't recall the dialog by pressing [Enter], you have to go back to the submenu. Can [Enter] be used to recall the appropriate dialog too?

                              3)
                              Once used Undo doesn't work well. Is there a way to undo all changes performed between mouse-clicks at once?

                              John | Illustrator | Beaverton, Oregon

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

                                @jclements said:

                                OK,

                                I guess my original download of the two .rb's DID work. It was the UI that threw me off.

                                When I selected the Merge Points submenu option, I expected the Dialog box to appear, but none did.

                                1)
                                Only by accident did I discover I had to hit the [Enter] key to display it.

                                Question, shouldn't the dialog appear as soon as you select Merge Points from the submenu?

                                Also, if that dialog or the Taskbar could include a message to "press [Enter] to change value" that would be helpful (if you don't use the script frequently, then it may take a bit of experimentation to use it properly 😄 )

                                2)
                                Regarding Merge Points to Line, it seems to do just the opposite. The dialog box appears when you first select it from the submenu, but you can't recall the dialog by pressing [Enter], you have to go back to the submenu. Can [Enter] be used to recall the appropriate dialog too?

                                3)
                                Once used Undo doesn't work well. Is there a way to undo all changes performed between mouse-clicks at once?

                                OK, I'll address some of these issues soon. I'm adding "Press Enter/ Return to set radius" in the status box for the Merge Points tool in the next release. As for the dialogue appearing as soon as you select the tool, I find it easier to use it like a normal tool with a radius, such as the smoove tool does. I want to get the VCB working later too, then it would save a lot of confusion, but that seems a bit tricky to do.

                                As for the 'Merge Points to Lines' tool, it affects the model upon activation, so I don't see why you'd need to open it again.

                                …Lastly, I think there's a method I could find somewheres that would make all the transformations into one action for undo, but I'm not sure. I'll look into it.

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

                                  Here's a little video of me trying to use the 'Merge Points to Lines' tool to do some stitching with GE terrains.
                                  http://www.screencast.com/t/s1SkJiUjH
                                  It's 3 minutes long, because I kept changing styles, softening, etc., and I couldn't use my toolbar due to the size of the window. 😆

                                  steps:

                                  • explode, unhide and unsoften 2 snapshots from google earth.

                                  • figure out what the max range for the tool should be. (I use line tool to see how much things would have to move, then make the max about 25% bigger than that, just in case.)

                                  • completely select one of the meshes.

                                  • use the 'Merge Points to Lines' tool.

                                  • Select both meshes (because sketchup doesn't connect the points together automatically for some reason), and use intersect. Select the mesh, soften it, and fix any problem areas(there shouldn't be too many)

                                  • Repeat these steps to add other snapshots to the previous mesh.

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

                                    Thanks for this script. It will prove very handy.

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

                                      Great script!

                                      I just tested it and 2 things came up.

                                      1. I noticed that when I press undo after a point Merge operation it does not undo the entire procedure, rather breaks it down to individual line moves.
                                      2. I cannot get it to work if the geometry is in side a group.

                                      If those 2 issue can be addressed this would one of the most useful scripts out there! Well deserve a custom button I think, hint hint CADFather 😎

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

                                        Oh yes one more thing. Would be great if you can add a CTLR modifier to make the new mesh smooth. Oh I am just been greedy now. Great job 👍 !

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

                                          @chango70 said:

                                          1. I noticed that when I press undo after a point Merge operation it does not undo the entire procedure, rather breaks it down to individual line moves.

                                          I've got this working properly now, and it will be fixed in the next release for the tools.

                                          @chango70 said:

                                          1. I cannot get it to work if the geometry is inside a group.

                                          I'll try to get that fixed too, but maybe not for the next release.

                                          @chango70 said:

                                          Would be great if you can add a CTLR modifier to make the new mesh smooth.

                                          …I probably won't add this, but if I do decided to, it won't be anytime soon.

                                          Also as a side note, I'm planning on adding a toolbar for them, and am trying to figure out how to add a subfolder and a loader script. I've got the toolbar working, but not with a subfolder or loader, and having the files just sitting in the plugins folder is a bit annoying.

                                          1 Reply Last reply Reply Quote 0
                                          • CadFatherC Offline
                                            CadFather
                                            last edited by

                                            😒 😄

                                            pmerge_16.pngpmerge_24.png

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

                                            Advertisement