Skip to content

Instantly share code, notes, and snippets.

@stefankuehnel
Last active January 3, 2021 12:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stefankuehnel/2b858ca0888bd56c4e6bb59e8c8f6fb2 to your computer and use it in GitHub Desktop.
Save stefankuehnel/2b858ca0888bd56c4e6bb59e8c8f6fb2 to your computer and use it in GitHub Desktop.
Creates a 2D-graphic of a coffee machine, which was realized as a deterministic finite state machine.
Display the source blob
Display the rendered blob
Raw
<?xml version='1.0' encoding='UTF-8'?>
<!-- This file was generated by dvisvgm 2.8.2 -->
<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='755.12506pt' height='460.73476pt' viewBox='-65.36138 -72.00188 755.12506 460.73476'>
<defs>
<font id='cmr10' horiz-adv-x='0'>
<font-face font-family='cmr10' units-per-em='1000' ascent='750' descent='250'/>
<glyph unicode='ff' horiz-adv-x='583' vert-adv-y='583' glyph-name='ff' d='M448 400H563V431H445V547C445 636 493 683 538 683C541 683 556 683 571 676C559 672 541 659 541 634C541 611 557 591 584 591C613 591 628 611 628 635C628 671 593 705 537 705C478 705 434 667 429 663C400 700 344 705 317 705C222 705 106 653 106 545V431H27V400H106V76C106 31 95 31 28 31V0C61 1 114 3 139 3S213 1 250 0V31C183 31 172 31 172 76V400H382V76C382 31 371 31 304 31V0C343 1 390 3 418 3C458 3 505 3 545 0V31H524C450 31 448 42 448 78V400ZM169 431V544C169 641 251 683 316 683C365 683 393 664 394 664V663C377 661 357 648 357 620C357 614 358 589 385 580C382 567 382 558 382 546V431H169Z'/>
<glyph unicode='ß' horiz-adv-x='500' vert-adv-y='500' glyph-name='germandbls' d='M310 419C399 444 443 505 443 563C443 638 371 705 272 705C195 705 106 656 106 556V431H28V400H106V76C106 31 95 31 28 31V0C47 1 113 3 126 3C137 3 154 3 172 0V558C172 672 252 683 272 683C313 683 368 652 368 564C368 500 333 439 244 431C235 430 228 430 228 420C228 418 228 410 237 409C356 399 396 277 396 173C396 44 331 11 293 11C284 11 261 13 243 30C254 32 273 42 273 66C273 88 257 102 237 102C220 102 201 90 201 65C201 25 238-11 296-11C382-11 471 62 471 174C471 246 439 366 310 419Z'/>
<glyph unicode='?' horiz-adv-x='472' vert-adv-y='472' glyph-name='question' d='M235 249C235 375 332 446 367 472C394 492 415 528 415 570C415 628 375 705 226 705C118 705 56 637 56 572C56 538 79 524 102 524C130 524 148 544 148 570C148 615 106 615 92 615C123 668 181 683 223 683C332 683 332 615 332 576C332 517 316 499 298 481C232 409 210 317 210 256V211C210 193 210 187 222 187C235 187 235 196 235 214V249ZM275 53C275 82 251 106 222 106S169 82 169 53S193 0 222 0S275 24 275 53Z'/>
<glyph unicode='A' horiz-adv-x='750' vert-adv-y='750' glyph-name='A' d='M398 696C393 709 391 716 375 716S356 710 351 696L144 98C126 47 86 32 32 31V0C55 1 98 3 134 3C165 3 217 1 249 0V31C199 31 174 56 174 82C174 85 175 95 176 97L222 228H469L522 75C523 71 525 65 525 61C525 31 469 31 442 31V0C478 3 548 3 586 3C629 3 675 2 717 0V31H699C639 31 625 38 614 71L398 696ZM345 584L458 259H233L345 584Z'/>
<glyph unicode='B' horiz-adv-x='708' vert-adv-y='708' glyph-name='B' d='M222 366V612C222 645 224 652 271 652H395C492 652 527 567 527 514C527 450 478 366 367 366H222ZM458 357C555 376 624 440 624 514C624 601 532 683 402 683H36V652H60C137 652 139 641 139 605V78C139 42 137 31 60 31H36V0H428C561 0 651 89 651 183C651 270 569 345 458 357ZM396 31H271C224 31 222 38 222 71V344H410C509 344 551 251 551 184C551 113 499 31 396 31Z'/>
<glyph unicode='E' horiz-adv-x='680' vert-adv-y='680' glyph-name='E' d='M136 78C136 42 134 31 57 31H33V0H610L652 258H627C602 104 579 31 407 31H274C227 31 225 38 225 71V338H315C412 338 423 306 423 221H448V486H423C423 400 412 369 315 369H225V609C225 642 227 649 274 649H403C556 649 583 594 599 455H624L596 680H33V649H57C134 649 136 638 136 602V78Z'/>
<glyph unicode='G' horiz-adv-x='784' vert-adv-y='784' glyph-name='G' d='M593 63C606 41 646 1 657 1C666 1 666 9 666 24V198C666 237 670 242 735 242V273C698 272 643 270 613 270C573 270 488 270 452 273V242H484C574 242 577 231 577 194V130C577 18 450 9 422 9C357 9 159 44 159 342C159 641 356 674 416 674C523 674 614 584 634 437C636 423 636 420 650 420C666 420 666 423 666 444V681C666 698 666 705 655 705C651 705 647 705 639 693L589 619C557 651 503 705 404 705C218 705 56 547 56 342S216-22 406-22C479-22 559 4 593 63Z'/>
<glyph unicode='K' horiz-adv-x='777' vert-adv-y='777' glyph-name='K' d='M400 419L580 592C588 600 641 651 722 652V683C696 680 664 680 637 680C601 680 544 680 510 683V652C550 651 556 628 556 619C556 603 546 593 538 586L225 287V605C225 641 227 652 304 652H328V683C293 680 219 680 181 680S68 680 33 683V652H57C134 652 136 641 136 605V78C136 42 134 31 57 31H33V0C68 3 142 3 180 3S293 3 328 0V31H304C227 31 225 42 225 78V253L341 363L522 95C528 86 537 73 537 61C537 31 498 31 478 31V0C513 3 583 3 621 3C656 3 694 2 736 0V31C682 31 661 35 631 79L400 419Z'/>
<glyph unicode='M' horiz-adv-x='916' vert-adv-y='916' glyph-name='M' d='M241 661C232 683 229 683 206 683H37V652H61C138 652 140 641 140 605V105C140 78 140 31 37 31V0C72 1 121 3 154 3S236 1 271 0V31C168 31 168 78 168 105V644H169L410 22C415 9 420 0 430 0C441 0 444 8 448 19L694 652H695V78C695 42 693 31 616 31H592V0C629 3 697 3 736 3S842 3 879 0V31H855C778 31 776 42 776 78V605C776 641 778 652 855 652H879V683H710C684 683 684 682 677 664L458 101L241 661Z'/>
<glyph unicode='S' horiz-adv-x='555' vert-adv-y='555' glyph-name='S' d='M349 388L221 419C159 434 120 488 120 546C120 616 174 677 252 677C419 677 441 513 447 468C448 462 448 456 459 456C472 456 472 461 472 480V681C472 698 472 705 461 705C454 705 453 704 446 692L411 635C381 664 340 705 251 705C140 705 56 617 56 511C56 428 109 355 187 328C198 324 249 312 319 295C346 288 376 281 404 244C425 218 435 185 435 152C435 81 385 9 301 9C272 9 196 14 143 63C85 117 82 181 81 217C80 227 72 227 69 227C56 227 56 220 56 202V2C56-15 56-22 67-22C74-22 75-20 82-9C82-8 85-5 118 48C149 14 213-22 302-22C419-22 499 76 499 186C499 286 433 368 349 388Z'/>
<glyph unicode='W' horiz-adv-x='1027' vert-adv-y='1027' glyph-name='W' d='M909 585C927 642 970 652 1009 652V683C979 681 948 680 918 680C889 680 825 682 799 683V652C866 651 886 618 886 599C886 593 883 585 881 579L731 117L571 607C570 611 568 617 568 622C568 652 626 652 652 652V683C616 680 548 680 510 680S429 682 388 683V652C445 652 466 652 478 616L500 546L361 117L200 609C199 612 198 619 198 622C198 652 256 652 282 652V683C246 680 178 680 140 680S59 682 18 683V652C93 652 97 647 109 610L309-3C312-12 315-22 328-22C342-22 344-15 348-2L513 506L679-3C682-12 685-22 698-22C712-22 714-15 718-2L909 585Z'/>
<glyph unicode='Z' horiz-adv-x='611' vert-adv-y='611' glyph-name='Z' d='M547 648C554 659 554 660 554 667C554 683 548 683 528 683H80L69 458H94C101 571 131 652 295 652H452L63 37C56 26 56 25 56 17C56 0 61 0 82 0H543L560 267H535C527 128 508 34 323 34H159L547 648Z'/>
<glyph unicode='a' horiz-adv-x='500' vert-adv-y='500' glyph-name='a' d='M333 76C337 36 364-6 411-6C432-6 493 8 493 89V145H468V89C468 31 443 25 432 25C399 25 395 70 395 75V275C395 317 395 356 359 393C320 432 270 448 222 448C140 448 71 401 71 335C71 305 91 288 117 288C145 288 163 308 163 334C163 346 158 379 112 380C139 415 188 426 220 426C269 426 326 387 326 298V261C275 258 205 255 142 225C67 191 42 139 42 95C42 14 139-11 202-11C268-11 314 29 333 76ZM326 240V140C326 45 254 11 209 11C160 11 119 46 119 96C119 151 161 234 326 240Z'/>
<glyph unicode='b' horiz-adv-x='555' vert-adv-y='555' glyph-name='b' d='M172 377V694L28 683V652C98 652 106 645 106 596V0H131C132 1 140 15 167 62C182 39 224-11 298-11C417-11 521 87 521 216C521 343 423 442 309 442C231 442 188 395 172 377ZM175 114V320C175 339 175 340 186 356C225 412 280 420 304 420C349 420 385 394 409 356C435 315 438 258 438 217C438 180 436 120 407 75C386 44 348 11 294 11C249 11 213 35 189 72C175 93 175 96 175 114Z'/>
<glyph unicode='c' horiz-adv-x='444' vert-adv-y='444' glyph-name='c' d='M117 218C117 381 199 423 252 423C261 423 324 422 359 386C318 383 312 353 312 340C312 314 330 294 358 294C384 294 404 311 404 341C404 409 328 448 251 448C126 448 34 340 34 216C34 88 133-11 249-11C383-11 415 109 415 119S405 129 402 129C393 129 391 125 389 119C360 26 295 14 258 14C205 14 117 57 117 218Z'/>
<glyph unicode='d' horiz-adv-x='555' vert-adv-y='555' glyph-name='d' d='M380 55V-11L527 0V31C457 31 449 38 449 87V694L305 683V652C375 652 383 645 383 596V380C354 416 311 442 257 442C139 442 34 344 34 215C34 88 132-11 246-11C310-11 355 23 380 55ZM380 323V118C380 100 380 98 369 81C339 33 294 11 251 11C206 11 170 37 146 75C120 116 117 173 117 214C117 251 119 311 148 356C169 387 207 420 261 420C296 420 338 405 369 360C380 343 380 341 380 323Z'/>
<glyph unicode='e' horiz-adv-x='444' vert-adv-y='444' glyph-name='e' d='M112 252C118 401 202 426 236 426C339 426 349 291 349 252H112ZM111 231H390C412 231 415 231 415 252C415 351 361 448 236 448C120 448 28 345 28 220C28 86 133-11 248-11C370-11 415 100 415 119C415 129 407 131 402 131C393 131 391 125 389 117C354 14 264 14 254 14C204 14 164 44 141 81C111 129 111 195 111 231Z'/>
<glyph unicode='f' horiz-adv-x='305' vert-adv-y='305' glyph-name='f' d='M175 431V547C175 635 223 683 267 683C270 683 285 683 300 676C288 672 270 659 270 634C270 611 286 591 313 591C342 591 357 611 357 635C357 672 320 705 267 705C197 705 112 652 112 546V431H33V400H112V76C112 31 101 31 34 31V0C73 1 120 3 148 3C188 3 235 3 275 0V31H254C180 31 178 42 178 78V400H292V431H175Z'/>
<glyph unicode='g' horiz-adv-x='500' vert-adv-y='500' glyph-name='g' d='M222 172C135 172 135 272 135 295C135 322 136 354 151 379C159 391 182 419 222 419C309 419 309 319 309 296C309 269 308 237 293 212C285 200 262 172 222 172ZM106 133C106 137 106 160 123 180C162 152 203 149 222 149C315 149 384 218 384 295C384 332 368 369 343 392C379 426 415 431 433 431C435 431 440 431 443 430C432 426 427 415 427 403C427 386 440 374 456 374C466 374 485 381 485 404C485 421 473 453 434 453C414 453 370 447 328 406C286 439 244 442 222 442C129 442 60 373 60 296C60 252 82 214 107 193C94 178 76 145 76 110C76 79 89 41 120 21C60 4 28-39 28-79C28-151 127-206 249-206C367-206 471-155 471-77C471-42 457 9 406 37C353 65 295 65 234 65C209 65 166 65 159 66C127 70 106 101 106 133ZM250-183C149-183 80-132 80-79C80-33 118 4 162 7H221C307 7 419 7 419-79C419-133 348-183 250-183Z'/>
<glyph unicode='h' horiz-adv-x='555' vert-adv-y='555' glyph-name='h' d='M110 76C110 31 99 31 32 31V0C67 1 118 3 145 3C171 3 223 1 257 0V31C190 31 179 31 179 76V260C179 364 250 420 314 420C377 420 388 366 388 309V76C388 31 377 31 310 31V0C345 1 396 3 423 3C449 3 501 1 535 0V31C483 31 458 31 457 61V252C457 338 457 369 426 405C412 422 379 442 321 442C237 442 193 382 176 344V694L32 683V652C102 652 110 645 110 596V76Z'/>
<glyph unicode='i' horiz-adv-x='277' vert-adv-y='277' glyph-name='i' d='M177 442L37 431V400C102 400 111 394 111 345V76C111 31 100 31 33 31V0C65 1 119 3 143 3C178 3 213 1 247 0V31C181 31 177 36 177 75V442ZM181 616C181 648 156 669 128 669C97 669 75 642 75 616C75 589 97 563 128 563C156 563 181 584 181 616Z'/>
<glyph unicode='k' horiz-adv-x='527' vert-adv-y='527' glyph-name='k' d='M106 76C106 31 95 31 28 31V0C61 1 108 3 137 3C167 3 207 2 247 0V31C180 31 169 31 169 76V179L233 234C310 128 352 72 352 54C352 35 335 31 316 31V0C344 1 403 3 424 3C453 3 482 2 511 0V31C474 31 452 31 414 84L287 263C286 265 281 271 281 274C281 278 352 338 362 346C425 397 467 399 488 400V431C459 428 446 428 418 428C382 428 320 430 306 431V400C325 399 335 388 335 375C335 355 321 343 313 336L172 214V694L28 683V652C98 652 106 645 106 596V76Z'/>
<glyph unicode='l' horiz-adv-x='277' vert-adv-y='277' glyph-name='l' d='M177 694L33 683V652C103 652 111 645 111 596V76C111 31 100 31 33 31V0C66 1 119 3 144 3S218 1 255 0V31C188 31 177 31 177 76V694Z'/>
<glyph unicode='m' horiz-adv-x='833' vert-adv-y='833' glyph-name='m' d='M110 344V76C110 31 99 31 32 31V0C67 1 118 3 145 3C171 3 223 1 257 0V31C190 31 179 31 179 76V260C179 364 250 420 314 420C377 420 388 366 388 309V76C388 31 377 31 310 31V0C345 1 396 3 423 3C449 3 501 1 535 0V31C468 31 457 31 457 76V260C457 364 528 420 592 420C655 420 666 366 666 309V76C666 31 655 31 588 31V0C623 1 674 3 701 3C727 3 779 1 813 0V31C761 31 736 31 735 61V252C735 338 735 369 704 405C690 422 657 442 599 442C515 442 471 382 454 344C440 431 366 442 321 442C248 442 201 399 173 337V442L32 431V400C102 400 110 393 110 344Z'/>
<glyph unicode='n' horiz-adv-x='555' vert-adv-y='555' glyph-name='n' d='M110 344V76C110 31 99 31 32 31V0C67 1 118 3 145 3C171 3 223 1 257 0V31C190 31 179 31 179 76V260C179 364 250 420 314 420C377 420 388 366 388 309V76C388 31 377 31 310 31V0C345 1 396 3 423 3C449 3 501 1 535 0V31C483 31 458 31 457 61V252C457 338 457 369 426 405C412 422 379 442 321 442C248 442 201 399 173 337V442L32 431V400C102 400 110 393 110 344Z'/>
<glyph unicode='r' horiz-adv-x='391' vert-adv-y='391' glyph-name='r' d='M167 332V442L28 431V400C98 400 106 393 106 344V76C106 31 95 31 28 31V0C67 1 114 3 142 3C182 3 229 3 269 0V31H248C174 31 172 42 172 78V232C172 331 214 420 290 420C297 420 299 420 301 419C298 418 278 406 278 380C278 352 299 337 321 337C339 337 364 349 364 381S333 442 290 442C217 442 181 375 167 332Z'/>
<glyph unicode='s' horiz-adv-x='394' vert-adv-y='394' glyph-name='s' d='M208 194C230 190 312 174 312 102C312 51 277 11 199 11C115 11 79 68 60 153C57 166 56 170 46 170C33 170 33 163 33 145V13C33-4 33-11 44-11C49-11 50-10 69 9C71 11 71 13 89 32C133-10 178-11 199-11C314-11 360 56 360 128C360 181 330 211 318 223C285 255 246 263 204 271C148 282 81 295 81 353C81 388 107 429 193 429C303 429 308 339 310 308C311 299 320 299 322 299C335 299 335 304 335 323V424C335 441 335 448 324 448C319 448 317 448 304 436C301 432 291 423 287 420C249 448 208 448 193 448C71 448 33 381 33 325C33 290 49 262 76 240C108 214 136 208 208 194Z'/>
<glyph unicode='t' horiz-adv-x='388' vert-adv-y='388' glyph-name='t' d='M173 400H316V431H173V615H148C147 533 117 426 19 422V400H104V124C104 1 197-11 233-11C304-11 332 60 332 124V181H307V126C307 52 277 14 240 14C173 14 173 105 173 122V400Z'/>
<glyph unicode='u' horiz-adv-x='555' vert-adv-y='555' glyph-name='u' d='M391 79V-11L535 0V31C465 31 457 38 457 87V442L310 431V400C380 400 388 393 388 344V166C388 79 340 11 267 11C183 11 179 58 179 110V442L32 431V400C110 400 110 397 110 308V158C110 80 110-11 262-11C318-11 362 17 391 79Z'/>
<glyph unicode='w' horiz-adv-x='722' vert-adv-y='722' glyph-name='w' d='M619 336C637 386 668 399 703 400V431C681 429 652 428 630 428C601 428 556 430 537 431V400C573 399 595 381 595 352C595 346 595 344 590 331L499 75L400 354C396 366 395 368 395 373C395 400 434 400 454 400V431C425 430 374 428 350 428C320 428 291 429 261 431V400C298 400 314 398 324 385C329 379 340 349 347 330L261 88L166 355C161 367 161 369 161 373C161 400 200 400 220 400V431C190 430 134 428 111 428C107 428 54 429 18 431V400C68 400 80 397 92 365L218 11C223-3 226-11 239-11S254-5 259 9L360 292L462 8C466-3 469-11 482-11S498-2 502 8L619 336Z'/>
<glyph unicode='z' horiz-adv-x='444' vert-adv-y='444' glyph-name='z' d='M390 401C399 412 399 414 399 418C399 431 391 431 373 431H53L42 270H67C73 372 92 409 202 409H316L37 32C28 21 28 19 28 14C28 0 35 0 54 0H384L401 187H376C367 69 346 25 230 25H112L390 401Z'/>
<glyph unicode='¨' horiz-adv-x='500' vert-adv-y='500' glyph-name='dieresis' d='M203 619C203 643 183 669 153 669C125 669 103 647 103 619S125 569 153 569C183 569 203 595 203 619ZM396 619C396 647 374 669 346 669C316 669 296 643 296 619S316 569 346 569C374 569 396 591 396 619Z'/>
</font>
</defs>
<style type='text/css'>
<![CDATA[text.f0 {font-family:cmr10;font-size:9.96264px}
]]>
</style>
<g id='page1'>
<path d='M8.4258 142.285161C8.4258 125.7109-5.0117 112.2773-21.585938 112.2773C-38.1602 112.2773-51.5938 125.7109-51.5938 142.285161C-51.5938 158.8594-38.1602 172.2969-21.585938 172.2969C-5.0117 172.2969 8.4258 158.8594 8.4258 142.285161Z' fill='#f2f2f2'/>
<path d='M8.4258 142.285161C8.4258 125.7109-5.0117 112.2773-21.585938 112.2773C-38.1602 112.2773-51.5938 125.7109-51.5938 142.285161C-51.5938 158.8594-38.1602 172.2969-21.585938 172.2969C-5.0117 172.2969 8.4258 158.8594 8.4258 142.285161Z' stroke='#000' fill='none' stroke-width='5.18065' stroke-miterlimit='10'/>
<path d='M8.4258 142.285161C8.4258 125.7109-5.0117 112.2773-21.585938 112.2773C-38.1602 112.2773-51.5938 125.7109-51.5938 142.285161C-51.5938 158.8594-38.1602 172.2969-21.585938 172.2969C-5.0117 172.2969 8.4258 158.8594 8.4258 142.285161Z' stroke='#fff' fill='none' stroke-width='3.9851' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 -25.9862 3.459)'>Bereitschaft</text>
<path d='M-65.0625 142.285161H-54.4023' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M-53.488319 142.285161C-54.632851 142.058598-55.77738 141.597661-57.15238 140.79688C-55.77738 141.82813-55.77738 142.746098-57.15238 143.77735C-55.77738 142.972661-54.632851 142.51563-53.488319 142.285161Z'/>
<path d='M-53.488319 142.285161C-54.632851 142.058598-55.77738 141.597661-57.15238 140.79688C-55.77738 141.82813-55.77738 142.746098-57.15238 143.77735C-55.77738 142.972661-54.632851 142.51563-53.488319 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<path d='M180.7888 142.285161C180.7888 124.4492 166.3318 109.9922 148.4958 109.9922S116.2028 124.4492 116.2028 142.285161C116.2028 160.1211 130.6598 174.5781 148.4958 174.5781S180.7888 160.1211 180.7888 142.285161Z' fill='#f2f2f2'/>
<path d='M180.7888 142.285161C180.7888 124.4492 166.3318 109.9922 148.4958 109.9922S116.2028 124.4492 116.2028 142.285161C116.2028 160.1211 130.6598 174.5781 148.4958 174.5781S180.7888 160.1211 180.7888 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 141.9912 2.435)'>Menüanzeige</text>
<path d='M349.6098 142.285161C349.6098 125.1484 335.7148 111.2539 318.5778 111.2539C301.4418 111.2539 287.5468 125.1484 287.5468 142.285161C287.5468 159.4258 301.4418 173.3164 318.5778 173.3164C335.7148 173.3164 349.6098 159.4258 349.6098 142.285161Z' fill='#f2f2f2'/>
<path d='M349.6098 142.285161C349.6098 125.1484 335.7148 111.2539 318.5778 111.2539C301.4418 111.2539 287.5468 125.1484 287.5468 142.285161C287.5468 159.4258 301.4418 173.3164 318.5778 173.3164C335.7148 173.3164 349.6098 159.4258 349.6098 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 313.4212 2.491)'>Geldeingabe</text>
<path d='M538.8128 142.285161C538.8128 114.5859 516.3558 92.1328 488.6598 92.1328C460.9608 92.1328 438.5078 114.5859 438.5078 142.285161C438.5078 169.9844 460.9608 192.4375 488.6598 192.4375C516.3558 192.4375 538.8128 169.9844 538.8128 142.285161Z' fill='#f2f2f2'/>
<path d='M538.8128 142.285161C538.8128 114.5859 516.3558 92.1328 488.6598 92.1328C460.9608 92.1328 438.5078 114.5859 438.5078 142.285161C438.5078 169.9844 460.9608 192.4375 488.6598 192.4375C516.3558 192.4375 538.8128 169.9844 538.8128 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 463.9992 2.491)'>Zahlung abschließen?</text>
<path d='M522.5738-27.793C522.5738-46.523 507.3908-61.707 488.6598-61.707C469.9298-61.707 454.7458-46.523 454.7458-27.793C454.7458-9.066 469.9298 6.117 488.6598 6.117C507.3908 6.117 522.5738-9.066 522.5738-27.793Z' fill='#f2f2f2'/>
<path d='M522.5738-27.793C522.5738-46.523 507.3908-61.707 488.6598-61.707C469.9298-61.707 454.7458-46.523 454.7458-27.793C454.7458-9.066 469.9298 6.117 488.6598 6.117C507.3908 6.117 522.5738-9.066 522.5738-27.793Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 480.4442 -167.5902)'>Geldrückgabe</text>
<path d='M689.4648 142.285161C689.4648 125.3164 675.7068 111.5625 658.7388 111.5625C641.7698 111.5625 628.0158 125.3164 628.0158 142.285161C628.0158 159.2539 641.7698 173.0078 658.7388 173.0078C675.7068 173.0078 689.4648 159.2539 689.4648 142.285161Z' fill='#f2f2f2'/>
<path d='M689.4648 142.285161C689.4648 125.3164 675.7068 111.5625 658.7388 111.5625C641.7698 111.5625 628.0158 125.3164 628.0158 142.285161C628.0158 159.2539 641.7698 173.0078 658.7388 173.0078C675.7068 173.0078 689.4648 159.2539 689.4648 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 653.8812 2.491)'>Zubereitung</text>
<path d='M9.0234 142.285161H113.6918' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M114.609168 142.285161C113.464637 142.058598 112.32011 141.597661 110.94511 140.79688C112.32011 141.82813 112.32011 142.746098 110.94511 143.77735C112.32011 142.972661 113.464637 142.51563 114.609168 142.285161Z'/>
<path d='M114.609168 142.285161C113.464637 142.058598 112.32011 141.597661 110.94511 140.79688C112.32011 141.82813 112.32011 142.746098 110.94511 143.77735C112.32011 142.972661 113.464637 142.51563 114.609168 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 72.9649 -3.619)'>Start</text>
<path d='M120.2738 158.582C80.9728 180.8242 43.8359 180.5039 6.8281 158.7109' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M6.039065 158.2464C6.910159 159.023745 7.664066 160.000309 8.441402 161.390936C7.781246 159.804999 8.246091 159.015933 9.953128 158.82453C8.363285 158.816718 7.140621 158.629217 6.039065 158.2464Z'/>
<path d='M6.039065 158.2464C6.910159 159.023745 7.664066 160.000309 8.441402 161.390936C7.781246 159.804999 8.246091 159.015933 9.953128 158.82453C8.363285 158.816718 7.140621 158.629217 6.039065 158.2464Z' stroke='#000' fill='none' stroke-width='.597726' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 65.2035 29.113)'>Abbruch</text>
<path d='M181.0898 142.285161H285.0348' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M285.952626 142.285161C284.808095 142.058598 283.65966 141.597661 282.28466 140.79688C283.65966 141.82813 283.65966 142.746098 282.28466 143.77735C283.65966 142.972661 284.808095 142.51563 285.952626 142.285161Z'/>
<path d='M285.952626 142.285161C284.808095 142.058598 283.65966 141.597661 282.28466 140.79688C283.65966 141.82813 283.65966 142.746098 282.28466 143.77735C283.65966 142.972661 284.808095 142.51563 285.952626 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 212.3662 -3.619)'>Gewünschter Kaffee</text>
<path d='M291.4458 157.9492C252.6758 180.6211 215.7378 180.8242 178.6448 159.6758' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M177.847664 159.223075C178.730475 159.988692 179.496099 160.953536 180.292988 162.332436C179.609375 160.75431 180.062503 159.961347 181.769539 159.746502C180.175788 159.762126 178.957034 159.590254 177.847664 159.223075Z'/>
<path d='M177.847664 159.223075C178.730475 159.988692 179.496099 160.953536 180.292988 162.332436C179.609375 160.75431 180.062503 159.961347 181.769539 159.746502C180.175788 159.762126 178.957034 159.590254 177.847664 159.223075Z' stroke='#000' fill='none' stroke-width='.597734' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 240.5262 29.202)'>Zurück</text>
<path d='M291.4458 157.9492C194.6098 213.6953 101.6168 213.5781 6.8359 158.6992' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M6.042967 158.238541C6.921875 159.011975 7.683595 159.980733 8.468745 161.363548C7.796871 159.785424 8.257809 158.988541 9.960937 158.785422C8.371086 158.793231 7.148434 158.613548 6.042967 158.238541Z'/>
<path d='M6.042967 158.238541C6.921875 159.011975 7.683595 159.980733 8.468745 161.363548C7.796871 159.785424 8.257809 158.988541 9.960937 158.785422C8.371086 158.793231 7.148434 158.613548 6.042967 158.238541Z' stroke='#000' fill='none' stroke-width='.597744' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 150.8832 53.765)'>Abbruch</text>
<path d='M349.9058 142.285161H435.9958' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M436.914304 142.285161C435.765867 142.058598 434.62134 141.597661 433.24634 140.79688C434.62134 141.82813 434.62134 142.746098 433.24634 143.77735C434.62134 142.972661 435.765867 142.51563 436.914304 142.285161Z'/>
<path d='M436.914304 142.285161C435.765867 142.058598 434.62134 141.597661 433.24634 140.79688C434.62134 141.82813 434.62134 142.746098 433.24634 143.77735C434.62134 142.972661 435.765867 142.51563 436.914304 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 405.3672 -3.619)'>Geld</text>
<path d='M488.6598 91.8359V8.629' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M488.660617 7.714848C488.430149 8.859379 487.973117 10.00391 487.16843 11.37891C488.19968 10.00391 489.117649 10.00391 490.1489 11.37891C489.348117 10.00391 488.88718 8.859379 488.660617 7.714848Z'/>
<path d='M488.660617 7.714848C488.430149 8.859379 487.973117 10.00391 487.16843 11.37891C488.19968 10.00391 489.117649 10.00391 490.1489 11.37891C489.348117 10.00391 488.88718 8.859379 488.660617 7.714848Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 468.9582 -89.7004)'>Abbruch</text>
<path d='M539.1098 142.285161H625.5038' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M626.421565 142.285161C625.277034 142.058598 624.1286 141.597661 622.7536 140.79688C624.1286 141.82813 624.1286 142.746098 622.7536 143.77735C624.1286 142.972661 625.277034 142.51563 626.421565 142.285161Z'/>
<path d='M626.421565 142.285161C625.277034 142.058598 624.1286 141.597661 622.7536 140.79688C624.1286 141.82813 624.1286 142.746098 622.7536 143.77735C624.1286 142.972661 625.277034 142.51563 626.421565 142.285161Z' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 590.5932 -3.619)'>Weiter</text>
<path d='M455.1408-34.652C270.5858-71.703 123.0858-21.918 .1836 117.7266' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M-.421874 118.4141C.507817 117.707074 1.605479 117.148473 3.117191 116.644579C1.43359 116.996135 .746093 116.390667 .882823 114.679726C.574223 116.238319 .16406 117.402386-.421874 118.4141Z'/>
<path d='M-.421874 118.4141C.507817 117.707074 1.605479 117.148473 3.117191 116.644579C1.43359 116.996135 .746093 116.390667 .882823 114.679726C.574223 116.238319 .16406 117.402386-.421874 118.4141Z' stroke='#000' fill='none' stroke-width='.597735' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 159.4352 -163.3436)'>Geldentnahme</text>
<path d='M643.2308 169.1523C516.4648 388.434 120.2418 388.215-5.1758 170.707' stroke='#000' fill='none' stroke-width='.59776' stroke-miterlimit='10'/>
<path d='M-5.632798 169.914256C-5.261706 171.023638-5.085918 172.242392-5.093736 173.83614C-4.886707 172.129097-4.093733 171.672079-2.511704 172.347857C-3.894517 171.55488-4.863262 170.793173-5.632798 169.914256Z'/>
<path d='M-5.632798 169.914256C-5.261706 171.023638-5.085918 172.242392-5.093736 173.83614C-4.886707 172.129097-4.093733 171.672079-2.511704 172.347857C-3.894517 171.55488-4.863262 170.793173-5.632798 169.914256Z' stroke='#000' fill='none' stroke-width='.597747' stroke-miterlimit='10' stroke-linejoin='bevel'/>
<text class='f0' x='-21.584159' y='142.285886' transform='matrix(1 0 0 1 317.6212 201.739)'>Entnahme des Kaffees</text>
</g>
</svg>
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{automata,positioning,arrows}
\tikzset{node distance=4.5cm,
every state/.style={
semithick,
fill=gray!10},
initial text={},
double distance=4pt,
every edge/.style={
draw,
->,>=stealth',
auto,
semithick}}
\begin{document}
\begin{tikzpicture}[shorten >=1pt,node distance=6cm,on grid,auto]
\node[state, initial, accepting] (q1) {$\textrm{Bereitschaft}$};
\node[state, right of=q1] (q2) {$\textrm{Menüanzeige}$};
\node[state, right of=q2] (q3) {$\textrm{Geldeingabe}$};
\node[state, right of=q3] (q4) {$\textrm{Zahlung abschließen?}$};
\node[state, above of=q4] (q5) {$\textrm{Geldrückgabe}$};
\node[state, right of=q4] (q6) {$\textrm{Zubereitung}$};
\draw (q1) edge node{$\textrm{Start}$} (q2)
(q2) edge[bend left, below] node[anchor=south]{$\textrm{Abbruch}$} (q1)
(q2) edge node{$\textrm{Gewünschter Kaffee}$} (q3)
(q3) edge[bend left, below] node[anchor=south]{$\textrm{Zurück}$} (q2)
(q3) edge[bend left, below] node[anchor=south]{$\textrm{Abbruch}$} (q1)
(q3) edge node{$\textrm{Geld}$} (q4)
(q4) edge node{$\textrm{Abbruch}$} (q5)
(q4) edge node{$\textrm{Weiter}$} (q6)
(q5) edge[bend right, below] node[anchor=east]{$\textrm{Geldentnahme}$} (q1)
(q6) edge[bend left=60, below] node{$\textrm{Entnahme}$} (q1);
\end{tikzpicture}
\end{document}
@stefankuehnel
Copy link
Author

stefankuehnel commented May 12, 2020

Usage

1. Download and install MiKTex:
Download here: https://miktex.org/download

2. Set system environment variables correctly:
To use the latex command in your command line, it is necessary to define the system environment variables correctly. To do this, copy the path to your MiKTex installation and paste it into the system environment variables configuration:

Note: The path may vary depending on your installation.

C:\Program Files\MiKTeX 2.9\miktex\bin\x64\

2. Check compiler version:
Run latex in your command prompt and check for the following output.

Note: The version number may be different depending on the version you're using.

> pdfTeX, Version 3.14159265-2.6-1.40.21 (MiKTeX 2.9.7300 64-bit)

3. Run the following commands in the dfa.tex source directory:

$ latex dfa.tex
$ dvisvgm dfa.dvi

References:

License:

Copyright (c) 2020 Stefan Kühnel, licensed under the Academic Free License version 3.0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment