title: How to plot 3D contours on a 3D surface (built by patch) in MATLAB?
body: <p>I just created a 3D surface in <code>MATLAB</code> using the code below :</p>
  
  <pre><code>p = patch ( 'Vertices' , XYZ , 'Faces' , F ) ;
  
  set ( gca , 'CLim' , [-2000 1500] ) ;
  
  set ( p , 'FaceColor' , 'interp' , 'FaceVertexCData' , V , 'EdgeColor' , 'none' , ...
  
  ... 'CDataMapping' , 'scaled' ) ;
  
  axis 'equal'; 
  axis 'tight';
  set(gca, 'YDir','normal');
  </code></pre>
  
  <p>where <code>XYZ</code> is a <code>352x3</code> matrix containing coordinates of the points of the 3D surface.
  <code>F</code> is a <code>700x3</code> matrix containing the faces which connect the points.
  <code>V</code> is a <code>352x1</code> matrix containing the values on each of the 352 points of the 3D surface.</p>
  
  <p><strong>Now this is the question : <em>How can I plot 3D contours on the surface !!?</em></strong></p>
  
  <p>I've already tried <code>contour3</code> function, but it requires the input matrices to be of the different dimensions than now. ( I may need to use meshgrid, but unfortunately my XYZ points are irregularly distributed. However I'm not sure whether I can do this, since I'm using the patch function. )</p>
  
  <p>Please help me on this.</p>