Browse Source

график

nodeinfo-routing-update
jeka 1 month ago
parent
commit
f844f65abe
  1. 20
      tools/etcpmon/etcpmon_graph.c

20
tools/etcpmon/etcpmon_graph.c

@ -80,15 +80,16 @@ void DrawGraph(HDC hdc, RECT* rc, struct etcpmon_app* app)
int sel[GRAPH_METRICS_COUNT];
int sc = 0;
GetSelectedChannels(app, sel, &sc);
int pad = 5;
int gl = pad + 5; /* левая граница графика */
int gr = w - pad; /* правая граница */
int gt = pad; /* верх */
int gb = h - 5; /* низ */
int pad = 2;
int gl = pad;
int gr = w - pad;
int gt = pad;
int gb = h - pad;
int gh = gb - gt;
HPEN old;
/* === Сетка === */
HPEN grid = CreatePen(PS_DOT, 1, GetSysColor(COLOR_BTNSHADOW));
HPEN old = (HPEN)SelectObject(memDC, grid);
old = (HPEN)SelectObject(memDC, grid);
for (int i = 1; i < 5; i++) {
int y = pad + (h - 2 * pad) * i / 5;
MoveToEx(memDC, pad, y, NULL);
@ -96,13 +97,6 @@ void DrawGraph(HDC hdc, RECT* rc, struct etcpmon_app* app)
}
SelectObject(memDC, old);
DeleteObject(grid);
/* === Оси === */
HPEN axis = CreatePen(PS_SOLID, 1, GetSysColor(COLOR_WINDOWTEXT));
old = (HPEN)SelectObject(memDC, axis);
MoveToEx(memDC, gl, gt, NULL); LineTo(memDC, gl, gb);
MoveToEx(memDC, gl, gb, NULL); LineTo(memDC, gr, gb);
SelectObject(memDC, old);
DeleteObject(axis);
/* Сколько точек видно */
int vis = (hist->count < gr - gl) ? hist->count : (gr - gl);
int oldest = (hist->head - vis + GRAPH_HISTORY_SIZE) % GRAPH_HISTORY_SIZE;

Loading…
Cancel
Save