[postgis-users] FW: Old question resurfacing

Basques, Bob (CI-StPaul) bob.basques at ci.stpaul.mn.us
Wed Dec 18 09:06:02 PST 2013



From: Basques, Bob (CI-StPaul)
Sent: Wednesday, December 18, 2013 11:04 AM
To: 'PostGIS Users Discussion'
Subject: RE: [postgis-users] Old question resurfacing

Rémi,

I’ve already played around with Cloud Compare, found it a few weeks ago during another research cycle.

I think the first step is to get a chunk of data into Postgres to test live queries with.  I’ll focus on this in the near term, not going to happen immediately though, lot’s of other paid work in the way I’m afraid.  :c)

I know there are methods out there for draping “a” image on a surface, but when you try more than one image, then it becomes a problem.  We have all our data sources separated into separate overlays for display, being able to re-use these services for end user control of layer visibility will be an important need moving forward for us.

Bobb



From: postgis-users-bounces at lists.osgeo.org<mailto:postgis-users-bounces at lists.osgeo.org> [mailto:postgis-users-bounces at lists.osgeo.org] On Behalf Of Rémi Cura
Sent: Wednesday, December 18, 2013 10:48 AM
To: PostGIS Users Discussion
Subject: Re: [postgis-users] Old question resurfacing

Hey,
getting something similar to a surface visualization out of points without computing explicit surface is actively researched.

Usually it's very easy for a graphic card (GC) to drape a texture over a geometry. It is its main purpose. I wouldn't worry too much about that (already done in WebGL). Of course it would be cool to get some color out of raster, maybe with postgis raster (I just began to test it, actually trying to do the inverse : create DEM from points).

What you call average vector is the estimated normal vector of the point.
It can be estimated with various methods and is required for almost everything (including display to get shadows or lighting effects very useful to better "understand" the surface for an human eye).

If it's just for visualization, you can let the GC do the work. It is incredibly fast. (various "shaders" do it).

If you need normal for other computing (most algorithm use it), you may want to pre-compute.
This can become tricky for 3 reasons :
_it is in fact a local surface interpolation. So, what surface do you choose, and how local is it (plan, sphere, polynom , fixed distance, fixed number of neighbors ...)
_the computing always involve nearest neighbors. Needless to say you *have* to use a LOD (for example, compute per patch, on small patch, or use an octree).
_How to store it? You can do it in pointcloud of course but is is a little boring. A dirty workaround would be to store it as float[3][]. Usually in point cloud software it is stored like X,Y,Z and other attributes, something like n_x,n_y ...

If you want to play with point cloud and see various option to visualize with normal based lighting, and to compute normal with various parameters, a very good open source software is CloudCompare<http://www.danielgm.net/cc/>. It is easy (like drag and drop point cloud file) and powerful.

Cheers,
Rémi-C



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/postgis-users/attachments/20131218/d3712c9d/attachment.html>


More information about the postgis-users mailing list