Paraboloids, Delaunay Triangulations, and Voronoi Diagrams

Generate some random points in a plane.

pts=RandomReal[{-2,2},{12,2}]

Graphics[{Blue,PointSize[0.02],Point[pts]},Frame->True]

Paraboloid

Plot the paraboloid z=(x^2)+(y^2).

paraboloid=Plot3D[x^2 + y^2, {x,-2,2},{y,-2,2}, PlotStyle->Directive[Opacity[0.5]],BoxRatios->{1,1,1}]

Project the points onto the paraboloid.

pts3D={#[[1]],#[[2]],(#[[1]])^2+ (#[[2]])^2}& /@ pts

pts3Dplot=Graphics3D[{Blue,PointSize[0.02],Point[pts3D]}];
Show[paraboloid,pts3Dplot]

Convex Hull and Delaunay Triangulation

Draw the paraboloid, points, and convex hull.

hull=HighlightMesh[ConvexHullMesh[pts3D],Style[1,Black]];
Show[paraboloid,pts3Dplot,hull]

View the convex hull from the negative z axis.

hullFromBelow=ConvexHullMesh[pts3D,ViewVector->{{0,0,-1000},{0,0,0}}]

Draw the Delaunay triangulation of the points in the plane.

delaunayTriangulation=HighlightMesh[DelaunayMesh[pts],Style[0,Black]]

Compare the convex hull from below with the Delaunay triangulation.

GraphicsRow[{hullFromBelow,delaunayTriangulation}]

Tangent Planes and Voronoi Diagram

Compute the plane tangent to each of the points that we projected to the paraboloid. The tangent plane at (a, b, (a^2)+(b^2)) is given by z=2a x +2 b y-(a^2)-(b^2).

eqsOfPlanes=2#[[1]]x+2#[[2]]y-(#[[1]])^2-(#[[2]])^2 &/@pts

Plot the planes.

plotsOfPlanes=Plot3D[eqsOfPlanes,{x,-2,2},{y,-2,2}]

Each plane really is tangent to the paraboloid at one of the projected points.

Show[plotsOfPlanes,paraboloid,pts3Dplot]

View the planes from the positive z axis.

planesFromAbove=Show[plotsOfPlanes,ViewVector->{{0,0,1000},{0,0,0}}]

Draw the Voronoi diagram of the points in the plane.

voronoiDiagram=HighlightMesh[VoronoiMesh[pts],Style[1,Black]]

Compare the planes from above with the Voronoi diagram.

GraphicsRow[{planesFromAbove,voronoiDiagram}]