Skilled SketchUp Person Needed

I work with a non-profit institute that is working to help provide clean water and sanitation for a village in Cameroon, Africa. We have several volunteers working in the community on this. In surveying the water sources we have discovered that pit latrines are contaminating the ground water that supplies the communities’ wells and drinking water. We have mapped all the wells and all the latrines in the village and put them in SketchUp along with topographic data from Google Earth. We have measured the depth of water in each well which tells us the position of the water table (this varies between dry and rainy season). We want to make a contour map of the water table. Our volunteers are not expert in SketchUp. They don’t know how to accomplish this. We are looking for someone skilled in SketchUp who might be willing to volunteer some time to help us create this map (the X,Y position of all the wells are already in the SketchUp file). You can see something about the project on our website at

Anyone out there willing to help?

You say that you have the X & Y values of each well.
You also need the Z’ value for the ‘top’ of each well too.
From that you can establish a Z value for the water level [ from the Z’ - depth ]
From the XYZ of the water-level it’d be simple enough to run a simple script to add a guide-point at each well’s water-level.
There are several scripts to add a surface based on those points.
There are then scripts to make a contoured representation of that surface at desired vertical centers…
It you want to post [or PM to me] the SKP file with what data you have, then I’m sure we could help…


You can have a look at Fredos Toposhaper to generate the landscape with given Z-coordinates…


I am attaching the file. I omitted a detailed aerial photo because it makes the file very large.
The Google Earth terrain is on its own layer.
Houses, latrines, springs and wells are all on their own layers. All the components are at -5’ elevation (I can’t remember why).
For each well we have the well depth, the depth of water in the rainy season and the depth of water in the dry season. This information has been put in the well name. The well name contains the information in this order: Well #: depth of well, rainy season depth of water, dry season depth of water.
Thanks to your help I have extracted all of that into an excel spreadsheet if that is useful. The spreadsheet has X,Y,Z coordinates of each well, well number, depth of well, rainy season depth of water, dry season depth of water. Unfortunately it does not have the Z coordinate of the terrain for each well. If we could drop all the components onto the Google Earth terrain we could extract the X,Y,Z coordinates again (File>Generate Report) and then compute the Z coordinates of water in the rainy and dry seasons in the spreadsheet if that were useful.
WellMapTest.skp (1.8 MB)

You seem to have most of the data needed…
Albeit in a somewhat convoluted format…

Others might want to jump in with ideas, but as I see it…
We drop the wells onto the ‘surface’
We get the Z of each well.
We read each well’s desc and parse out the two ‘depths’.
We make two layers/groups for the seasons’ depths.
We add guide-points at the found depths, below each well - one of each season, in its appropriate group, on its own layer.
I think we omit ‘un-surveyed’ wells - otherwise the surface gets skewed
Now we process the guide-points in each group, to make a ‘surface’ from those points.
Next we add contours at say 1’ c/c through the two surfaces.
Now you have a series of contours for the two seasons’ depths…

Give we a little time to consolidate this…

I’m excited to see the result!

I now have it making the three surfaces,
BUT - a few points…
Are the depths in ‘meters’ ?
I noticed one or two report with 6.2m etc
If not, then what are they in [feet?], and are the ones with a ‘m’ suffix still in meters ?
The ‘unknown’ ones… do you want them mapping at all ?
Any ‘unmeasured’ ones, do they revert to the ‘depth’ ?

Once this is cleared up a contour map should be readily straightforward…

Also… how do you want to ‘extract data’ from what you get as meshes/contours ?

All depths are in meters, whether marked with “m” or not. I think the file was done with feet and inches. It could be changed to meters, or one could just input values in meters e.g. input 1 M and 39.37” shows up in the file.

Naturally I want to keep the wells that say “not measured” on the map for purposes of seeing where all the wells are in plan view (X,Y is good). However, they should be left out of the points determining the contours of the water table in both dry & rainy season.

The ones which have one value “unknown” should be left out for determining the contours of the water table in that season. E.g. if rainy season depth is unknown, then it will be left out of the contours for raining season, but will be left in for contours of dry season. (I’m just saying what would be preferred. I don’t know if it is reasonably achievable.)

Regarding extracting data from the meshes, contours, I’m not sure at this point. I have to consult with our water specialist. This reminds me that some of the wells are dry in the dry season. Consequently the water table is clearly lower than the bottom of those wells. So those wells give us some information, but not complete, about where the water table is. i.e. we know it is below that point but not how far below.

We will be looking for clues regarding flow of water. We will probably look at how that coincides (or doesn’t) with the ground surface. We will want to make some cross sections through the water table. Sorry I can’t be clearer about this.

Here’s my first go.

