4#include "gd_vector2d_private.h"
6#define _dash_init(dash) \
13#define _dash_allocate(dash, count) \
15 if (dash.size + count > dash.capacity) { \
16 int capacity = dash.size + count; \
17 int newcapacity = dash.capacity == 0 ? 8 : dash.capacity; \
18 while (newcapacity < capacity) { \
21 dash.data = gdRealloc(dash.data, (size_t)newcapacity * sizeof(dash.data[0])); \
22 dash.capacity = newcapacity; \
26gdPathDashPtr gdPathDashCreate(
const double *data,
int size,
double offset);
27gdPathDashPtr gdPathDashClone(
const gdPathDashPtr dash);
28void gdPathDashDestroy(gdPathDashPtr dash);
29gdPathPtr gdPathApplyDash(
const gdPathDashPtr dash,
const gdPathPtr path);