index.html 48 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="shortcut icon" href="../assets/images/favicon.png">
  7. <meta name="generator" content="mkdocs-1.1.2, mkdocs-material-5.5.3">
  8. <title>Shapes Reference - Jypyter Sketcher</title>
  9. <link rel="stylesheet" href="../assets/stylesheets/main.947af8d5.min.css">
  10. <link href="https://fonts.gstatic.com" rel="preconnect" crossorigin>
  11. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,400i,700%7CRoboto+Mono&display=fallback">
  12. <style>body,input{font-family:"Roboto",-apple-system,BlinkMacSystemFont,Helvetica,Arial,sans-serif}code,kbd,pre{font-family:"Roboto Mono",SFMono-Regular,Consolas,Menlo,monospace}</style>
  13. </head>
  14. <body dir="ltr">
  15. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  16. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  17. <label class="md-overlay" for="__drawer"></label>
  18. <div data-md-component="skip">
  19. <a href="#list-of-shapes" class="md-skip">
  20. Skip to content
  21. </a>
  22. </div>
  23. <div data-md-component="announce">
  24. </div>
  25. <header class="md-header" data-md-component="header">
  26. <nav class="md-header-nav md-grid" aria-label="Header">
  27. <a href=".." title="Jypyter Sketcher" class="md-header-nav__button md-logo" aria-label="Jypyter Sketcher">
  28. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
  29. </a>
  30. <label class="md-header-nav__button md-icon" for="__drawer">
  31. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6m0 5h18v2H3v-2m0 5h18v2H3v-2z"/></svg>
  32. </label>
  33. <div class="md-header-nav__title" data-md-component="header-title">
  34. <div class="md-header-nav__ellipsis">
  35. <span class="md-header-nav__topic md-ellipsis">
  36. Jypyter Sketcher
  37. </span>
  38. <span class="md-header-nav__topic md-ellipsis">
  39. Shapes Reference
  40. </span>
  41. </div>
  42. </div>
  43. <label class="md-header-nav__button md-icon" for="__search">
  44. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  45. </label>
  46. <div class="md-search" data-md-component="search" role="dialog">
  47. <label class="md-search__overlay" for="__search"></label>
  48. <div class="md-search__inner" role="search">
  49. <form class="md-search__form" name="search">
  50. <input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" data-md-state="active">
  51. <label class="md-search__icon md-icon" for="__search">
  52. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0116 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.516 6.516 0 019.5 16 6.5 6.5 0 013 9.5 6.5 6.5 0 019.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5z"/></svg>
  53. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  54. </label>
  55. <button type="reset" class="md-search__icon md-icon" aria-label="Clear" data-md-component="search-reset" tabindex="-1">
  56. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"/></svg>
  57. </button>
  58. </form>
  59. <div class="md-search__output">
  60. <div class="md-search__scrollwrap" data-md-scrollfix>
  61. <div class="md-search-result" data-md-component="search-result">
  62. <div class="md-search-result__meta">
  63. Initializing search
  64. </div>
  65. <ol class="md-search-result__list"></ol>
  66. </div>
  67. </div>
  68. </div>
  69. </div>
  70. </div>
  71. </nav>
  72. </header>
  73. <div class="md-container" data-md-component="container">
  74. <main class="md-main" data-md-component="main">
  75. <div class="md-main__inner md-grid">
  76. <div class="md-sidebar md-sidebar--primary" data-md-component="navigation">
  77. <div class="md-sidebar__scrollwrap">
  78. <div class="md-sidebar__inner">
  79. <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  80. <label class="md-nav__title" for="__drawer">
  81. <a href=".." title="Jypyter Sketcher" class="md-nav__button md-logo" aria-label="Jypyter Sketcher">
  82. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a3 3 0 003-3 3 3 0 00-3-3 3 3 0 00-3 3 3 3 0 003 3m0 3.54C9.64 9.35 6.5 8 3 8v11c3.5 0 6.64 1.35 9 3.54 2.36-2.19 5.5-3.54 9-3.54V8c-3.5 0-6.64 1.35-9 3.54z"/></svg>
  83. </a>
  84. Jypyter Sketcher
  85. </label>
  86. <ul class="md-nav__list" data-md-scrollfix>
  87. <li class="md-nav__item">
  88. <a href=".." title="Home" class="md-nav__link">
  89. Home
  90. </a>
  91. </li>
  92. <li class="md-nav__item">
  93. <a href="../about/" title="About" class="md-nav__link">
  94. About
  95. </a>
  96. </li>
  97. <li class="md-nav__item">
  98. <a href="../presentation/" title="Presentation" class="md-nav__link">
  99. Presentation
  100. </a>
  101. </li>
  102. <li class="md-nav__item">
  103. <a href="../learningbyexample/" title="Learning by Example" class="md-nav__link">
  104. Learning by Example
  105. </a>
  106. </li>
  107. <li class="md-nav__item md-nav__item--active">
  108. <input class="md-nav__toggle md-toggle" data-md-toggle="toc" type="checkbox" id="__toc">
  109. <label class="md-nav__link md-nav__link--active" for="__toc">
  110. Shapes Reference
  111. <span class="md-nav__icon md-icon">
  112. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 9h14V7H3v2m0 4h14v-2H3v2m0 4h14v-2H3v2m16 0h2v-2h-2v2m0-10v2h2V7h-2m0 6h2v-2h-2v2z"/></svg>
  113. </span>
  114. </label>
  115. <a href="./" title="Shapes Reference" class="md-nav__link md-nav__link--active">
  116. Shapes Reference
  117. </a>
  118. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  119. <label class="md-nav__title" for="__toc">
  120. <span class="md-nav__icon md-icon">
  121. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  122. </span>
  123. Table of contents
  124. </label>
  125. <ul class="md-nav__list" data-md-scrollfix>
  126. <li class="md-nav__item">
  127. <a href="#list-of-shapes" class="md-nav__link">
  128. List of Shapes
  129. </a>
  130. </li>
  131. <li class="md-nav__item">
  132. <a href="#line" class="md-nav__link">
  133. Line
  134. </a>
  135. <nav class="md-nav" aria-label="Line">
  136. <ul class="md-nav__list">
  137. <li class="md-nav__item">
  138. <a href="#yaml" class="md-nav__link">
  139. Yaml
  140. </a>
  141. </li>
  142. <li class="md-nav__item">
  143. <a href="#python" class="md-nav__link">
  144. Python
  145. </a>
  146. </li>
  147. </ul>
  148. </nav>
  149. </li>
  150. <li class="md-nav__item">
  151. <a href="#rectangle" class="md-nav__link">
  152. Rectangle
  153. </a>
  154. <nav class="md-nav" aria-label="Rectangle">
  155. <ul class="md-nav__list">
  156. <li class="md-nav__item">
  157. <a href="#yaml_1" class="md-nav__link">
  158. Yaml
  159. </a>
  160. </li>
  161. <li class="md-nav__item">
  162. <a href="#python_1" class="md-nav__link">
  163. Python
  164. </a>
  165. </li>
  166. </ul>
  167. </nav>
  168. </li>
  169. <li class="md-nav__item">
  170. <a href="#circle" class="md-nav__link">
  171. Circle
  172. </a>
  173. <nav class="md-nav" aria-label="Circle">
  174. <ul class="md-nav__list">
  175. <li class="md-nav__item">
  176. <a href="#yaml_2" class="md-nav__link">
  177. Yaml
  178. </a>
  179. </li>
  180. <li class="md-nav__item">
  181. <a href="#python_2" class="md-nav__link">
  182. Python
  183. </a>
  184. </li>
  185. </ul>
  186. </nav>
  187. </li>
  188. <li class="md-nav__item">
  189. <a href="#triangle" class="md-nav__link">
  190. Triangle
  191. </a>
  192. <nav class="md-nav" aria-label="Triangle">
  193. <ul class="md-nav__list">
  194. <li class="md-nav__item">
  195. <a href="#yaml_3" class="md-nav__link">
  196. Yaml
  197. </a>
  198. </li>
  199. <li class="md-nav__item">
  200. <a href="#python_3" class="md-nav__link">
  201. Python
  202. </a>
  203. </li>
  204. </ul>
  205. </nav>
  206. </li>
  207. <li class="md-nav__item">
  208. <a href="#distance-with-text" class="md-nav__link">
  209. Distance with text
  210. </a>
  211. <nav class="md-nav" aria-label="Distance with text">
  212. <ul class="md-nav__list">
  213. <li class="md-nav__item">
  214. <a href="#yaml_4" class="md-nav__link">
  215. Yaml
  216. </a>
  217. </li>
  218. <li class="md-nav__item">
  219. <a href="#python_4" class="md-nav__link">
  220. Python
  221. </a>
  222. </li>
  223. </ul>
  224. </nav>
  225. </li>
  226. <li class="md-nav__item">
  227. <a href="#text" class="md-nav__link">
  228. Text
  229. </a>
  230. <nav class="md-nav" aria-label="Text">
  231. <ul class="md-nav__list">
  232. <li class="md-nav__item">
  233. <a href="#yaml_5" class="md-nav__link">
  234. Yaml
  235. </a>
  236. </li>
  237. <li class="md-nav__item">
  238. <a href="#python_5" class="md-nav__link">
  239. Python
  240. </a>
  241. </li>
  242. </ul>
  243. </nav>
  244. </li>
  245. <li class="md-nav__item">
  246. <a href="#cross" class="md-nav__link">
  247. Cross
  248. </a>
  249. <nav class="md-nav" aria-label="Cross">
  250. <ul class="md-nav__list">
  251. <li class="md-nav__item">
  252. <a href="#yaml_6" class="md-nav__link">
  253. Yaml
  254. </a>
  255. </li>
  256. <li class="md-nav__item">
  257. <a href="#python_6" class="md-nav__link">
  258. Python
  259. </a>
  260. </li>
  261. </ul>
  262. </nav>
  263. </li>
  264. <li class="md-nav__item">
  265. <a href="#axis" class="md-nav__link">
  266. Axis
  267. </a>
  268. <nav class="md-nav" aria-label="Axis">
  269. <ul class="md-nav__list">
  270. <li class="md-nav__item">
  271. <a href="#yaml_7" class="md-nav__link">
  272. Yaml
  273. </a>
  274. </li>
  275. <li class="md-nav__item">
  276. <a href="#python_7" class="md-nav__link">
  277. Python
  278. </a>
  279. </li>
  280. </ul>
  281. </nav>
  282. </li>
  283. <li class="md-nav__item">
  284. <a href="#arc" class="md-nav__link">
  285. Arc
  286. </a>
  287. <nav class="md-nav" aria-label="Arc">
  288. <ul class="md-nav__list">
  289. <li class="md-nav__item">
  290. <a href="#yaml_8" class="md-nav__link">
  291. Yaml
  292. </a>
  293. </li>
  294. <li class="md-nav__item">
  295. <a href="#python_8" class="md-nav__link">
  296. Python
  297. </a>
  298. </li>
  299. </ul>
  300. </nav>
  301. </li>
  302. <li class="md-nav__item">
  303. <a href="#arc_wtext" class="md-nav__link">
  304. Arc_wText
  305. </a>
  306. <nav class="md-nav" aria-label="Arc_wText">
  307. <ul class="md-nav__list">
  308. <li class="md-nav__item">
  309. <a href="#yaml_9" class="md-nav__link">
  310. Yaml
  311. </a>
  312. </li>
  313. <li class="md-nav__item">
  314. <a href="#python_9" class="md-nav__link">
  315. Python
  316. </a>
  317. </li>
  318. </ul>
  319. </nav>
  320. </li>
  321. <li class="md-nav__item">
  322. <a href="#arrow1" class="md-nav__link">
  323. Arrow1
  324. </a>
  325. <nav class="md-nav" aria-label="Arrow1">
  326. <ul class="md-nav__list">
  327. <li class="md-nav__item">
  328. <a href="#yaml_10" class="md-nav__link">
  329. Yaml
  330. </a>
  331. </li>
  332. <li class="md-nav__item">
  333. <a href="#python_10" class="md-nav__link">
  334. Python
  335. </a>
  336. </li>
  337. </ul>
  338. </nav>
  339. </li>
  340. <li class="md-nav__item">
  341. <a href="#force" class="md-nav__link">
  342. Force
  343. </a>
  344. <nav class="md-nav" aria-label="Force">
  345. <ul class="md-nav__list">
  346. <li class="md-nav__item">
  347. <a href="#yaml_11" class="md-nav__link">
  348. Yaml
  349. </a>
  350. </li>
  351. <li class="md-nav__item">
  352. <a href="#python_11" class="md-nav__link">
  353. Python
  354. </a>
  355. </li>
  356. </ul>
  357. </nav>
  358. </li>
  359. <li class="md-nav__item">
  360. <a href="#wall" class="md-nav__link">
  361. Wall
  362. </a>
  363. <nav class="md-nav" aria-label="Wall">
  364. <ul class="md-nav__list">
  365. <li class="md-nav__item">
  366. <a href="#yaml_12" class="md-nav__link">
  367. Yaml
  368. </a>
  369. </li>
  370. <li class="md-nav__item">
  371. <a href="#python_12" class="md-nav__link">
  372. Python
  373. </a>
  374. </li>
  375. </ul>
  376. </nav>
  377. </li>
  378. <li class="md-nav__item">
  379. <a href="#curve" class="md-nav__link">
  380. Curve
  381. </a>
  382. <nav class="md-nav" aria-label="Curve">
  383. <ul class="md-nav__list">
  384. <li class="md-nav__item">
  385. <a href="#yaml_13" class="md-nav__link">
  386. Yaml
  387. </a>
  388. </li>
  389. <li class="md-nav__item">
  390. <a href="#python_13" class="md-nav__link">
  391. Python
  392. </a>
  393. </li>
  394. </ul>
  395. </nav>
  396. </li>
  397. <li class="md-nav__item">
  398. <a href="#trajectory" class="md-nav__link">
  399. Trajectory
  400. </a>
  401. <nav class="md-nav" aria-label="Trajectory">
  402. <ul class="md-nav__list">
  403. <li class="md-nav__item">
  404. <a href="#yaml_14" class="md-nav__link">
  405. Yaml
  406. </a>
  407. </li>
  408. <li class="md-nav__item">
  409. <a href="#python_14" class="md-nav__link">
  410. Python
  411. </a>
  412. </li>
  413. </ul>
  414. </nav>
  415. </li>
  416. <li class="md-nav__item">
  417. <a href="#gravity" class="md-nav__link">
  418. Gravity
  419. </a>
  420. <nav class="md-nav" aria-label="Gravity">
  421. <ul class="md-nav__list">
  422. <li class="md-nav__item">
  423. <a href="#yaml_15" class="md-nav__link">
  424. Yaml
  425. </a>
  426. </li>
  427. <li class="md-nav__item">
  428. <a href="#python_15" class="md-nav__link">
  429. Python
  430. </a>
  431. </li>
  432. </ul>
  433. </nav>
  434. </li>
  435. <li class="md-nav__item">
  436. <a href="#moment" class="md-nav__link">
  437. Moment
  438. </a>
  439. <nav class="md-nav" aria-label="Moment">
  440. <ul class="md-nav__list">
  441. <li class="md-nav__item">
  442. <a href="#yaml_16" class="md-nav__link">
  443. Yaml
  444. </a>
  445. </li>
  446. <li class="md-nav__item">
  447. <a href="#python_16" class="md-nav__link">
  448. Python
  449. </a>
  450. </li>
  451. </ul>
  452. </nav>
  453. </li>
  454. <li class="md-nav__item">
  455. <a href="#text_warrow" class="md-nav__link">
  456. Text_wArrow
  457. </a>
  458. <nav class="md-nav" aria-label="Text_wArrow">
  459. <ul class="md-nav__list">
  460. <li class="md-nav__item">
  461. <a href="#yaml_17" class="md-nav__link">
  462. Yaml
  463. </a>
  464. </li>
  465. <li class="md-nav__item">
  466. <a href="#python_17" class="md-nav__link">
  467. Python
  468. </a>
  469. </li>
  470. </ul>
  471. </nav>
  472. </li>
  473. <li class="md-nav__item">
  474. <a href="#wheel" class="md-nav__link">
  475. Wheel
  476. </a>
  477. <nav class="md-nav" aria-label="Wheel">
  478. <ul class="md-nav__list">
  479. <li class="md-nav__item">
  480. <a href="#yaml_18" class="md-nav__link">
  481. Yaml
  482. </a>
  483. </li>
  484. <li class="md-nav__item">
  485. <a href="#python_18" class="md-nav__link">
  486. Python
  487. </a>
  488. </li>
  489. </ul>
  490. </nav>
  491. </li>
  492. <li class="md-nav__item">
  493. <a href="#spring" class="md-nav__link">
  494. Spring
  495. </a>
  496. <nav class="md-nav" aria-label="Spring">
  497. <ul class="md-nav__list">
  498. <li class="md-nav__item">
  499. <a href="#yaml_19" class="md-nav__link">
  500. Yaml
  501. </a>
  502. </li>
  503. <li class="md-nav__item">
  504. <a href="#python_19" class="md-nav__link">
  505. Python
  506. </a>
  507. </li>
  508. </ul>
  509. </nav>
  510. </li>
  511. <li class="md-nav__item">
  512. <a href="#dashpot" class="md-nav__link">
  513. Dashpot
  514. </a>
  515. <nav class="md-nav" aria-label="Dashpot">
  516. <ul class="md-nav__list">
  517. <li class="md-nav__item">
  518. <a href="#yaml_20" class="md-nav__link">
  519. Yaml
  520. </a>
  521. </li>
  522. <li class="md-nav__item">
  523. <a href="#python_20" class="md-nav__link">
  524. Python
  525. </a>
  526. </li>
  527. </ul>
  528. </nav>
  529. </li>
  530. <li class="md-nav__item">
  531. <a href="#code-to-display-the-above-defined-shapes" class="md-nav__link">
  532. Code to display the above defined shapes
  533. </a>
  534. <nav class="md-nav" aria-label="Code to display the above defined shapes">
  535. <ul class="md-nav__list">
  536. <li class="md-nav__item">
  537. <a href="#yaml_21" class="md-nav__link">
  538. Yaml
  539. </a>
  540. </li>
  541. <li class="md-nav__item">
  542. <a href="#python_21" class="md-nav__link">
  543. Python
  544. </a>
  545. </li>
  546. </ul>
  547. </nav>
  548. </li>
  549. </ul>
  550. </nav>
  551. </li>
  552. <li class="md-nav__item">
  553. <a href="../yamlsketcher/" title="YAML files Reference" class="md-nav__link">
  554. YAML files Reference
  555. </a>
  556. </li>
  557. <li class="md-nav__item">
  558. <a href="../gallerydoc/" title="Gallery" class="md-nav__link">
  559. Gallery
  560. </a>
  561. </li>
  562. </ul>
  563. </nav>
  564. </div>
  565. </div>
  566. </div>
  567. <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
  568. <div class="md-sidebar__scrollwrap">
  569. <div class="md-sidebar__inner">
  570. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  571. <label class="md-nav__title" for="__toc">
  572. <span class="md-nav__icon md-icon">
  573. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  574. </span>
  575. Table of contents
  576. </label>
  577. <ul class="md-nav__list" data-md-scrollfix>
  578. <li class="md-nav__item">
  579. <a href="#list-of-shapes" class="md-nav__link">
  580. List of Shapes
  581. </a>
  582. </li>
  583. <li class="md-nav__item">
  584. <a href="#line" class="md-nav__link">
  585. Line
  586. </a>
  587. <nav class="md-nav" aria-label="Line">
  588. <ul class="md-nav__list">
  589. <li class="md-nav__item">
  590. <a href="#yaml" class="md-nav__link">
  591. Yaml
  592. </a>
  593. </li>
  594. <li class="md-nav__item">
  595. <a href="#python" class="md-nav__link">
  596. Python
  597. </a>
  598. </li>
  599. </ul>
  600. </nav>
  601. </li>
  602. <li class="md-nav__item">
  603. <a href="#rectangle" class="md-nav__link">
  604. Rectangle
  605. </a>
  606. <nav class="md-nav" aria-label="Rectangle">
  607. <ul class="md-nav__list">
  608. <li class="md-nav__item">
  609. <a href="#yaml_1" class="md-nav__link">
  610. Yaml
  611. </a>
  612. </li>
  613. <li class="md-nav__item">
  614. <a href="#python_1" class="md-nav__link">
  615. Python
  616. </a>
  617. </li>
  618. </ul>
  619. </nav>
  620. </li>
  621. <li class="md-nav__item">
  622. <a href="#circle" class="md-nav__link">
  623. Circle
  624. </a>
  625. <nav class="md-nav" aria-label="Circle">
  626. <ul class="md-nav__list">
  627. <li class="md-nav__item">
  628. <a href="#yaml_2" class="md-nav__link">
  629. Yaml
  630. </a>
  631. </li>
  632. <li class="md-nav__item">
  633. <a href="#python_2" class="md-nav__link">
  634. Python
  635. </a>
  636. </li>
  637. </ul>
  638. </nav>
  639. </li>
  640. <li class="md-nav__item">
  641. <a href="#triangle" class="md-nav__link">
  642. Triangle
  643. </a>
  644. <nav class="md-nav" aria-label="Triangle">
  645. <ul class="md-nav__list">
  646. <li class="md-nav__item">
  647. <a href="#yaml_3" class="md-nav__link">
  648. Yaml
  649. </a>
  650. </li>
  651. <li class="md-nav__item">
  652. <a href="#python_3" class="md-nav__link">
  653. Python
  654. </a>
  655. </li>
  656. </ul>
  657. </nav>
  658. </li>
  659. <li class="md-nav__item">
  660. <a href="#distance-with-text" class="md-nav__link">
  661. Distance with text
  662. </a>
  663. <nav class="md-nav" aria-label="Distance with text">
  664. <ul class="md-nav__list">
  665. <li class="md-nav__item">
  666. <a href="#yaml_4" class="md-nav__link">
  667. Yaml
  668. </a>
  669. </li>
  670. <li class="md-nav__item">
  671. <a href="#python_4" class="md-nav__link">
  672. Python
  673. </a>
  674. </li>
  675. </ul>
  676. </nav>
  677. </li>
  678. <li class="md-nav__item">
  679. <a href="#text" class="md-nav__link">
  680. Text
  681. </a>
  682. <nav class="md-nav" aria-label="Text">
  683. <ul class="md-nav__list">
  684. <li class="md-nav__item">
  685. <a href="#yaml_5" class="md-nav__link">
  686. Yaml
  687. </a>
  688. </li>
  689. <li class="md-nav__item">
  690. <a href="#python_5" class="md-nav__link">
  691. Python
  692. </a>
  693. </li>
  694. </ul>
  695. </nav>
  696. </li>
  697. <li class="md-nav__item">
  698. <a href="#cross" class="md-nav__link">
  699. Cross
  700. </a>
  701. <nav class="md-nav" aria-label="Cross">
  702. <ul class="md-nav__list">
  703. <li class="md-nav__item">
  704. <a href="#yaml_6" class="md-nav__link">
  705. Yaml
  706. </a>
  707. </li>
  708. <li class="md-nav__item">
  709. <a href="#python_6" class="md-nav__link">
  710. Python
  711. </a>
  712. </li>
  713. </ul>
  714. </nav>
  715. </li>
  716. <li class="md-nav__item">
  717. <a href="#axis" class="md-nav__link">
  718. Axis
  719. </a>
  720. <nav class="md-nav" aria-label="Axis">
  721. <ul class="md-nav__list">
  722. <li class="md-nav__item">
  723. <a href="#yaml_7" class="md-nav__link">
  724. Yaml
  725. </a>
  726. </li>
  727. <li class="md-nav__item">
  728. <a href="#python_7" class="md-nav__link">
  729. Python
  730. </a>
  731. </li>
  732. </ul>
  733. </nav>
  734. </li>
  735. <li class="md-nav__item">
  736. <a href="#arc" class="md-nav__link">
  737. Arc
  738. </a>
  739. <nav class="md-nav" aria-label="Arc">
  740. <ul class="md-nav__list">
  741. <li class="md-nav__item">
  742. <a href="#yaml_8" class="md-nav__link">
  743. Yaml
  744. </a>
  745. </li>
  746. <li class="md-nav__item">
  747. <a href="#python_8" class="md-nav__link">
  748. Python
  749. </a>
  750. </li>
  751. </ul>
  752. </nav>
  753. </li>
  754. <li class="md-nav__item">
  755. <a href="#arc_wtext" class="md-nav__link">
  756. Arc_wText
  757. </a>
  758. <nav class="md-nav" aria-label="Arc_wText">
  759. <ul class="md-nav__list">
  760. <li class="md-nav__item">
  761. <a href="#yaml_9" class="md-nav__link">
  762. Yaml
  763. </a>
  764. </li>
  765. <li class="md-nav__item">
  766. <a href="#python_9" class="md-nav__link">
  767. Python
  768. </a>
  769. </li>
  770. </ul>
  771. </nav>
  772. </li>
  773. <li class="md-nav__item">
  774. <a href="#arrow1" class="md-nav__link">
  775. Arrow1
  776. </a>
  777. <nav class="md-nav" aria-label="Arrow1">
  778. <ul class="md-nav__list">
  779. <li class="md-nav__item">
  780. <a href="#yaml_10" class="md-nav__link">
  781. Yaml
  782. </a>
  783. </li>
  784. <li class="md-nav__item">
  785. <a href="#python_10" class="md-nav__link">
  786. Python
  787. </a>
  788. </li>
  789. </ul>
  790. </nav>
  791. </li>
  792. <li class="md-nav__item">
  793. <a href="#force" class="md-nav__link">
  794. Force
  795. </a>
  796. <nav class="md-nav" aria-label="Force">
  797. <ul class="md-nav__list">
  798. <li class="md-nav__item">
  799. <a href="#yaml_11" class="md-nav__link">
  800. Yaml
  801. </a>
  802. </li>
  803. <li class="md-nav__item">
  804. <a href="#python_11" class="md-nav__link">
  805. Python
  806. </a>
  807. </li>
  808. </ul>
  809. </nav>
  810. </li>
  811. <li class="md-nav__item">
  812. <a href="#wall" class="md-nav__link">
  813. Wall
  814. </a>
  815. <nav class="md-nav" aria-label="Wall">
  816. <ul class="md-nav__list">
  817. <li class="md-nav__item">
  818. <a href="#yaml_12" class="md-nav__link">
  819. Yaml
  820. </a>
  821. </li>
  822. <li class="md-nav__item">
  823. <a href="#python_12" class="md-nav__link">
  824. Python
  825. </a>
  826. </li>
  827. </ul>
  828. </nav>
  829. </li>
  830. <li class="md-nav__item">
  831. <a href="#curve" class="md-nav__link">
  832. Curve
  833. </a>
  834. <nav class="md-nav" aria-label="Curve">
  835. <ul class="md-nav__list">
  836. <li class="md-nav__item">
  837. <a href="#yaml_13" class="md-nav__link">
  838. Yaml
  839. </a>
  840. </li>
  841. <li class="md-nav__item">
  842. <a href="#python_13" class="md-nav__link">
  843. Python
  844. </a>
  845. </li>
  846. </ul>
  847. </nav>
  848. </li>
  849. <li class="md-nav__item">
  850. <a href="#trajectory" class="md-nav__link">
  851. Trajectory
  852. </a>
  853. <nav class="md-nav" aria-label="Trajectory">
  854. <ul class="md-nav__list">
  855. <li class="md-nav__item">
  856. <a href="#yaml_14" class="md-nav__link">
  857. Yaml
  858. </a>
  859. </li>
  860. <li class="md-nav__item">
  861. <a href="#python_14" class="md-nav__link">
  862. Python
  863. </a>
  864. </li>
  865. </ul>
  866. </nav>
  867. </li>
  868. <li class="md-nav__item">
  869. <a href="#gravity" class="md-nav__link">
  870. Gravity
  871. </a>
  872. <nav class="md-nav" aria-label="Gravity">
  873. <ul class="md-nav__list">
  874. <li class="md-nav__item">
  875. <a href="#yaml_15" class="md-nav__link">
  876. Yaml
  877. </a>
  878. </li>
  879. <li class="md-nav__item">
  880. <a href="#python_15" class="md-nav__link">
  881. Python
  882. </a>
  883. </li>
  884. </ul>
  885. </nav>
  886. </li>
  887. <li class="md-nav__item">
  888. <a href="#moment" class="md-nav__link">
  889. Moment
  890. </a>
  891. <nav class="md-nav" aria-label="Moment">
  892. <ul class="md-nav__list">
  893. <li class="md-nav__item">
  894. <a href="#yaml_16" class="md-nav__link">
  895. Yaml
  896. </a>
  897. </li>
  898. <li class="md-nav__item">
  899. <a href="#python_16" class="md-nav__link">
  900. Python
  901. </a>
  902. </li>
  903. </ul>
  904. </nav>
  905. </li>
  906. <li class="md-nav__item">
  907. <a href="#text_warrow" class="md-nav__link">
  908. Text_wArrow
  909. </a>
  910. <nav class="md-nav" aria-label="Text_wArrow">
  911. <ul class="md-nav__list">
  912. <li class="md-nav__item">
  913. <a href="#yaml_17" class="md-nav__link">
  914. Yaml
  915. </a>
  916. </li>
  917. <li class="md-nav__item">
  918. <a href="#python_17" class="md-nav__link">
  919. Python
  920. </a>
  921. </li>
  922. </ul>
  923. </nav>
  924. </li>
  925. <li class="md-nav__item">
  926. <a href="#wheel" class="md-nav__link">
  927. Wheel
  928. </a>
  929. <nav class="md-nav" aria-label="Wheel">
  930. <ul class="md-nav__list">
  931. <li class="md-nav__item">
  932. <a href="#yaml_18" class="md-nav__link">
  933. Yaml
  934. </a>
  935. </li>
  936. <li class="md-nav__item">
  937. <a href="#python_18" class="md-nav__link">
  938. Python
  939. </a>
  940. </li>
  941. </ul>
  942. </nav>
  943. </li>
  944. <li class="md-nav__item">
  945. <a href="#spring" class="md-nav__link">
  946. Spring
  947. </a>
  948. <nav class="md-nav" aria-label="Spring">
  949. <ul class="md-nav__list">
  950. <li class="md-nav__item">
  951. <a href="#yaml_19" class="md-nav__link">
  952. Yaml
  953. </a>
  954. </li>
  955. <li class="md-nav__item">
  956. <a href="#python_19" class="md-nav__link">
  957. Python
  958. </a>
  959. </li>
  960. </ul>
  961. </nav>
  962. </li>
  963. <li class="md-nav__item">
  964. <a href="#dashpot" class="md-nav__link">
  965. Dashpot
  966. </a>
  967. <nav class="md-nav" aria-label="Dashpot">
  968. <ul class="md-nav__list">
  969. <li class="md-nav__item">
  970. <a href="#yaml_20" class="md-nav__link">
  971. Yaml
  972. </a>
  973. </li>
  974. <li class="md-nav__item">
  975. <a href="#python_20" class="md-nav__link">
  976. Python
  977. </a>
  978. </li>
  979. </ul>
  980. </nav>
  981. </li>
  982. <li class="md-nav__item">
  983. <a href="#code-to-display-the-above-defined-shapes" class="md-nav__link">
  984. Code to display the above defined shapes
  985. </a>
  986. <nav class="md-nav" aria-label="Code to display the above defined shapes">
  987. <ul class="md-nav__list">
  988. <li class="md-nav__item">
  989. <a href="#yaml_21" class="md-nav__link">
  990. Yaml
  991. </a>
  992. </li>
  993. <li class="md-nav__item">
  994. <a href="#python_21" class="md-nav__link">
  995. Python
  996. </a>
  997. </li>
  998. </ul>
  999. </nav>
  1000. </li>
  1001. </ul>
  1002. </nav>
  1003. </div>
  1004. </div>
  1005. </div>
  1006. <div class="md-content">
  1007. <article class="md-content__inner md-typeset">
  1008. <h1>Shapes Reference</h1>
  1009. <h2 id="list-of-shapes">List of Shapes</h2>
  1010. <p><a href="#code-to-display-the-above-defined-shapes">Code to display shapes</a></p>
  1011. <ul>
  1012. <li><a href="#line">Line</a>: defines a line providing start and end point</li>
  1013. <li><a href="#rectangle">Rectangle</a>: defines a rectangle providing bottom left corner, x dimension, y dimension</li>
  1014. <li><a href="#triangle">Triangle</a>: defines a triangle providing three corner</li>
  1015. <li><a href="#circle">Circle</a>: defines a circle proving center and radius</li>
  1016. <li><a href="#distance-with-text">Distance with text</a>: defines a sizing mark with a label </li>
  1017. <li><a href="#text">Text</a>: defines a given text positionned at the provided point</li>
  1018. <li><a href="#cross">Cross</a>: defines a cross positionned at the provided point</li>
  1019. <li><a href="#axis">Axis</a>: defines an axis at the given point with a given label</li>
  1020. <li><a href="#arc">Arc</a>: defines an Arc providing a center point, a radius, a starting angle and an angle (rotates clock-wise)</li>
  1021. <li><a href="#arc_wtext">Arc_wText</a>: defines an arc with text positionned left (moving clock-wise) of arc half-way</li>
  1022. <li><a href="#arrow1">Arrow1</a>: defines a line with arrow(s) given starting and ending point and arrow termination(s) -&gt;, \&lt;-&gt;, \&lt;-</li>
  1023. <li><a href="#force">Force</a>: defines an Indication of a force by an arrow and a text (symbol)</li>
  1024. <li><a href="#wall">Wall</a>: defines an hached box given starting, ending point and thickness, filled with a pattern</li>
  1025. <li><a href="#curve">Curve</a>: defines a general curve as a sequence of (x,y) coordinates</li>
  1026. <li><a href="#trajectory">Trajectory</a>: defines a general curve as a sequence of Point (subclass Curve)</li>
  1027. <li><a href="#gravity">Gravity</a>: defines a downward-pointing gravity arrow with the symbol g or user given symbol.</li>
  1028. <li><a href="#moment">Moment</a>: defines a Moment arrow with text given text, center and radius</li>
  1029. <li><a href="#text_warrow">Text_wArrow</a>: defines Text, but an arrow is drawn from the mid part of the text to some point arrow_tip</li>
  1030. <li><a href="#wheel">Wheel</a>: defines Hub and spokes Wheel given center, radius, spokes (default 10), inner_radius(default 1/5 of radius)</li>
  1031. <li><a href="#spring">Spring</a>: defines a vertical spring, starting at start and with length as total vertical length</li>
  1032. <li><a href="#dashpot">Dashpot</a>: defines a vertical dashpot of height <code>total_length</code> and <code>start</code> as bottom/starting point.</li>
  1033. </ul>
  1034. <h2 id="line">Line</h2>
  1035. <p><a href="#list-of-shapes">home</a> Defines a line providing start and end point</p>
  1036. <h3 id="yaml">Yaml</h3>
  1037. <pre><code class="yaml">name: line
  1038. shapes:
  1039. A: point(-5,-5)
  1040. B: point(5,5)
  1041. line: Line(A,B)
  1042. </code></pre>
  1043. <h3 id="python">Python</h3>
  1044. <pre><code class="python">A = point(-5,-5)
  1045. B = point(5,5)
  1046. line = Line(A,B)
  1047. line.set_name(&quot;line&quot;)
  1048. </code></pre>
  1049. <p><img alt="line" src="../reference/line.svg" /></p>
  1050. <h2 id="rectangle">Rectangle</h2>
  1051. <p><a href="#list-of-shapes">home</a> Defines a rectangle providing bottom left corner, x dimension, y dimension</p>
  1052. <h3 id="yaml_1">Yaml</h3>
  1053. <pre><code class="yaml">name: rectangle
  1054. shapes:
  1055. L: 8
  1056. h: 5
  1057. p: point(-(L/2),-(h/2))
  1058. rectangle: Rectangle(p,L,h)
  1059. </code></pre>
  1060. <h3 id="python_1">Python</h3>
  1061. <pre><code class="python">L = 8
  1062. h = 5
  1063. p = point(-(L/2),-(h/2))
  1064. rectangle = Rectangle(p,L,h)
  1065. rectangle.set_name(&quot;rectangle&quot;)
  1066. </code></pre>
  1067. <p><img alt="rectangle" src="../reference/rectangle.svg" /></p>
  1068. <h2 id="circle">Circle</h2>
  1069. <p><a href="#list-of-shapes">home</a> Defines a circle proving center and radius</p>
  1070. <h3 id="yaml_2">Yaml</h3>
  1071. <pre><code class="yaml">name: circle
  1072. shapes:
  1073. circle: Circle(point(0,0),5)
  1074. </code></pre>
  1075. <h3 id="python_2">Python</h3>
  1076. <pre><code class="python">circle = Circle(point(0,0),5)
  1077. circle.set_name(&quot;circle&quot;)
  1078. </code></pre>
  1079. <p><img alt="circle" src="../reference/circle.svg" /></p>
  1080. <h2 id="triangle">Triangle</h2>
  1081. <p><a href="#list-of-shapes">home</a> Defines a triangle providing three corner</p>
  1082. <h3 id="yaml_3">Yaml</h3>
  1083. <pre><code class="yaml">name: triangle
  1084. shapes:
  1085. L: 3.0
  1086. W: 4.0
  1087. triangle: Triangle(p1=(W/2,0), p2=(3*W/2,W/2), p3=(4*W/5.,L))
  1088. </code></pre>
  1089. <h3 id="python_3">Python</h3>
  1090. <pre><code class="python">L = 3.0
  1091. W = 4.0
  1092. triangle = Triangle(p1=(W/2,0), p2=(3*W/2,W/2), p3=(4*W/5.,L))
  1093. triangle.set_name(&quot;triangle&quot;)
  1094. </code></pre>
  1095. <p><img alt="triangle" src="../reference/triangle.svg" /></p>
  1096. <h2 id="distance-with-text">Distance with text</h2>
  1097. <p><a href="#list-of-shapes">home</a> Defines a sizing mark with a label </p>
  1098. <h3 id="yaml_4">Yaml</h3>
  1099. <pre><code class="yaml">name: dwt
  1100. shapes:
  1101. fontsize: 14
  1102. t: r'$ 2\pi R^2 $' # sample text
  1103. dwt: Distance_wText((-4,0), (8, 5), t, fontsize)
  1104. </code></pre>
  1105. <h3 id="python_4">Python</h3>
  1106. <pre><code class="python">fontsize=14
  1107. t = r'$ 2\pi R^2 $' # sample text
  1108. dwt = Distance_wText((-4,0), (8, 5), t, fontsize)
  1109. dwt.set_name(&quot;dwt&quot;)
  1110. </code></pre>
  1111. <p><img alt="Distance with text" src="../reference/distancewithtext.svg" /></p>
  1112. <h2 id="text">Text</h2>
  1113. <p><a href="#list-of-shapes">home</a> Defines a given text positionned at the provided point</p>
  1114. <h3 id="yaml_5">Yaml</h3>
  1115. <pre><code class="yaml">name: text
  1116. shapes:
  1117. text: Text(r'$c$', point(0,0))
  1118. </code></pre>
  1119. <h3 id="python_5">Python</h3>
  1120. <pre><code class="python">text = Text(r'$c$', point(0,0))
  1121. text.set_name(&quot;text&quot;)
  1122. </code></pre>
  1123. <p><img alt="Text" src="../reference/text.svg" /></p>
  1124. <h2 id="cross">Cross</h2>
  1125. <p><a href="#list-of-shapes">home</a> Defines a cross positionned at the provided point</p>
  1126. <h3 id="yaml_6">Yaml</h3>
  1127. <pre><code class="yaml">name: cross
  1128. shapes:
  1129. cross: Cross(point(0,0))
  1130. </code></pre>
  1131. <h3 id="python_6">Python</h3>
  1132. <pre><code class="python">cross = Cross(point(1,0))
  1133. cross.set_name(&quot;cross&quot;)
  1134. </code></pre>
  1135. <p><img alt="Cross" src="../reference/cross.svg" /></p>
  1136. <h2 id="axis">Axis</h2>
  1137. <p><a href="#list-of-shapes">home</a> Defines an axis at the given point with a given label</p>
  1138. <h3 id="yaml_7">Yaml</h3>
  1139. <pre><code class="yaml">name: axis
  1140. shapes:
  1141. axis: Axis((0,0), 5, 'x', rotation_angle=0)
  1142. </code></pre>
  1143. <h3 id="python_7">Python</h3>
  1144. <pre><code class="python">axis = Axis((0,0), 5, 'x', rotation_angle=0)
  1145. axis.set_name(&quot;axis&quot;)
  1146. </code></pre>
  1147. <p><img alt="Axis" src="../reference/axis.svg" /></p>
  1148. <h2 id="arc">Arc</h2>
  1149. <p><a href="#list-of-shapes">home</a> Defines an Arc providing a center point, a radius, a starting angle and an angle (rotates clock-wise)</p>
  1150. <h3 id="yaml_8">Yaml</h3>
  1151. <pre><code class="yaml">name: arc
  1152. shapes:
  1153. center: point(0,0)
  1154. radius: 1
  1155. angle: 120
  1156. start_angle: 180-angle
  1157. arc_angle: angle
  1158. arc: Arc(center, radius, start_angle, arc_angle)
  1159. </code></pre>
  1160. <h3 id="python_8">Python</h3>
  1161. <pre><code class="python">center = point(0,0)
  1162. radius = 1
  1163. angle = 120
  1164. start_angle = 180-angle
  1165. arc_angle = angle
  1166. arc = Arc(center, radius, start_angle, arc_angle)
  1167. arc.set_name(&quot;arc&quot;)
  1168. </code></pre>
  1169. <p><img alt="Arc" src="../reference/arc.svg" /></p>
  1170. <h2 id="arc_wtext">Arc_wText</h2>
  1171. <p><a href="#list-of-shapes">home</a> Defines an arc with text positionned left (moving clock-wise) of arc half-way</p>
  1172. <h3 id="yaml_9">Yaml</h3>
  1173. <pre><code class="yaml">name: arc_wtxt
  1174. shapes:
  1175. center: point(0,0)
  1176. radius: 1
  1177. angle: 120
  1178. start_angle: 180-angle
  1179. arc_angle: angle
  1180. arc_wtxt: &quot;Arc_wText(r'$&lt;bslash&gt;theta$', center, radius, start_angle, arc_angle)&quot;
  1181. </code></pre>
  1182. <h3 id="python_9">Python</h3>
  1183. <pre><code class="python">center = point(0,0)
  1184. radius = 1
  1185. angle = 120
  1186. start_angle = 180-angle
  1187. arc_angle = angle
  1188. arc_wtxt = Arc_wText(r'$\theta$', center, radius, start_angle, arc_angle)
  1189. arc_wtxt.set_name(&quot;arcwtxt&quot;)
  1190. </code></pre>
  1191. <p><img alt="Arc with Text" src="../reference/arcwtext.svg" /></p>
  1192. <h2 id="arrow1">Arrow1</h2>
  1193. <p><a href="#list-of-shapes">home</a> defines a line with arrow(s) given starting and ending point and arrow termination(s) -&gt;, \&lt;-&gt;, \&lt;-</p>
  1194. <h3 id="yaml_10">Yaml</h3>
  1195. <pre><code class="yaml">name: arrow1
  1196. shapes:
  1197. start: point(0,0)
  1198. end: point(5,5)
  1199. arrow1: Arrow1(start, end, style='&lt;-&gt;')
  1200. </code></pre>
  1201. <h3 id="python_10">Python</h3>
  1202. <pre><code class="python">start = point(0,0)
  1203. end = point(5,5)
  1204. arrow1 = Arrow1(start, end, style='&lt;-&gt;')
  1205. arrow1.set_name(&quot;arrow1&quot;)
  1206. </code></pre>
  1207. <p><img alt="Arrow1" src="../reference/arrow1.svg" /></p>
  1208. <h2 id="force">Force</h2>
  1209. <p><a href="#list-of-shapes">home</a> defines an Indication of a force by an arrow and a text (symbol)</p>
  1210. <h3 id="yaml_11">Yaml</h3>
  1211. <pre><code class="yaml">name: force
  1212. shapes:
  1213. x: 0
  1214. y: 0
  1215. contact: point(x, y)
  1216. vector: point(-3,-5)
  1217. force: Force(contact - vector, contact, r'$Force$', text_pos='start')
  1218. </code></pre>
  1219. <h3 id="python_11">Python</h3>
  1220. <pre><code class="python">x = 0
  1221. y = 0
  1222. contact = point(x, y)
  1223. vector = point(-3,-5)
  1224. force = Force(contact - vector, contact, r'$Force$', text_pos='start')
  1225. force.set_name(&quot;force&quot;)
  1226. </code></pre>
  1227. <p><img alt="Force" src="../reference/force.svg" /></p>
  1228. <h2 id="wall">Wall</h2>
  1229. <p><a href="#list-of-shapes">home</a> defines an hached box given starting, ending point and thickness, filled with a pattern</p>
  1230. <h3 id="yaml_12">Yaml</h3>
  1231. <pre><code class="yaml">name: wall
  1232. shapes:
  1233. theta: 30
  1234. L: 8
  1235. B: point(L-4,-2) # wall right end
  1236. A: point(-4,tan(radians(theta))*L-2) # wall left end
  1237. wall:
  1238. formula: Wall(x=[A[0], B[0]], y=[A[1], B[1]], thickness=-0.5,transparent=False)
  1239. style:
  1240. linecolor: black
  1241. </code></pre>
  1242. <h3 id="python_12">Python</h3>
  1243. <pre><code class="python">theta = 30
  1244. L = 8
  1245. B = point(L-4,-2) # wall right end
  1246. A = point(-4,tan(radians(theta))*L-2) # wall left end
  1247. wall= Wall(x=[A[0], B[0]], y=[A[1], B[1]], thickness=-0.5,transparent=False)
  1248. wall.set_linecolor('black')
  1249. wall.set_name(&quot;wall&quot;)
  1250. </code></pre>
  1251. <p><img alt="Wall" src="../reference/wall.svg" /></p>
  1252. <h2 id="curve">Curve</h2>
  1253. <p><a href="#list-of-shapes">home</a> defines a general curve as a sequence of (x,y) coordinates</p>
  1254. <h3 id="yaml_13">Yaml</h3>
  1255. <pre><code class="yaml">curve=&quot;&quot;&quot;\
  1256. name: curve
  1257. shapes:
  1258. N: 100
  1259. x: np.linspace(-2.0, 2.0, N)
  1260. y: x**3
  1261. curve: Curve(x,y)
  1262. &quot;&quot;&quot;
  1263. </code></pre>
  1264. <h3 id="python_13">Python</h3>
  1265. <pre><code class="python">N = 100
  1266. x = np.linspace(-2.0, 2.0, N)
  1267. y = x**3
  1268. curve = Curve(x,y)
  1269. curve.draw()
  1270. curve.set_name(&quot;curve&quot;)
  1271. </code></pre>
  1272. <p><img alt="Curve" src="../reference/curve.svg" /></p>
  1273. <h2 id="trajectory">Trajectory</h2>
  1274. <p><a href="#list-of-shapes">home</a> defines a general curve as a sequence of Point (subclass Curve)</p>
  1275. <h3 id="yaml_14">Yaml</h3>
  1276. <pre><code class="yaml">trajectory=&quot;&quot;&quot;\
  1277. name: trajectory
  1278. shapes:
  1279. P1: Point(1,-1)
  1280. P2: P1 + Point(0,2)
  1281. P3: P2 + Point(-2,0)
  1282. P4: P3 + Point(0,-2)
  1283. psq: |
  1284. [P1,P2,P3,P4]
  1285. trajectory: Trajectory(psq)
  1286. &quot;&quot;&quot;
  1287. </code></pre>
  1288. <h3 id="python_14">Python</h3>
  1289. <pre><code class="python">P1 = Point(1,-1)
  1290. P2 = P1 + Point(0,2)
  1291. P3 = P2 + Point(-2,0)
  1292. P4 = P3 + Point(0,-2)
  1293. psq = [P1,P2,P3,P4]
  1294. trajectory = Trajectory(psq)
  1295. trajectory.draw()
  1296. curve.set_name(&quot;trajectory&quot;)
  1297. </code></pre>
  1298. <p><img alt="Curve" src="../reference/trajectory.svg" /></p>
  1299. <h2 id="gravity">Gravity</h2>
  1300. <p><a href="#list-of-shapes">home</a> defines a downward-pointing gravity arrow with the symbol g or user given symbol.</p>
  1301. <h3 id="yaml_15">Yaml</h3>
  1302. <pre><code class="yaml">gravity=&quot;&quot;&quot;
  1303. name: gravity
  1304. shapes:
  1305. c: point(0,0)
  1306. r: 2
  1307. gravity:
  1308. formula: Gravity(c, r, text='$Mg$')
  1309. &quot;&quot;&quot;
  1310. </code></pre>
  1311. <h3 id="python_15">Python</h3>
  1312. <pre><code class="python">c = point(0,0)
  1313. r = 2
  1314. gravity = Gravity(c, r, text='$Mg$')
  1315. gravity.set_name(&quot;gravity&quot;)
  1316. </code></pre>
  1317. <p><img alt="Gravity" src="../reference/gravity.svg" /></p>
  1318. <h2 id="moment">Moment</h2>
  1319. <p><a href="#list-of-shapes">home</a> defines a Moment arrow with text given text, center and radius.</p>
  1320. <h3 id="yaml_16">Yaml</h3>
  1321. <pre><code class="yaml">moment=&quot;&quot;&quot;
  1322. name: moment
  1323. shapes:
  1324. moment: Moment(&quot;$T$&quot;, point(0,0), 2)
  1325. &quot;&quot;&quot;
  1326. </code></pre>
  1327. <h3 id="python_16">Python</h3>
  1328. <pre><code class="python">moment = Moment(&quot;$T$&quot;, point(0,0), 2)
  1329. moment.shape_name=&quot;moment&quot;
  1330. </code></pre>
  1331. <p><img alt="Moment" src="../reference/moment.svg" /></p>
  1332. <h2 id="text_warrow">Text_wArrow</h2>
  1333. <p><a href="#list-of-shapes">home</a> Text, but an arrow is drawn from the mid part of the text to some point arrow_tip</p>
  1334. <h3 id="yaml_17">Yaml</h3>
  1335. <pre><code class="yaml">txtarrow=&quot;&quot;&quot;
  1336. name: txtarrow
  1337. shapes:
  1338. txtarrow: Text_wArrow(&quot;$Text$&quot;, point(0,0), point(2,2))
  1339. &quot;&quot;&quot;
  1340. </code></pre>
  1341. <h3 id="python_17">Python</h3>
  1342. <pre><code class="python">txtarrow = Text_wArrow(&quot;$Text$&quot;, point(0,0), point(2,2))
  1343. txtarrow.set_name(&quot;txtarrow&quot;)
  1344. </code></pre>
  1345. <p><img alt="Text_wArrow" src="../reference/textwarrow.svg" /></p>
  1346. <h2 id="wheel">Wheel</h2>
  1347. <p><a href="#list-of-shapes">home</a> Hub and spokes Wheel given center, radius, spokes (default 10), inner_radius(default 1/5 of radius)</p>
  1348. <h3 id="yaml_18">Yaml</h3>
  1349. <pre><code class="yaml">wheel=&quot;&quot;&quot;
  1350. name: wheel
  1351. shapes:
  1352. wheel: Wheel(point(0,0), 5)
  1353. &quot;&quot;&quot;
  1354. </code></pre>
  1355. <h3 id="python_18">Python</h3>
  1356. <pre><code class="python">wheel = Wheel(point(0,0), 5)
  1357. wheel.set_name(&quot;wheel&quot;)
  1358. </code></pre>
  1359. <p><img alt="Wheel" src="../reference/wheel.svg" /></p>
  1360. <h2 id="spring">Spring</h2>
  1361. <p><a href="#list-of-shapes">home</a> Specify a vertical spring, starting at start and with length as total vertical length</p>
  1362. <h3 id="yaml_19">Yaml</h3>
  1363. <pre><code class="yaml">spring=&quot;&quot;&quot;
  1364. name: spring
  1365. shapes:
  1366. spring:
  1367. formula: Spring(point(0,0),5)
  1368. style:
  1369. linecolor: black
  1370. linewidth: 1
  1371. &quot;&quot;&quot;
  1372. </code></pre>
  1373. <h3 id="python_19">Python</h3>
  1374. <pre><code class="python">spring = Spring(point(0,0),5)
  1375. spring.set_linecolor('black')
  1376. spring.set_linewidth(1)
  1377. spring.set_name(&quot;spring&quot;)
  1378. </code></pre>
  1379. <p><img alt="Spring" src="../reference/spring.svg" /></p>
  1380. <h2 id="dashpot">Dashpot</h2>
  1381. <p><a href="#list-of-shapes">home</a> Defines a vertical dashpot of height <code>total_length</code> and <code>start</code> as bottom/starting point.</p>
  1382. <h3 id="yaml_20">Yaml</h3>
  1383. <pre><code class="yaml">dashpot=&quot;&quot;&quot;
  1384. name: dashpot
  1385. shapes:
  1386. dashpot: Dashpot(point(0,0),5)
  1387. &quot;&quot;&quot;
  1388. </code></pre>
  1389. <h3 id="python_20">Python</h3>
  1390. <pre><code class="python">dashpot = Dashpot(point(0,0),5)
  1391. dashpot.set_name(&quot;dashpot&quot;)
  1392. </code></pre>
  1393. <p><img alt="Dashpot" src="../reference/dashpot.svg" /></p>
  1394. <h2 id="code-to-display-the-above-defined-shapes">Code to display the above defined shapes</h2>
  1395. <p><a href="#list-of-shapes">home</a> In order to display the various shapes, use the following code in a jupyter notebook</p>
  1396. <pre><code class="python">[1]: %matplotlib widget
  1397. [2]: from pysketcher import *
  1398. [3]: from math import tan, radians, sin, cos # needed for python code
  1399. [4]: import numpy as np
  1400. [6]: drawing_tool.set_coordinate_system(xmin=-10, xmax=10,ymin=-10, ymax=10,axis=True)
  1401. [5]: drawing_tool.mpl.gcf().canvas
  1402. </code></pre>
  1403. <p>for Yaml, you need to add those extra steps</p>
  1404. <pre><code class="python">head = &quot;&quot;&quot;\
  1405. libraries: [&quot;from math import tan, radians, sin, cos&quot;,&quot;from pysketcher import *&quot;,&quot;import numpy as np&quot;]
  1406. myfig={}
  1407. sketch = Sketch(myfig)
  1408. sketch.append(head)
  1409. </code></pre>
  1410. <p>The above code initialize myfig sketch space loading into it libraries references so samples can use tan, radians, si, cos and all the objects defined in pysketcher (the module name of jupytersketcher) and numpy as well: this is used by the yaml definition of shapes</p>
  1411. <h3 id="yaml_21">Yaml</h3>
  1412. <pre><code class="python">myfig={}
  1413. sketch=&quot;&quot;&quot;
  1414. # put here the yaml 'object' definition
  1415. &quot;&quot;&quot;
  1416. drawing_tool.erase()
  1417. sketch.append(sketch)
  1418. # replace 'object' by the actual one
  1419. d = myfig['object'].draw()
  1420. drawing_tool.display()
  1421. display(SVG(Sketch.matplotlib2SVG()))
  1422. </code></pre>
  1423. <h3 id="python_21">Python</h3>
  1424. <pre><code class="python">drawing_tool.erase()
  1425. # put the code of the object case here
  1426. # replace object by the actual name line, rectangle, circle...
  1427. object.draw()
  1428. drawing_tool.display()
  1429. display(SVG(Sketch.matplotlib2SVG()))
  1430. </code></pre>
  1431. </article>
  1432. </div>
  1433. </div>
  1434. </main>
  1435. <footer class="md-footer">
  1436. <div class="md-footer-nav">
  1437. <nav class="md-footer-nav__inner md-grid" aria-label="Footer">
  1438. <a href="../learningbyexample/" title="Learning by Example" class="md-footer-nav__link md-footer-nav__link--prev" rel="prev">
  1439. <div class="md-footer-nav__button md-icon">
  1440. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11h12z"/></svg>
  1441. </div>
  1442. <div class="md-footer-nav__title">
  1443. <div class="md-ellipsis">
  1444. <span class="md-footer-nav__direction">
  1445. Previous
  1446. </span>
  1447. Learning by Example
  1448. </div>
  1449. </div>
  1450. </a>
  1451. <a href="../yamlsketcher/" title="YAML files Reference" class="md-footer-nav__link md-footer-nav__link--next" rel="next">
  1452. <div class="md-footer-nav__title">
  1453. <div class="md-ellipsis">
  1454. <span class="md-footer-nav__direction">
  1455. Next
  1456. </span>
  1457. YAML files Reference
  1458. </div>
  1459. </div>
  1460. <div class="md-footer-nav__button md-icon">
  1461. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11H4z"/></svg>
  1462. </div>
  1463. </a>
  1464. </nav>
  1465. </div>
  1466. <div class="md-footer-meta md-typeset">
  1467. <div class="md-footer-meta__inner md-grid">
  1468. <div class="md-footer-copyright">
  1469. Made with
  1470. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  1471. Material for MkDocs
  1472. </a>
  1473. </div>
  1474. </div>
  1475. </div>
  1476. </footer>
  1477. </div>
  1478. <script src="../assets/javascripts/vendor.c3dc8c49.min.js"></script>
  1479. <script src="../assets/javascripts/bundle.f9edbbd5.min.js"></script><script id="__lang" type="application/json">{"clipboard.copy": "Copy to clipboard", "clipboard.copied": "Copied to clipboard", "search.config.lang": "en", "search.config.pipeline": "trimmer, stopWordFilter", "search.config.separator": "[\\s\\-]+", "search.result.placeholder": "Type to start searching", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents"}</script>
  1480. <script>
  1481. app = initialize({
  1482. base: "..",
  1483. features: [],
  1484. search: Object.assign({
  1485. worker: "../assets/javascripts/worker/search.8e2cddea.min.js"
  1486. }, typeof search !== "undefined" && search)
  1487. })
  1488. </script>
  1489. <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML"></script>
  1490. </body>
  1491. </html>