Small circles at mesh nodes

ParametricPlot[
    v {Cos[u], Sin[u]}, {u, 0, 2 Pi}, {v, 1, 3}, 
    Mesh   -> {15, 3},
    Epilog -> {
        PointSize @ .02, Red, 
        Point @ Catenate @ Array[
            Function[{u, v}, v {Cos[u], Sin[u]}], 
            {15 + 2, 3 + 2}, 
            {{0, 2 Pi}, {1, 3}}
        ]
}]

enter image description here

As pointed by Shutao TANG, Catenate is new so one can replace it with Flatten[#,1]&.

Points on positive side of x axis are doubled since it is the beginning and the end of u domain. But I left them for generality, like u -> {0, 1} cases.


Due to Catenate[] is a new function for V10, here is a solution for V9 or earlier version:

You just need to repalce ParametricPlot[] with Table[] and add the interval values Pi/8 and 1 to generate the intersection coordinates.

Show[
 {ParametricPlot[v {Cos[u], Sin[u]}, {u, 0, 2 Pi}, {v, 1, 3}, 
   Mesh -> {15, 3}], 
  Graphics[
   {Red, PointSize[Medium], 
    Point /@ 
     Table[
      v {Cos[u], Sin[u]}, 
      {u, 0, 2 Pi, Pi/8}, {v, 1, 3, 1/2}]}]}
]

enter image description here


Use a one-parameter ParametricPlot to get the mesh points:

p2 = ParametricPlot[ # {Cos[u], Sin[u]} & /@ Range[1, 3, .5], {u, 0, 2 π}, 
   Mesh -> {Range[0, 2 Pi, 2 π/16]}, PlotStyle -> None, 
   MeshStyle -> Directive[Red, PointSize[Large]], Axes -> False]

enter image description here

Combine it with the original two-parameter plot using Show or using Epilog:

Show[ParametricPlot[v {Cos[u], Sin[u]}, {u, 0, 2 π}, {v, 1, 3}, Mesh -> {15, 3}], p2]

or

ParametricPlot[v {Cos[u], Sin[u]}, {u, 0, 2 π}, {v, 1, 3}, Mesh->{15, 3}, Epilog->p2[[1]]]

both give

enter image description here

Update: to see the nodes... sans the surface that spans them

Show[ParametricPlot[v {Cos[u], Sin[u]}, {u, 0, 2 \[Pi]}, {v, 1, 3}, 
  Mesh -> {15, 3}, BoundaryStyle -> Gray, PlotStyle -> None], p2]

enter image description here