22 const char *text,
float height,
29 auto length = strlen(text);
31 float textLength = length*charLength-0.5f*
height/9.0f;
51 loc.
x -= textLength*0.5f;
61 for (
int x = 0; x < length; x++)
75 const char *text,
float height,
81 auto length = strlen(text);
83 float textLength = length*charLength-0.5f*
height/9.0f;
101 loc.
x -= textLength*0.5f;
111 for (
int x = 0; x < length; x++)
131 for (
int x = 0; x < 30; x++)
136 case 0:
DrawLine(display, where, 0, 0, 1, 0,
height, color);
break;
137 case 1:
DrawLine(display, where, 1, 0, 1, 0,
height, color);
break;
138 case 2:
DrawLine(display, where, 0, 0, 0, 1,
height, color);
break;
139 case 3:
DrawLine(display, where, 0, 1, 1, -1,
height, color);
break;
140 case 4:
DrawLine(display, where, 0, 0, 1, 1,
height, color);
break;
141 case 5:
DrawLine(display, where, 1, 0, 0, 1,
height, color);
break;
142 case 6:
DrawLine(display, where, 1, 1, 1, -1,
height, color);
break;
143 case 7:
DrawLine(display, where, 1, 0, 1, 1,
height, color);
break;
144 case 8:
DrawLine(display, where, 2, 0, 0, 1,
height, color);
break;
145 case 9:
DrawLine(display, where, 0, 1, 0, 1,
height, color);
break;
146 case 10:
DrawLine(display, where, 0, 1, 1, 1,
height, color);
break;
147 case 11:
DrawLine(display, where, 1, 1, 0, 1,
height, color);
break;
148 case 12:
DrawLine(display, where, 1, 2, 1, -1,
height, color);
break;
149 case 13:
DrawLine(display, where, 2, 1, 0, 1,
height, color);
break;
150 case 14:
DrawLine(display, where, 0, 2, 1, 0,
height, color);
break;
151 case 15:
DrawLine(display, where, 1, 2, 1, 0,
height, color);
break;
152 case 16:
DrawLine(display, where, 0, 2, 0, 1,
height, color);
break;
153 case 17:
DrawLine(display, where, 0, 3, 1, -1,
height, color);
break;
154 case 18:
DrawLine(display, where, 1, 2, 0, 1,
height, color);
break;
155 case 19:
DrawLine(display, where, 1, 2, 1, 1,
height, color);
break;
156 case 20:
DrawLine(display, where, 2, 2, 0, 1,
height, color);
break;
157 case 21:
DrawLine(display, where, 0, 3, 0, 1,
height, color);
break;
158 case 22:
DrawLine(display, where, 0, 4, 1, -1,
height, color);
break;
159 case 23:
DrawLine(display, where, 0, 3, 1, 1,
height, color);
break;
160 case 24:
DrawLine(display, where, 1, 3, 0, 1,
height, color);
break;
161 case 25:
DrawLine(display, where, 1, 4, 1, -1,
height, color);
break;
162 case 26:
DrawLine(display, where, 1, 3, 1, 1,
height, color);
break;
163 case 27:
DrawLine(display, where, 2, 3, 0, 1,
height, color);
break;
164 case 28:
DrawLine(display, where, 0, 4, 1, 0,
height, color);
break;
165 case 29:
DrawLine(display, where, 1, 4, 1, 0,
height, color);
break;
175 for (
int x = 0; x < 30; x++)
180 case 0:
DrawLine(display, where, 0, 0, 1, 0,
height, color);
break;
181 case 1:
DrawLine(display, where, 1, 0, 1, 0,
height, color);
break;
182 case 2:
DrawLine(display, where, 0, 0, 0, 1,
height, color);
break;
183 case 3:
DrawLine(display, where, 0, 1, 1, -1,
height, color);
break;
184 case 4:
DrawLine(display, where, 0, 0, 1, 1,
height, color);
break;
185 case 5:
DrawLine(display, where, 1, 0, 0, 1,
height, color);
break;
186 case 6:
DrawLine(display, where, 1, 1, 1, -1,
height, color);
break;
187 case 7:
DrawLine(display, where, 1, 0, 1, 1,
height, color);
break;
188 case 8:
DrawLine(display, where, 2, 0, 0, 1,
height, color);
break;
189 case 9:
DrawLine(display, where, 0, 1, 0, 1,
height, color);
break;
190 case 10:
DrawLine(display, where, 0, 1, 1, 1,
height, color);
break;
191 case 11:
DrawLine(display, where, 1, 1, 0, 1,
height, color);
break;
192 case 12:
DrawLine(display, where, 1, 2, 1, -1,
height, color);
break;
193 case 13:
DrawLine(display, where, 2, 1, 0, 1,
height, color);
break;
194 case 14:
DrawLine(display, where, 0, 2, 1, 0,
height, color);
break;
195 case 15:
DrawLine(display, where, 1, 2, 1, 0,
height, color);
break;
196 case 16:
DrawLine(display, where, 0, 2, 0, 1,
height, color);
break;
197 case 17:
DrawLine(display, where, 0, 3, 1, -1,
height, color);
break;
198 case 18:
DrawLine(display, where, 1, 2, 0, 1,
height, color);
break;
199 case 19:
DrawLine(display, where, 1, 2, 1, 1,
height, color);
break;
200 case 20:
DrawLine(display, where, 2, 2, 0, 1,
height, color);
break;
201 case 21:
DrawLine(display, where, 0, 3, 0, 1,
height, color);
break;
202 case 22:
DrawLine(display, where, 0, 4, 1, -1,
height, color);
break;
203 case 23:
DrawLine(display, where, 0, 3, 1, 1,
height, color);
break;
204 case 24:
DrawLine(display, where, 1, 3, 0, 1,
height, color);
break;
205 case 25:
DrawLine(display, where, 1, 4, 1, -1,
height, color);
break;
206 case 26:
DrawLine(display, where, 1, 3, 1, 1,
height, color);
break;
207 case 27:
DrawLine(display, where, 2, 3, 0, 1,
height, color);
break;
208 case 28:
DrawLine(display, where, 0, 4, 1, 0,
height, color);
break;
209 case 29:
DrawLine(display, where, 1, 4, 1, 0,
height, color);
break;
218 uint32_t index[128] = {
252 (1<<5)|(1<<11)|(1<<24),
259 (1<<3)|(1<<9)|(1<<16)|(1<<23),
260 (1<<7)|(1<<13)|(1<<20)|(1<<25),
261 (1<<10)|(1<<11)|(1<<12)|(1<<14)|(1<<15)|(1<<17)|(1<<18)|(1<<19),
266 (1<<8)|(1<<12)|(1<<18)|(1<<22),
268 (1<<3)|(1<<7)|(1<<9)|(1<<12)|(1<<13)|(1<<16)|(1<<17)|(1<<20)|(1<<23)|(1<<25),
270 (1<<3)|(1<<5)|(1<<11)|(1<<18)|(1<<24)|(1<<28)|(1<<29),
272 (1<<3)|(1<<1)|(1<<8)|(1<<13)|(1<<15)|(1<<17)|(1<<21)|(1<<28)|(1<<29),
274 (1<<0)|(1<<7)|(1<<13)|(1<<15)|(1<<20)|(1<<25)|(1<<28),
276 (1<<3)|(1<<9)|(1<<14)|(1<<15)|(1<<11)|(1<<18)|(1<<24),
278 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<14)|(1<<19)|(1<<27)|(1<<28)|(1<<29),
280 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<14)|(1<<19)|(1<<27)|(1<<28)|(1<<29)|(1<<16)|(1<<21),
282 (1<<0)|(1<<1)|(1<<8)|(1<<12)|(1<<18)|(1<<24),
284 (1<<0)|(1<<1)|(1<<2)|(1<<8)|(1<<9)|(1<<13)|(1<<14)|(1<<15)|(1<<16)|(1<<20)|(1<<21)|(1<<27)|(1<<28)|(1<<29),
286 (1<<0)|(1<<1)|(1<<2)|(1<<8)|(1<<9)|(1<<13)|(1<<14)|(1<<15)|(1<<20)|(1<<27)|(1<<28)|(1<<29),
292 (1<<2)|(1<<1)|(1<<0)|(1<<8)|(1<<12)|(1<<24),
295 (1<<1)|(1<<3)|(1<<8)|(1<<9)|(1<<13)|(1<<14)|(1<<15)|(1<<16)|(1<<20)|(1<<21)|(1<<27),
297 (1<<0)|(1<<2)|(1<<7)|(1<<9)|(1<<12)|(1<<14)|(1<<16)|(1<<19)|(1<<21)|(1<<27)|(1<<28)|(1<<29),
299 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<28)|(1<<29),
301 (1<<0)|(1<<2)|(1<<7)|(1<<9)|(1<<13)|(1<<16)|(1<<20)|(1<<21)|(1<<25)|(1<<28),
303 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<14)|(1<<16)|(1<<21)|(1<<28)|(1<<29),
305 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<14)|(1<<16)|(1<<21),
307 (1<<0)|(1<<1)|(1<<2)|(1<<8)|(1<<9)|(1<<15)|(1<<16)|(1<<20)|(1<<21)|(1<<25)|(1<<28),
309 (1<<2)|(1<<8)|(1<<9)|(1<<13)|(1<<14)|(1<<15)|(1<<16)|(1<<20)|(1<<21)|(1<<27),
311 (1<<0)|(1<<1)|(1<<5)|(1<<11)|(1<<18)|(1<<24)|(1<<28)|(1<<29),
313 (1<<1)|(1<<8)|(1<<13)|(1<<20)|(1<<21)|(1<<25)|(1<<28),
315 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<14)|(1<<12)|(1<<19)|(1<<8)|(1<<27),
317 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<28)|(1<<29),
319 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<27)|(1<<0)|(1<<1)|(1<<5)|(1<<11),
321 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<0)|(1<<7)|(1<<13)|(1<<20)|(1<<27),
323 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<27)|(1<<0)|(1<<1)|(1<<28)|(1<<29),
325 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<0)|(1<<14)|(1<<7)|(1<<12),
327 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<0)|(1<<1)|(1<<28)|(1<<25)|(1<<26),
329 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<0)|(1<<14)|(1<<7)|(1<<13)|(1<<15)|(1<<19)|(1<<27),
331 (1<<0)|(1<<1)|(1<<2)|(1<<9)|(1<<14)|(1<<15)|(1<<20)|(1<<27)|(1<<28)|(1<<29),
333 (1<<0)|(1<<1)|(1<<5)|(1<<11)|(1<<18)|(1<<24),
335 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<27)|(1<<28)|(1<<29),
337 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<25)|(1<<28),
339 (1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<8)|(1<<13)|(1<<20)|(1<<25)|(1<<28)|(1<<18)|(1<<24),
341 (1<<2)|(1<<21)|(1<<10)|(1<<17)|(1<<12)|(1<<19)|(1<<8)|(1<<27),
343 (1<<2)|(1<<10)|(1<<18)|(1<<12)|(1<<24)|(1<<8),
345 (1<<0)|(1<<1)|(1<<8)|(1<<12)|(1<<17)|(1<<21)|(1<<28)|(1<<29),
347 (1<<0)|(1<<2)|(1<<9)|(1<<16)|(1<<21)|(1<<28),
349 (1<<1)|(1<<8)|(1<<13)|(1<<20)|(1<<27)|(1<<29),
385 return index[(int)c];
397 float lineWidth = scale/9.0f;
398 float edgeLength = 2.0f*lineWidth;
400 where.y+starty*edgeLength+lineWidth/2);
401 Graphics::point p2(where.x+startx*edgeLength+lineWidth/2+offsetx*edgeLength,
402 where.y+starty*edgeLength+lineWidth/2+offsety*edgeLength);
403 display.
DrawLine(p1, p2, lineWidth, color);
420 float lineWidth = scale/9.0f;
421 float edgeLength = 2.0f*lineWidth;
423 where.y+starty*edgeLength+lineWidth/2);
424 Graphics::point p2(where.x+startx*edgeLength+lineWidth/2+offsetx*edgeLength,
425 where.y+starty*edgeLength+lineWidth/2+offsety*edgeLength);
426 lines.push_back({p1, p2, color, lineWidth,
false});