@@ -170,84 +170,84 @@ void loop()
170170
171171}
172172
173- // Writing numeral with bx by being the bottom left originpoint. Scale 1 equals a 20 mm high font.
173+ // Writing numeral with BX BY being the bottom left originpoint. Scale 1 equals a 20 mm high font.
174174// The structure follows this principle: move to first startpoint of the numeral, lift down, draw numeral, lift up
175- void number (float bx, float by, int num, float scale ) {
175+ void number (const float BX, const float BY, const int NUM, const float SCALE ) {
176176
177- switch (num ) {
177+ switch (NUM ) {
178178
179179 case 0 :
180- drawTo (bx + 12 * scale, by + 6 * scale );
180+ drawTo (BX + 12 * SCALE, BY + 6 * SCALE );
181181 lift (0 );
182- bogenGZS (bx + 7 * scale, by + 10 * scale , 10 * scale , -0.8 , 6.7 , 0.5 );
182+ bogenGZS (BX + 7 * SCALE, BY + 10 * SCALE , 10 * SCALE , -0.8 , 6.7 , 0.5 );
183183 lift (1 );
184184 break ;
185185 case 1 :
186186
187- drawTo (bx + 3 * scale, by + 15 * scale );
187+ drawTo (BX + 3 * SCALE, BY + 15 * SCALE );
188188 lift (0 );
189- drawTo (bx + 10 * scale, by + 20 * scale );
190- drawTo (bx + 10 * scale, by + 0 * scale );
189+ drawTo (BX + 10 * SCALE, BY + 20 * SCALE );
190+ drawTo (BX + 10 * SCALE, BY + 0 * SCALE );
191191 lift (1 );
192192 break ;
193193 case 2 :
194- drawTo (bx + 2 * scale, by + 12 * scale );
194+ drawTo (BX + 2 * SCALE, BY + 12 * SCALE );
195195 lift (0 );
196- bogenUZS (bx + 8 * scale, by + 14 * scale , 6 * scale , 3 , -0.8 , 1 );
197- drawTo (bx + 1 * scale, by + 0 * scale );
198- drawTo (bx + 12 * scale, by + 0 * scale );
196+ bogenUZS (BX + 8 * SCALE, BY + 14 * SCALE , 6 * SCALE , 3 , -0.8 , 1 );
197+ drawTo (BX + 1 * SCALE, BY + 0 * SCALE );
198+ drawTo (BX + 12 * SCALE, BY + 0 * SCALE );
199199 lift (1 );
200200 break ;
201201 case 3 :
202- drawTo (bx + 2 * scale, by + 17 * scale );
202+ drawTo (BX + 2 * SCALE, BY + 17 * SCALE );
203203 lift (0 );
204- bogenUZS (bx + 5 * scale, by + 15 * scale , 5 * scale , 3 , -2 , 1 );
205- bogenUZS (bx + 5 * scale, by + 5 * scale , 5 * scale , 1.57 , -3 , 1 );
204+ bogenUZS (BX + 5 * SCALE, BY + 15 * SCALE , 5 * SCALE , 3 , -2 , 1 );
205+ bogenUZS (BX + 5 * SCALE, BY + 5 * SCALE , 5 * SCALE , 1.57 , -3 , 1 );
206206 lift (1 );
207207 break ;
208208 case 4 :
209- drawTo (bx + 10 * scale, by + 0 * scale );
209+ drawTo (BX + 10 * SCALE, BY + 0 * SCALE );
210210 lift (0 );
211- drawTo (bx + 10 * scale, by + 20 * scale );
212- drawTo (bx + 2 * scale, by + 6 * scale );
213- drawTo (bx + 12 * scale, by + 6 * scale );
211+ drawTo (BX + 10 * SCALE, BY + 20 * SCALE );
212+ drawTo (BX + 2 * SCALE, BY + 6 * SCALE );
213+ drawTo (BX + 12 * SCALE, BY + 6 * SCALE );
214214 lift (1 );
215215 break ;
216216 case 5 :
217- drawTo (bx + 2 * scale, by + 5 * scale );
217+ drawTo (BX + 2 * SCALE, BY + 5 * SCALE );
218218 lift (0 );
219- bogenGZS (bx + 5 * scale, by + 6 * scale , 6 * scale , -2.5 , 2 , 1 );
220- drawTo (bx + 5 * scale, by + 20 * scale );
221- drawTo (bx + 12 * scale, by + 20 * scale );
219+ bogenGZS (BX + 5 * SCALE, BY + 6 * SCALE , 6 * SCALE , -2.5 , 2 , 1 );
220+ drawTo (BX + 5 * SCALE, BY + 20 * SCALE );
221+ drawTo (BX + 12 * SCALE, BY + 20 * SCALE );
222222 lift (1 );
223223 break ;
224224 case 6 :
225- drawTo (bx + 2 * scale, by + 10 * scale );
225+ drawTo (BX + 2 * SCALE, BY + 10 * SCALE );
226226 lift (0 );
227- bogenUZS (bx + 7 * scale, by + 6 * scale , 6 * scale , 2 , -4.4 , 1 );
228- drawTo (bx + 11 * scale, by + 20 * scale );
227+ bogenUZS (BX + 7 * SCALE, BY + 6 * SCALE , 6 * SCALE , 2 , -4.4 , 1 );
228+ drawTo (BX + 11 * SCALE, BY + 20 * SCALE );
229229 lift (1 );
230230 break ;
231231 case 7 :
232- drawTo (bx + 2 * scale, by + 20 * scale );
232+ drawTo (BX + 2 * SCALE, BY + 20 * SCALE );
233233 lift (0 );
234- drawTo (bx + 12 * scale, by + 20 * scale );
235- drawTo (bx + 2 * scale, by + 0 );
234+ drawTo (BX + 12 * SCALE, BY + 20 * SCALE );
235+ drawTo (BX + 2 * SCALE, BY + 0 );
236236 lift (1 );
237237 break ;
238238 case 8 :
239- drawTo (bx + 5 * scale, by + 10 * scale );
239+ drawTo (BX + 5 * SCALE, BY + 10 * SCALE );
240240 lift (0 );
241- bogenUZS (bx + 5 * scale, by + 15 * scale , 5 * scale , 4.7 , -1.6 , 1 );
242- bogenGZS (bx + 5 * scale, by + 5 * scale , 5 * scale , -4.7 , 2 , 1 );
241+ bogenUZS (BX + 5 * SCALE, BY + 15 * SCALE , 5 * SCALE , 4.7 , -1.6 , 1 );
242+ bogenGZS (BX + 5 * SCALE, BY + 5 * SCALE , 5 * SCALE , -4.7 , 2 , 1 );
243243 lift (1 );
244244 break ;
245245
246246 case 9 :
247- drawTo (bx + 9 * scale, by + 11 * scale );
247+ drawTo (BX + 9 * SCALE, BY + 11 * SCALE );
248248 lift (0 );
249- bogenUZS (bx + 7 * scale, by + 15 * scale , 5 * scale , 4 , -0.5 , 1 );
250- drawTo (bx + 5 * scale, by + 0 );
249+ bogenUZS (BX + 7 * SCALE, BY + 15 * SCALE , 5 * SCALE , 4 , -0.5 , 1 );
250+ drawTo (BX + 5 * SCALE, BY + 0 );
251251 lift (1 );
252252 break ;
253253
@@ -282,13 +282,13 @@ void number(float bx, float by, int num, float scale) {
282282 break ;
283283
284284 case 11 :
285- drawTo (bx + 5 * scale, by + 15 * scale );
285+ drawTo (BX + 5 * SCALE, BY + 15 * SCALE );
286286 lift (0 );
287- bogenGZS (bx + 5 * scale, by + 15 * scale , 0.1 * scale , 1 , -1 , 1 );
287+ bogenGZS (BX + 5 * SCALE, BY + 15 * SCALE , 0.1 * SCALE , 1 , -1 , 1 );
288288 lift (1 );
289- drawTo (bx + 5 * scale, by + 5 * scale );
289+ drawTo (BX + 5 * SCALE, BY + 5 * SCALE );
290290 lift (0 );
291- bogenGZS (bx + 5 * scale, by + 5 * scale , 0.1 * scale , 1 , -1 , 1 );
291+ bogenGZS (BX + 5 * SCALE, BY + 5 * SCALE , 0.1 * SCALE , 1 , -1 , 1 );
292292 lift (1 );
293293 break ;
294294
@@ -297,148 +297,148 @@ void number(float bx, float by, int num, float scale) {
297297
298298
299299
300- void lift (char lift ) {
301- switch (lift ) {
300+ void lift (const char LIFT ) {
301+ switch (LIFT ) {
302302 // room to optimize !
303303
304304 case 0 : // 850
305305
306- if (servoLift >= LIFT0) {
307- while (servoLift >= LIFT0)
306+ if (servoLift >= LIFT0) {
307+ do
308308 {
309309 servoLift--;
310- servo1.writeMicroseconds (servoLift);
310+ servo1.writeMicroseconds (servoLift);
311311 delayMicroseconds (LIFTSPEED);
312- }
313- }
312+ } while (servoLift >= LIFT0);
313+ }
314314 else {
315- while (servoLift <= LIFT0) {
315+ do
316+ {
316317 servoLift++;
317318 servo1.writeMicroseconds (servoLift);
318319 delayMicroseconds (LIFTSPEED);
319-
320- }
321-
320+ } while (servoLift < LIFT0);
322321 }
323322
324323 break ;
325324
326325 case 1 : // 150
327326
328327 if (servoLift >= LIFT1) {
329- while (servoLift >= LIFT1) {
328+ do
329+ {
330330 servoLift--;
331331 servo1.writeMicroseconds (servoLift);
332332 delayMicroseconds (LIFTSPEED);
333-
334- }
335- }
333+ } while (servoLift >= LIFT1);
334+ }
336335 else {
337- while (servoLift <= LIFT1) {
336+ do
337+ {
338338 servoLift++;
339339 servo1.writeMicroseconds (servoLift);
340340 delayMicroseconds (LIFTSPEED);
341- }
342-
341+ } while (servoLift < LIFT1);
343342 }
344343
345344 break ;
346345
347346 case 2 :
348347
349348 if (servoLift >= LIFT2) {
350- while (servoLift >= LIFT2) {
349+ do
350+ {
351351 servoLift--;
352352 servo1.writeMicroseconds (servoLift);
353353 delayMicroseconds (LIFTSPEED);
354- }
355- }
354+ } while (servoLift >= LIFT2);
355+ }
356356 else {
357- while (servoLift <= LIFT2) {
357+ do
358+ {
358359 servoLift++;
359- servo1.writeMicroseconds (servoLift);
360+ servo1.writeMicroseconds (servoLift);
360361 delayMicroseconds (LIFTSPEED);
361- }
362+ } while (servoLift < LIFT2);
362363 }
364+
363365 break ;
364366 }
365367}
366368
367369
368- void bogenUZS (float bx, float by, float radius, int start, int ende, float sqee) {
370+ void bogenUZS (const float BX, const float BY, const float RADIUS,
371+ const int START, const int ENDE, const float SQEE) {
369372 float inkr = -0.05 ;
370373 float count = 0 ;
371374
372375 do {
373- drawTo (sqee * radius * cos (start + count) + bx ,
374- radius * sin (start + count) + by );
376+ drawTo (SQEE * RADIUS * cos (START + count) + BX ,
377+ RADIUS * sin (START + count) + BY );
375378 count += inkr;
376- }
377- while ((start + count) > ende );
379+ }
380+ while (START + count > ENDE );
378381
379382}
380383
381- void bogenGZS (float bx, float by, float radius, int start, int ende, float sqee) {
384+ void bogenGZS (const float BX, const float BY, const float RADIUS,
385+ const int START, const int ENDE, const float SQEE) {
382386 float inkr = 0.05 ;
383387 float count = 0 ;
384388
385389 do {
386- drawTo (sqee * radius * cos (start + count) + bx ,
387- radius * sin (start + count) + by );
390+ drawTo (SQEE * RADIUS * cos (START + count) + BX ,
391+ RADIUS * sin (START + count) + BY );
388392 count += inkr;
389393 }
390- while ((start + count) <= ende );
394+ while (START + count <= ENDE );
391395}
392396
393397
394- void drawTo (double pX, double pY) {
395- double dx, dy, c;
396- int i;
398+ void drawTo (const double pX, const double pY) {
397399
398400 // dx dy of new point
399- dx = pX - lastX;
400- dy = pY - lastY;
401+ double dx = pX - lastX;
402+ double dy = pY - lastY;
401403 // path lenght in mm, times 4 equals 4 steps per mm
402- c = floor (4 * sqrt (dx * dx + dy * dy));
404+ double c = floor (4 * sqrt (dx * dx + dy * dy));
403405
404406 if (c < 1 ) c = 1 ;
405407
406- for (i = 0 ; i <= c; i++) {
408+ for (int i = 0 ; i <= c; i++) {
407409 // draw line point by point
408410 set_XY (lastX + (i * dx / c), lastY + (i * dy / c));
409-
410411 }
411412
412413 lastX = pX;
413414 lastY = pY;
414415}
415416
416- double return_angle (double a, double b, double c) {
417+ double return_angle (const double a, const double b, const double c) {
417418 // cosine rule for angle between c and a
418419 return acos ((a * a + c * c - b * b) / (2 * a * c));
419420}
420421
421- void set_XY (double Tx, double Ty)
422+ void set_XY (const double Tx, const double Ty)
422423{
423424 delay (1 );
424- double dx, dy, c, a1, a2, Hx, Hy;
425425
426426 // calculate triangle between pen, servoLeft and arm joint
427427 // cartesian dx/dy
428- dx = Tx - O1X;
429- dy = Ty - O1Y;
428+ double dx = Tx - O1X;
429+ double dy = Ty - O1Y;
430430
431431 // polar lemgth (c) and angle (a1)
432- c = sqrt (dx * dx + dy * dy); //
433- a1 = atan2 (dy, dx); //
434- a2 = return_angle (L1, L2, c);
432+ double c = sqrt (dx * dx + dy * dy); //
433+ double a1 = atan2 (dy, dx); //
434+ double a2 = return_angle (L1, L2, c);
435435
436436 servo2.writeMicroseconds (floor (((a2 + a1 - M_PI) * SERVOFAKTORLEFT) + SERVOLEFTNULL));
437437
438438 // calculate joinr arm point for triangle of the right servo arm
439439 a2 = return_angle (L2, L1, c);
440- Hx = Tx + L3 * cos ((a1 - a2 + 0.621 ) + M_PI); // 36,5°
441- Hy = Ty + L3 * sin ((a1 - a2 + 0.621 ) + M_PI);
440+ double Hx = Tx + L3 * cos ((a1 - a2 + 0.621 ) + M_PI); // 36,5°
441+ double Hy = Ty + L3 * sin ((a1 - a2 + 0.621 ) + M_PI);
442442
443443 // calculate triangle between pen joint, servoRight and arm joint
444444 dx = Hx - O2X;
0 commit comments