Terrain from contours - improve on native 'from contours'?
-
I have been trying to understand what the general accepted criteria is for "TINs". One site I have found ,which seems credible to me, states the segment length should be > then contour seperation. The rational for that is to avoid " flat triangles ".
Here are the links I found of interest. . Note the Harvard school link has good press for SU'
http://www.ian-ko.com/ Under resources check out the solution center
http://www.gsd.harvard.edu/gis/manual/contours/
Note these are more GIS centric and thus not one to one applicable to the limited SU intent for their TIN implementation. -
For comparison here is a TIN (picture of it) provided in the same project. I think the engineers set the parameters for their needs. A SB skin made from the contours "looks better" than one from the TIN and shows some site features better (such as the dirt road winding down the slope). Still they must be from the same dataset.
-
@pbacot
Here is a first result. Actually, considering that the terrain is rather regular and there are many contours closely spaced, I don't think it is necessary to have a very detailed grid (50 x 22 in the attached file).Note that I had to simplify the contours with Curvizard to keep an acceptable calculation time (here over 30 seconds, mostly related to the computation of the concave hull).
DN house contours - pbacot - 6 Jan 13 - results.skp
@Mac1
I am not familiar with TIN algorithms, but it seems the one posted by pbacot does not reflect the fine granularity of the contours.Fredo
-
Yes, I noticed the TIN was pretty simple. I am not sure I have the subset of readings they had for this project (would be interesting to compare to the output). Without having studied the process, I am guessing that more advanced extrapolation goes into creating contours. The civil engineer may have created the TIN for some soils or drainage analysis--and it may be just sufficient for those purposes.
Those terrains look great for OUR general purpose: showing the new construction in a simulation of the site. I would be curious to see it at a higher resolution of quads. I don't think 30 sec is that long, though I imagine the time goes up exponentially when you try to add a little more detail. As I noted there is a rough road on the slope, which can be made out in the contours, but not sure it registers on the final topo. Also there is part of a drainage ditch on the right. Such an area might want more detail, if ever a way is worked out for selective resolution in adjoining parts--or a way go back in a redo an area such that it can be joined to the rest....
But this definitely is giving a clean looking (without the oil-canning) surface with good geometry. Thanks for the effort and sharing the great results!
-
@pbacot said:
Those terrains look great for OUR general purpose: showing the new construction in a simulation of the site. I would be curious to see it at a higher resolution of quads. I don't think 30 sec is that long, though I imagine the time goes up exponentially when you try to add a little more detail.
Here is a more detailed reconstruction of the terrain, with a grid 120 x 53. This one takes less than a minute.
Indeed, the best would be to adjust the granularity of the mesh based on the resulting terrain shape itself (more than the density of the contours actually).
DN house contours - pbacot - 6 Jan 13 - results.skp
Fredo
-
Sorry to sound a little dumb but Fredo what is the process you're doing here?
- Start with imported contours
- run through Curviloft
-
Yes, that's looking quite muscular. that's worth a minute, depending if you can handle the number of polygons in the end. Thanks for posting! Looks like progress is good.
-
@utiler said:
Sorry to sound a little dumb but Fredo what is the process you're doing here?
- Start with imported contours
- run through Curviloft
Toposhaper uses a different algorithm which is more adapted to terrains and can cope with connection of more than two contours (for example when you have a saddle). It also works on a quad mesh.
So it is a very different approach compared with Curviloft
Fredo
-
Thanks Fredo, so if I triangulated points with your triangulate plugin then ran toposhaper I'd get this result!!!!???
-
Nice evolution Fredo, I'm still waiting for this magical tool !! Keep up the good work and I'll hit the donate button again !!
-
Here is the terrain with a much higher definition 200 x 88, so around 35,000 triangles generated. Takes longer of course, but does not bring a lot more details compared with the low and medium definitions terrains.
DN house contours - pbacot - High Def.skp
Fredo
-
@utiler said:
Thanks Fredo, so if I triangulated points with your triangulate plugin then ran toposhaper I'd get this result!!!!???
With TopoShaper you really need to have contours as curves, not a set of altitude points. This is because the Terrain construction uses contours to delimit the zone of influence on points comprised between contours.
With a set of altitude points, the algorithm would be more based on Skinning, with Bezier or Nurbs methods, which is another kind of script (I can do it, but it would definitely not be very fast with Ruby only).
So, all you need is the contours and then run Toposhaper, as shown in previous videos and the video below
Fredo
PS: As far as I remember, I have not written (yet) a "triangulate plugin".
-
@unknownuser said:
With TopoShaper you really need to have contours as curves, not a set of altitude points. This is because the Terrain construction uses contours to delimit the zone of influence on points comprised between contours.
With a set of altitude points, the algorithm would be more based on Skinning, with Bezier or Nurbs methods, which is another kind of script (I can do it, but it would definitely not be very fast with Ruby only).
Fredo,
During my works I found a workaround with altitude points. I draw a high vertical line on each point (as they're usually components, it's a very fast operation), this way the sandbox is using contours instead of points, ignoring the bottom point of each line. Will this method work with your plugin ?
-
@panga said:
During my works I found a workaround with altitude points. I draw a high vertical line on each point (as they're usually components, it's a very fast operation), this way the sandbox is using contours instead of points, ignoring the bottom point of each line. Will this method work with your plugin ?
Unfortunately, it won't work. TopoShaper really needs contours to drive the interpolation. Keep in maind that with only altitude points, there are multiple solutions because you cannot isolate zones just with scarced points.
Fredo
-
Fredo, I assume Toposhaper is a work in progress and hasn't been released yet? I can't find it for download...
Cheers,
-
@utiler said:
Fredo, I assume Toposhaper is a work in progress and hasn't been released yet? I can't find it for download...
Cheers,
Correct, it is work in progress. However, I think I have done most of the algorithmics now and should be able to release a first simple version soon.
In the meantime, I am still interested in getting models of contours to test the plugin.
Fredo
-
OK, do you want them in DWG or SU? I'll send a few through....
-
I'm "cooking" one up in Sandbox right now. I'll send the file when it gets done. Taking about 10 min. to do "from contours". It's a nice one with hills and saddles.
-
Will the plugin work with an already triangulated surface?
Say I have imported and triangulated a set of XYZ data, and wish to turn it into a solid group like your final product, with vertical sides and a horizontal bottom. Is that possible?
-
Fredo, would you like contours in DWG or SU?
Advertisement