I have a regular grid. I need to subtract some irregular part from it as shown in the figure. I know the coordinates of the portion to be subtracted. How can I polygonize the rest of the grid after subtracting that irregular portion? There may be a number of ways. Could any one give me some suggestions?

**0**

# Polygonizing a grid after subtracting an irregular portion

###
#2
Members - Reputation: **508**

Posted 13 February 2013 - 04:47 PM

I have a regular grid. I need to subtract some irregular part from it as shown in the figure. I know the coordinates of the portion to be subtracted. How can I polygonize the rest of the grid after subtracting that irregular portion? There may be a number of ways. Could any one give me some suggestions?

Construct a Delaunay triangulation from the vertices?

###
#6
Members - Reputation: **508**

Posted 14 February 2013 - 12:26 PM

Well, you could triangulate the boundary, do an intersection test of all the grid points against the triangles, remove those which intersect then retriangulate with all remaining points?Here I only know the grid points And the boundary points to be subtracted. Boundary points may not fall within the grid points. Then with which coordintes I need to construct the delaunay triangulation? Could you explain?

Wouldn't be particularly efficient but should work I guess...

If using python, Shapely is a nice library for stuff like this.

###
#8
Members - Reputation: **200**

Posted 15 February 2013 - 12:34 PM

Yes, I am looking for some triangulation method suitable for my work and which will also be efficient.

I have some question. When boundaries are extracted from images, I need to know how surface or 3D model are usually reconstructed from edges. As i am doing something similar, a similar kind of aproach may helpful to me.

Here I also need to interpolate color values. That's why I preferred about constructing a grid so that color values can be extractd at close intervals. Please suggest me about any better or convenient approach.

###
#9
Members - Reputation: **931**

Posted 15 February 2013 - 02:19 PM

Well, for triangulation Triangle (2D) or QHull (2D, 3D) might work for you. I've only worked with Triangle, but found it easy to work with and it supports holes.

If you're trying to create a polygon mesh out of the results, it should be pretty trivial once you have your delaunay triangulation done. As easy as creating a triangle list out of the results.

###
#10
Members - Reputation: **200**

Posted 15 February 2013 - 06:20 PM

Thank you. I am looking for some code for delaunay triangulation which takes as input as a set of points and perform triangulation. The inside whole should be reflected in the output. I know MATLAB can perform this. But I am looking for C++ code.

###
#11
Members - Reputation: **931**

Posted 15 February 2013 - 09:28 PM

Triangle does that (assuming 2D based on OP). Nothing forces you to use it as a command line interface.

http://www.cs.cmu.edu/~quake/triangle.delaunay.html

(edit)

It comes with the source code as a zip or shar. If your project is for commercial purposes you may have to contact them to find out how you might get a license, though.

**Edited by amrazek111, 15 February 2013 - 09:31 PM.**

###
#12
Members - Reputation: **200**

Posted 18 February 2013 - 12:25 PM

Just one question, I would like to know when boundaries are extracted from images, what is the usual way to construct surface from images, is it delaunay triangulation? Or is there any other approach? My requirement is that I need to extract 3D geometry from the images and at the same time, it is supposed to preserve color.