title: DrawPolygon works, but FillPolygon doesn't using the same set of points
body: <p>I have a vector of points where each point represents the vertices of a polygon. If I use the vector of points in the DrawPolygon method, the polygon is drawn as expected. However, If I use the same vector with FillPolygon, nothing happens. </p>
  
  <p>Here is how I am successfully drawing the outline of a polygon:</p>
  
  <pre><code>void CBurstSign::Draw(Gdiplus::Graphics* graphics)
  {
      Pen pen(Color(255, 255, 0, 0));
      graphics-&gt;DrawPolygon(&amp;pen, &amp;mPoints[0], mPoints.size());
  }
  </code></pre>
  
  <p>This works. Making a couple of minor adjustments, I thought the following changes would draw a filled polygon:</p>
  
  <pre><code>void CBurstSign::Draw(Gdiplus::Graphics* graphics)
  {
      SolidBrush backgroundBrush(Color(255, 255, 0, 0));
      graphics-&gt;FillPolygon(&amp;backgroundBrush, &amp;mPoints[0], mPoints.size());
  }
  </code></pre>
  
  <p>When this code is ran, nothing is drawn. </p>
  
  <p>I even tried using an array of points instead of a vector like the documentation shows, but this fails as well:</p>
  
  <pre><code>void CBurstSign::Draw(Gdiplus::Graphics* graphics)
  {
      Gdiplus::PointF points[65] = {};
      SolidBrush backgroundBrush(Color(255, 255, 0, 0));
      int i = 0;
      for (PointF point : mPoints)
      {
          points[i] = point;
          i++;
      }
      PointF* pPoints = points;
      graphics-&gt;FillPolygon(&amp;backgroundBrush, pPoints, mPoints.size());
  }
  </code></pre>
  
  <p>I cannot see what I'm missing here. The array of points is the same in either case, so I'm not sure why DrawPolygon would work but FillPolygon wouldn't.</p>