[REQ] GoogleEarth Meshes boolean subtract
-
@tig said:
Can't you simply group the two mesh groups together and explode them together inside the new group - then use one of the many erase-coplanar-edges tools available or manually erase unwanted edge divisions...
already tried it, both with 2D Boolean (which joins the two groups into one with everything exploded inside) and also by joining the two groups and exploding the stuff inside.
then using CleanUo³. For some reason, the coplanar faces of meshes do not disappear.
-
@chris fullmer said:
What if the plugin sort of turned the terrains into volumes by drawing vertical faces downards on the sides, and then a face on the bottom to close the whole thing off into a sketrchup solid. Then use the solid tools to boolean add them together.
That could work. It would be a plugin for pro users only though because of the solids tools usage. And I'm not sure how smart it would be about the GE image emerging. But it could work......maybe.
maybe it could work. It doesnt even need to be a real boolean. Wait a bit, I will try to draw what I imagined.
-
@aceshigh said:
they are overlapping a bit on the last row of triangles. The textures will flicker since they are coplanar faces.
There weren't any overlapping faces in the example I posted and no flickering as I orbited
-
two different meshes with overlapping parts. Notice the bounding boxes. Imagine the bounding boxes as the areas where one mesh should be cut from the other.
MAYBE the bounding boxes for the operation should be a bit higher and lower than the real ones, I dont know... if the lowest or highest areas of the mesh are in the border, the cut between two meshes would be more "garanteed" if the bounding box was a bit larger in the vertical?
subtract one mesh from the other. In the example, I simply deleted the triangles, but this doesnt work in real life, because the triangles in one mesh dont quite match the triangles from the other mesh, and a gap between the two meshes may appear (or they still may overlap).
the perfect solution is to ZORRO out one mesh from the other and then delete the overlapping triangles.
I imagine one bounding box exactly ZORROING through the other mesh, and then all the parts of the second mesh, which are inside the first mesh bounding box, being deleted.
-
@dave r said:
@aceshigh said:
they are overlapping a bit on the last row of triangles. The textures will flicker since they are coplanar faces.
There weren't any overlapping faces in the example I posted and no flickering as I orbited
to me, it seems clear the red marked area is overlapping each other... there is a mix of dark and light green triangles there, thats usually what happens when there is overlapping faces, and when you orbit, there is flickering between the triangles, since the program doesnt know if it displays the triangles of one or the other mesh.
if it didnt happen to you, you were lucky. I made several tries with both Sketchup 7 and 8 and it always happens.
either way, you have only two meshes, so only a small part of each mesh overlaps the other. Its easy to overlap so little when you have only two small meshes. When you try to mount a giant gigsaw puzzle by having to select dozens of different meshes, you will end up with huge parts overlapping each other, and you will see the flickering when getting near and moving the camera (or even when importing to other program and rendering)
-
As I recall, what Google had said about importing GE terrains in SU8 is that now it is much more accurate, because it now imports the actual Google Earth geometry. So therefore, terrains should match up perfectly.
So when you import adjacent terrains, even if they are net perfectly aligned, the vertices should align perfectly, because it is importing the Google Earth geometry.
The one MAJOR exception is that they limit the amount of vertices imported to 1,000. So if the snapshot includes more than 1,000 vertices, then SU will use its own algorithm to simplify the mesh. This simplification can reduce vertices, move their position on the x,y AND Z directions, and that will cause the overlapping vertices to not align.
I had written a tool at one point that would help test it the terrain had been downsampled by SketchUp, so I would know that I needed to zoom in closer to get a higher resolution terrain. Because again, theoretically, if SketchUp does not downsample the terrain, then the vertices really should align perfectly.
I'm not completely sure that all of the above is true. It is largely my recollection of what they had told us.
-
hi Chris. I just imported two small GoogleEarth meshes, using Sketchup 8.
600 triangles each (i suppose... each one had 300 faces).
still no luck. There was overlapping and nope, the triangles from each mesh did not mach perfectly the triangles from the other mesh.
-
@aceshigh said:
hi Chris. I just imported two small GoogleEarth meshes, using Sketchup 8.
600 triangles each (i suppose... each one had 300 faces).
still no luck. There was overlapping and nope, the triangles from each mesh did not mach perfectly the triangles from the other mesh.
Well, there goes that theory! Did you try the manual way I described? Maybe I'll try that right now.
-
bleah, the edges are not necessarily co-planar. So its not easy to drop vertical lines at the corners and turn the thing into a big cube.
Bummer,
Chris
-
@chris fullmer said:
bleah, the edges are not necessarily co-planar. So its not easy to drop vertical lines at the corners and turn the thing into a big cube.
Bummer,
Chris
I would give you some suggestions... if I even knew what you mean
doesnt Sketchup have absolute world coordinates? Wouldnt the vertical lines just drop till a specific absolute world coordinate, at all 4 corners of an imported mesh?
-
Here is how I did it. I created and grouped the four vertical faces surrounding the 1st terrain mesh using the bounding box corners. Then I did an intersect_with the faces and the 2nd terrain group and added the intersection entities to the entities of the 2nd terrain group. I then searched the entities of the 2nd terrain group for hidden edges that fell within the bounds of the 1st terrain group and deleted them.
-
you did that manually?
-
@aceshigh said:
you did that manually?
No, with a plugin that I threw together last night. Check your PM inbox.
-
wow, thanks a lot!
it works flawlessly!
does it makes any difference which mesh I select first and 2nd?
how the plugin decides from which mesh it will subtract and which one it will keep intact?
this is important because sometimes you may have two meshes at different resolutions... and you may want to keep the higher resolution mesh.
I just made a test where the smaller, hi-res mesh was almost entirely deleted (only left a thin strip, that was outside the bounding box of the bigger mesh), while the ideal solution would be to keep the higher res mesh and cut the hole in the bigger, lower res mesh.
again, thanks a lot!
-
@sdmitch said:
It all depends on the order that it finds them in the model so the selection order doesn't matter.
thanks. Can you make it matter? I was editing my above message while you were writing here, and I said the reason the order would be important.
btw, I also noticed there is usually a small gap created between the two meshes. Maybe the bounding box from Sketchup is not perfectly parallel to the mesh edges?
I am also attaching two meshes where some triangles disappear when running the plugin. Maybe if we could invert the order it result in no missing triangles, I am not sure.
-
It all depends on the order that it finds them in the model so the selection order doesn't matter.
Now that I know that order might be important, I will add an input so that the default order can be reversed.
-
Yes there are sometimes tiny usually vertical gaps because the meshes aren't exactly the same vertically or horizontally in the overlap areas.
-
Looks like I need to extend the faces vertically especially on the low side because, in yout test model, the bounding box of the mesh on the right surfaces momentarily on the mesh to the left which would result in some triangles along that edge not to be "cut" by the intersection.
-
if you view an 'Add Location' 'Terrain' with 'Top View' [ON] + 'Parallel Projection' [ON]+ 'Hidden Geometry' [ON] + 'Face Style .. Shaded' you will see that the mesh is regular EXCEPT for the border.
If you 'Unlock' this 'Terrain' then select all followed by alt/shift/selection-Box over the good mesh it will leave the borders selected for deletion.
The is under all the GE terrains, if you delete the borders, this good mesh will align with its neighbors.
A useful plugin only needs to 'Unlock Terrain' >> 'Select Borders' >> 'Delete Border Mesh'.
When you do this to a set of overlapping terrains they do mesh, but you can also delete the overlaps before exploding all into a new single mesh. I found I rarely needed to even intersect after this process.
I've got a half done tutorial if your interested.
john
-
the new version is working very well. The ability to change the order worked well and was definitly important (I made the test with two meshes in different resolutions... first time I tried, the higher res mesh was deleted... I reversed the order and was able to keep the higher res mesh. Even if I have to undo and redo the operation selecting the other option, its still like 1/10th of the time needed to manually ZORRO (use the Zorro plugin) to subtract one mesh from the other. Maybe 1/20th of the time!
Multiply that by 100 different meshes and you get a HUGE time gain!
Thanks a lot. Hope you find a solution to the small gaps betwen meshes, which can be weird when rendering a close-up animation.
if thats not possible I wonder if there is some plugin I can use to create some small cover for the gap? Like, joining the two meshes?
Advertisement