Outline of my steps... [Note all 'public' Plugins are available form ]
Lifted all Wells up into the sky. Used **SmartDrop** [by a4architect] to drop them back onto the Google Surface - so their head-levels are as near as we can get. Ran my custom script **** [*attached*] to parse out the Wells' '#refs' and their 'meter' for the three values in their name = depth/rainy/dry where applicable - note: if 'not measured' or 'unknown' etc that point was skipped. This script makes groups and layers containing guide-points, these are set at well-depth, well-rainy and well-dry levels; there is also one containing the #ref tags... Then used my **Triangulate Points [TIG]** tool to make a surface from each set of guide-points. Then used my **ContourMaker** on those surfaces at 5' c/c. Note: also added contours onto the Google Surface... Added a few Scene-tabs to make navigation easier... Saved as v8 and attached SKP. WellMapTest.skp (2.7 MB) TIG-Wells.rb (2.4 KB)

Hope this helps…

This is wonderful.
A couple of questions:

• Is it possible to exaggerate the Z direction? Since the topography is relatively flat and the area is fairly large, it is hard to see how things slope when looking at the 3D surface or contours.
o Is there any easy way to exaggerate by different amounts and undo?
o I guess one could scale the blocks.
• Is there a way to show the elevation of each contour? That would help a lot when viewing contours in plan view.


You could scale everything in Z x10, but then remember that any points you get are also exaggerated.

There is a Utilities tool - ‘Query’ - which reports the XYZ of a selected point - so clicking on a contour would give its height…
Similarly for a guide-point on the well depth/rainy/dry guide-points…

I made a test copy of the file to check a few things (Attached).
I colored the different contours: blue for rainy season, orange for dry season. I removed the Google earth texture because it was hard to read with everything else. I would probably make a copy with and without texture so we could see it both ways.
I made scenes that are parallel projection top view zoomed to the wells, for rainy, dry and surface. Also a perspective view where the anomaly occurs.
I scaled everything 10x in the Z direction.

There seems to be an anomaly in the rainy and dry season surfaces. They rise above the ground surface at one point. Do you know why that is?

Could we drop the houses and the latrines onto the Google Earth terrain in the unscaled file?
WellMapTestTIG-ZScal10.skp (1.6 MB)

The anomaly is probably due to the fact that the points forming the wells are independent of the Google-surface itself.
So whilst in reality you might have a ‘valley’ between two sets of wells the contours formed between their depths etc might well appear oddly as they have no ‘knowledge’ of the valley.
So you have insufficient well-points relative to the surface contours to give mesh that matches closely…
One idea would be to locate a ‘mock well’ [“#mock”] at the bottom of known valleys - then drop it onto the surface.
Give it 0 depth/rainy/dry values ?
Alternatively inset an edge break [or two] in the surface which is odd and move it down to the real surface - then re-Contour…
Then either way the contour map of the wells might mimic the real surface more closely.

In the ‘unscaled’ version - to drop the houses, latrines, springs etc onto the Google-surface, try the following steps…
Switch off all layers except those you want like ‘Houses’ etc.
Select All and then use Move in Z - hold-Shift to constrain in the blue/Z - click in the sky well above the Google-surface maximum height.
Switch on the Google-surface layer.
Use ‘SmartDrop’ to get all of the selected items dropped onto the Google-surface.

Hi TIG, I was playing with the anomalies.
Regarding the surface you made for rainy season (and for each other season), does it have a point at the water depth below each well? And only those points? No interpolated ones? I ask because if so, then I can deal with the anomaly fairly simply and probably fairly accurately. Some of the triangulation is between points that are very distant from each other. I can simply eliminate those edges. i.e. any edges that seem unjustified.

I did that a bit and things began to make more sense. But then I discovered some other odd conditions. It might make more sense for me to try to triangulate the surface myself manually.

Would it be possible to send me the file with just the points, not the surface or contours? i.e. the rainy season points on a layer, dry season points on a layer, depth on a layer?

Just edit the Model Select the points-group you want, open a new SKP and Edit > Paste-in-Place.
Alternatively make a copy of the main SKP.
Switch ALL layers ON except the points-group’s layer.
Select All and [delete].
Switch the points-group layer back on.
Model-Info > Statistics > Purge Unused to tidy up…
Either way you end up with a new SKP containing just the points-group you want…

Anyway... here's an 'Adjusted' version - I intersected the surface mesh for each of the three 'depths' and intersected it with the main Google-surface. I then deleted the 'flaps which projected through the surface [the intersect cut form a natural break line]. I then redid the contours for each depth and replaced the earlier version. Now the SKP has three depths surfaces and contours which never project through the existing Google-surface... WellMapTest-Adjusted.skp (2.7 MB)

Thanks TIG. This is great.
May I credit you as a contributor to our project?

If you must !