グラフィック系の関数はビットマップなどを除き、線はペン、塗りつぶしはブラシによって行われる。
ここにある関数もペンまたは両方によって描画が行われる。
つまり、最低限ペンがデバイスコンテキストに選択されていないと描画されない。
カレントポジション・・・・・現在のペンの位置。
連続的に描画を行う関数の場合、このカレントポジションから
描画を始める。
LineTo()関数などがそれに当たる。
このカレントポジションはMoveToEx()関数を用いて変更できる。
円・楕円などの描画の基本・・AngleArc()関数を除いては、次のような考え方によって
円・楕円が描画される。
反時計回りに描画するので注意が必要である。
AngleArc()関数はWindows2000から追加された関数である。
コンパスで円を描くように描画できる。
SDKによると時計回りに描画するとなっている。
ただし、サンプルでは反時計回りの動きをした。
線の描画の基本・・・・・・・線の描画は基本的にはカレントポジションを始点として
終点を指定することで描画する。
LineTo()関数の考え方は以下の通りである。
| 関数名 | 機能 | Sample |
| 直線・曲線の描画 関数 | ||
| AngleArc | ラインセグメント、および円弧を描画する | あり |
| Arc | 円弧を描画する | あり |
| Chord | コード(円弧と線分からなる半月形)を描画する | あり |
| Ellipse | 円・楕円を描画する | あり |
| GetArcDirection | デバイスコンテキストに設定されている、円弧の現在の方向を取得する | なし |
| LineTo | 現在の位置から終点までを直線で描画する | あり |
| MoveToEx | 現在の位置を設定する | あり |
| Pie | 扇形を描画する | あり |
| PolyBezier | 1 つまたは複数のベジエ曲線を描画する | あり |
| PolyBezierTo | 1 つまたは複数のベジエ曲線を描画する | あり |
| Polygon | 多角形を描画する | あり |
| Polyline | 複数の線分からなる連続した線を描画する | あり |
| PolylineTo | 複数の線分からなる連続した線を描画する | なし |
| PolyPolygon | 複数の多角形を描画する | なし |
| PolyPolyline | 複数の一群の直線を描画する | なし |
| Rectangle | 矩形を描画する | あり |
| RoundRect | 角の丸い矩形を描画する | あり |
| SetArcDirection | デバイスコンテキストに設定されている、円弧の現在の方向を設定する | なし |