Knowledge (XXG)

Asymptote (vector graphics language)

Source 📝

882: 866: 27: 276:
code for speed without sacrificing portability. High-level graphics commands are implemented in the Asymptote language itself, allowing them to be easily tailored to specific applications. It also appears to be the first software package to lift
1056: 193:
language – developed by Andy Hammerlindl, John C. Bowman (University of Alberta), and Tom Prince – which provides a natural coordinate-based framework for
296:
widget set), xasy.py – this allows an inexperienced user to quickly draw up objects and save them as .asy source code which can then be examined or edited by hand.
1049: 269:
and deferred drawing to solve overall size constraint issues between fixed-sized objects (labels and arrowheads) and objects that should scale with figure size.
964:
The 3D Asymptote Generalization of MetaPost Bézier Interpolation, J. C. Bowman, Proceedings in Applied Mathematics and Mechanics, 7:1, 2010021-2010022 (2007)
1362: 1042: 1382: 1078: 976:
Asymptote: Lifting TeX to three dimensions, J. C. Bowman and Orest Shardt, TUGBOAT: The Communications of the TeX Users Group, 30:1, 58-63 (2009).
953:
Asymptote: A vector graphics language, J. C. Bowman and A. Hammerlindl, TUGBOAT: The Communications of the TeX Users Group, 29:2, 288-294 (2008).
265:
provides a language for typesetting equations. It is mathematically oriented (e.g. rotation of vectors by complex multiplication), and uses the
1357: 1281: 1180: 887: 1342: 1138: 1372: 214: 150: 1352: 1347: 1068: 911: 289: 987:
Surface Parametrization of Nonsimply Connected Planar Bézier Regions, O. Shardt and J. C. Bowman, Computer-Aided Design,
1103: 1367: 85: 1098: 272:
Asymptote fully generalizes MetaPost path construction algorithms to three dimensions, and compiles commands into
1321: 1246: 1241: 1024: 1377: 1153: 1118: 250: 238: 234: 1019: 1148: 1163: 1108: 42: 1123: 37: 1034: 312: 282: 931: 975: 865: 1261: 1251: 1221: 952: 242: 206: 194: 986: 963: 1316: 1173: 1168: 145: 133: 1065: 1029: 273: 190: 53: 1185: 266: 138: 1336: 293: 210: 116: 1266: 1009: 254: 111: 46: 1005: 877: 230: 1256: 26: 1226: 1143: 1133: 1128: 1113: 901: 895: 246: 178: 1216: 202: 288:
Asymptote is also notable for having a graphical interface coded in
1014: 161: 126: 1311: 1291: 1206: 1201: 864: 262: 226: 1271: 1236: 1231: 906: 300: 198: 1038: 1286: 1276: 1158: 278: 258: 281:
into three dimensions. This allows Asymptote to be used as a
311:
The following source code allows you to draw a graph of the
299:
The program's syntax was originally described by using a
898:– free Dynamic Mathematics program with Asymptote export 31:
The Asymptote logo (SVG file created with Asymptote)
1304: 1194: 1086: 1076: 172: 156: 144: 132: 122: 110: 84: 62: 52: 36: 862:The code above yields the following pdf output. 1050: 1020:Philippe Ivaldi's extensive Asymptote gallery 225:Asymptote typesets labels and equations with 8: 58:Andy Hammerlindl, John C. Bowman, Tom Prince 19: 1083: 1057: 1043: 1035: 18: 869:Compiled output of Asymptote example code 253:-like syntax. It provides a language for 197:. Asymptote runs on all major platforms ( 1030:An Asymptote Tutorial by Charles Staats 923: 1025:Asymptote: Art of Problem Solving Wiki 7: 1006:Asymptote (vector graphics language) 888:Free and open-source software portal 315:by means of the Asymptote language. 16:Descriptive vector graphics language 213:, available under the terms of the 14: 215:GNU Lesser General Public License 880: 25: 1383:Software using the LGPL license 1363:Free software programmed in C++ 257:mathematical figures, just as 1: 1358:Free software programmed in C 221:Syntax and notable features 68:; 20 years ago 1399: 1015:Asymptote official website 245:output. It is inspired by 1343:Free educational software 1322:Linden Scripting Language 229:, producing high-quality 177: 106: 80: 24: 1373:TeX SourceForge projects 317: 91:2.91 / 15 August 2024 1149:Remote Imaging Protocol 123:Implementation language 1353:Free plotting software 1348:Free graphics software 1109:Graphics Layout Engine 870: 868: 283:3D vector file format 93:; 28 days ago 307:Application examples 303:compatible grammar. 63:First appeared 21: 1368:Linux TeX software 871: 313:Heaviside function 1330: 1329: 1300: 1299: 842:"$ O$ " 770:"$ y$ " 701:"$ x$ " 207:Microsoft Windows 195:technical drawing 189:is a descriptive 184: 183: 112:Typing discipline 1390: 1317:Web3D Consortium 1084: 1071:and file formats 1069:markup languages 1059: 1052: 1045: 1036: 993: 984: 978: 973: 967: 961: 955: 950: 944: 943: 941: 939: 934:. 15 August 2024 928: 890: 885: 884: 883: 858: 855: 852: 849: 846: 843: 840: 837: 834: 831: 828: 825: 822: 819: 816: 813: 810: 807: 804: 801: 798: 795: 792: 789: 786: 783: 780: 777: 774: 771: 768: 765: 762: 759: 756: 753: 750: 747: 744: 741: 738: 735: 732: 729: 726: 723: 720: 717: 714: 711: 708: 705: 702: 699: 696: 693: 690: 687: 684: 681: 678: 675: 672: 669: 666: 663: 660: 657: 654: 651: 648: 645: 642: 639: 636: 633: 630: 627: 624: 621: 618: 615: 612: 609: 606: 603: 600: 597: 594: 591: 588: 585: 582: 579: 576: 573: 570: 567: 564: 561: 558: 555: 552: 549: 546: 543: 540: 537: 534: 531: 528: 525: 522: 519: 516: 513: 510: 507: 504: 501: 498: 495: 492: 489: 486: 483: 480: 477: 474: 471: 468: 465: 462: 459: 456: 453: 450: 447: 444: 441: 438: 435: 432: 429: 426: 423: 420: 417: 414: 411: 408: 405: 402: 399: 396: 393: 390: 387: 384: 381: 378: 375: 372: 369: 366: 363: 360: 357: 354: 351: 348: 345: 342: 339: 336: 333: 330: 327: 324: 321: 168: 165: 163: 101: 99: 94: 76: 74: 69: 54:Designed by 29: 22: 1398: 1397: 1393: 1392: 1391: 1389: 1388: 1387: 1378:Vector graphics 1333: 1332: 1331: 1326: 1296: 1190: 1072: 1066:Vector graphics 1063: 1002: 997: 996: 985: 981: 974: 970: 962: 958: 951: 947: 937: 935: 930: 929: 925: 920: 886: 881: 879: 876: 860: 859: 856: 853: 850: 847: 844: 841: 838: 835: 832: 829: 826: 823: 820: 817: 814: 811: 808: 805: 802: 799: 796: 793: 790: 787: 784: 781: 778: 775: 772: 769: 766: 763: 760: 757: 754: 751: 748: 745: 742: 739: 736: 733: 730: 727: 724: 721: 718: 715: 712: 709: 706: 703: 700: 697: 694: 691: 688: 685: 682: 679: 676: 673: 670: 667: 664: 661: 658: 655: 652: 649: 646: 643: 640: 637: 634: 631: 628: 625: 622: 619: 616: 613: 610: 607: 604: 601: 598: 596:"4 4" 595: 592: 589: 586: 583: 580: 577: 574: 571: 568: 565: 562: 559: 556: 553: 550: 547: 544: 541: 538: 535: 532: 529: 526: 523: 520: 517: 514: 511: 508: 505: 502: 499: 496: 493: 490: 487: 484: 481: 478: 475: 472: 469: 466: 463: 460: 457: 454: 451: 448: 445: 442: 439: 436: 433: 430: 427: 424: 421: 418: 415: 412: 409: 406: 403: 400: 397: 394: 391: 388: 385: 382: 379: 376: 373: 370: 367: 364: 361: 358: 355: 352: 349: 346: 344:"pdf" 343: 340: 337: 334: 331: 328: 325: 322: 319: 309: 274:virtual machine 223: 191:vector graphics 160: 102: 97: 95: 92: 72: 70: 67: 32: 17: 12: 11: 5: 1396: 1394: 1386: 1385: 1380: 1375: 1370: 1365: 1360: 1355: 1350: 1345: 1335: 1334: 1328: 1327: 1325: 1324: 1319: 1314: 1308: 1306: 1302: 1301: 1298: 1297: 1295: 1294: 1289: 1284: 1279: 1274: 1269: 1264: 1259: 1254: 1249: 1244: 1239: 1234: 1229: 1224: 1219: 1214: 1209: 1204: 1198: 1196: 1192: 1191: 1189: 1188: 1183: 1178: 1177: 1176: 1166: 1161: 1156: 1151: 1146: 1141: 1136: 1131: 1126: 1121: 1116: 1111: 1106: 1101: 1096: 1090: 1088: 1081: 1074: 1073: 1064: 1062: 1061: 1054: 1047: 1039: 1033: 1032: 1027: 1022: 1017: 1012: 1001: 1000:External links 998: 995: 994: 979: 968: 956: 945: 932:"Release 2.91" 922: 921: 919: 916: 915: 914: 909: 904: 899: 892: 891: 875: 872: 318: 308: 305: 267:simplex method 222: 219: 182: 181: 175: 174: 170: 169: 158: 154: 153: 148: 142: 141: 139:Cross-platform 136: 130: 129: 124: 120: 119: 114: 108: 107: 104: 103: 98:15 August 2024 90: 88: 86:Stable release 82: 81: 78: 77: 64: 60: 59: 56: 50: 49: 40: 34: 33: 30: 15: 13: 10: 9: 6: 4: 3: 2: 1395: 1384: 1381: 1379: 1376: 1374: 1371: 1369: 1366: 1364: 1361: 1359: 1356: 1354: 1351: 1349: 1346: 1344: 1341: 1340: 1338: 1323: 1320: 1318: 1315: 1313: 1310: 1309: 1307: 1303: 1293: 1290: 1288: 1285: 1283: 1280: 1278: 1275: 1273: 1270: 1268: 1265: 1263: 1260: 1258: 1255: 1253: 1250: 1248: 1245: 1243: 1240: 1238: 1235: 1233: 1230: 1228: 1225: 1223: 1220: 1218: 1215: 1213: 1210: 1208: 1205: 1203: 1200: 1199: 1197: 1193: 1187: 1184: 1182: 1179: 1175: 1172: 1171: 1170: 1167: 1165: 1162: 1160: 1157: 1155: 1152: 1150: 1147: 1145: 1142: 1140: 1137: 1135: 1132: 1130: 1127: 1125: 1122: 1120: 1117: 1115: 1112: 1110: 1107: 1105: 1102: 1100: 1097: 1095: 1092: 1091: 1089: 1085: 1082: 1080: 1075: 1070: 1067: 1060: 1055: 1053: 1048: 1046: 1041: 1040: 1037: 1031: 1028: 1026: 1023: 1021: 1018: 1016: 1013: 1011: 1007: 1004: 1003: 999: 992: 990: 983: 980: 977: 972: 969: 965: 960: 957: 954: 949: 946: 933: 927: 924: 917: 913: 910: 908: 905: 903: 900: 897: 894: 893: 889: 878: 873: 867: 863: 316: 314: 306: 304: 302: 297: 295: 291: 286: 284: 280: 275: 270: 268: 264: 260: 256: 252: 248: 244: 240: 236: 232: 228: 220: 218: 216: 212: 211:free software 208: 204: 200: 196: 192: 188: 180: 176: 173:Influenced by 171: 167: 159: 155: 152: 149: 147: 143: 140: 137: 135: 131: 128: 125: 121: 118: 115: 113: 109: 105: 89: 87: 83: 79: 65: 61: 57: 55: 51: 48: 44: 41: 39: 35: 28: 23: 1211: 1093: 988: 982: 971: 959: 948: 936:. Retrieved 926: 861: 368:// Function. 310: 298: 287: 271: 249:, but has a 224: 186: 185: 164:.sourceforge 1010:SourceForge 255:typesetting 47:typesetting 1337:Categories 918:References 833:// Origin. 231:PostScript 43:imperative 1212:Asymptote 1104:DrawingML 1094:Asymptote 938:20 August 338:outformat 292:(and the 209:). It is 187:Asymptote 162:asymptote 20:Asymptote 1305:See also 1227:GeoGebra 1144:PSTricks 1134:PGF/TikZ 1129:MetaPost 1114:GeoGebra 902:PSTricks 896:GeoGebra 874:See also 686:// Axes. 638:filldraw 590:linetype 332:settings 247:MetaPost 241:, or 3D 217:(LGPL). 179:MetaPost 38:Paradigm 1247:OpenGEX 1217:COLLADA 991:(2012). 157:Website 146:License 96: ( 71: ( 1124:Lottie 836:labelx 644:circle 608:circle 329:import 320:import 290:Python 203:Mac OS 117:strong 1312:Web3D 1292:xVRML 1207:3DXML 1202:3DMLW 803:Arrow 776:Ticks 764:Label 758:yaxis 752:Arrow 707:Ticks 695:Label 689:xaxis 668:white 626:0.035 512:graph 476:graph 323:graph 263:LaTeX 227:LaTeX 1282:XAML 1272:VRML 1257:STEP 1237:IGES 1232:glTF 1181:XAML 1139:PGML 1119:HVIF 1079:type 989:44:5 940:2024 907:TikZ 827:1.25 821:ymax 815:0.18 809:ymin 785:real 716:real 662:0.03 602:fill 542:draw 506:draw 470:draw 446:real 422:real 398:real 371:real 350:size 301:Yacc 199:Unix 151:LGPL 73:2004 66:2004 1287:XVL 1277:X3D 1267:U3D 1262:STL 1252:PRC 1222:DWF 1186:Xar 1174:EMF 1169:WMF 1164:VML 1159:SWF 1154:SVG 1099:CGM 1077:By 1008:on 912:PyX 800:}), 791:0.5 782:new 749:}), 740:0.5 734:0.5 713:new 680:1.5 674:red 632:red 599:)); 584:1.5 578:red 530:red 494:red 440:1.5 386:1.5 362:300 356:300 285:. 279:TeX 259:TeX 243:PRC 239:SVG 235:PDF 166:.io 127:C++ 1339:: 1242:JT 1195:3D 1087:2D 857:); 854:SW 830:); 812:=- 773:), 755:); 704:), 683:); 665:), 659:), 647:(( 635:); 629:), 623:), 611:(( 575:), 560:-- 545:(( 539:); 527:), 524:y2 518:x2 503:); 491:), 488:y1 482:x1 467:}; 449:y2 443:}; 425:x2 419:}; 401:y1 395:}; 374:x1 365:); 294:Tk 237:, 233:, 205:, 201:, 134:OS 45:, 1058:e 1051:t 1044:v 966:. 942:. 851:, 848:0 845:, 839:( 824:= 818:, 806:, 797:1 794:, 788:{ 779:( 767:( 761:( 746:1 743:, 737:, 731:- 728:, 725:1 722:- 719:{ 710:( 698:( 692:( 677:+ 671:, 656:0 653:, 650:0 641:( 620:1 617:, 614:0 605:( 593:( 587:+ 581:+ 572:1 569:, 566:0 563:( 557:) 554:0 551:, 548:0 536:2 533:+ 521:, 515:( 509:( 500:2 497:+ 485:, 479:( 473:( 464:1 461:, 458:1 455:{ 452:= 437:, 434:0 431:{ 428:= 416:0 413:, 410:0 407:{ 404:= 392:0 389:, 383:- 380:{ 377:= 359:, 353:( 347:; 341:= 335:; 326:; 261:/ 251:C 100:) 75:)

Index


Paradigm
imperative
typesetting
Designed by
Stable release
Typing discipline
strong
C++
OS
Cross-platform
License
LGPL
asymptote.sourceforge.io
MetaPost
vector graphics
technical drawing
Unix
Mac OS
Microsoft Windows
free software
GNU Lesser General Public License
LaTeX
PostScript
PDF
SVG
PRC
MetaPost
C
typesetting

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.