index.html 45 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920
  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, mkdocs-material-5.4.0">
  8. <title>Shapes Reference - Jypyter Sketcher</title>
  9. <link rel="stylesheet" href="../assets/stylesheets/main.fe0cca5b.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="#gravity" class="md-nav__link">
  399. Gravity
  400. </a>
  401. <nav class="md-nav" aria-label="Gravity">
  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="#code-to-display-the-above-defined-shapes" class="md-nav__link">
  418. Code to display the above defined shapes
  419. </a>
  420. </li>
  421. <li class="md-nav__item">
  422. <a href="#moment" class="md-nav__link">
  423. Moment
  424. </a>
  425. <nav class="md-nav" aria-label="Moment">
  426. <ul class="md-nav__list">
  427. <li class="md-nav__item">
  428. <a href="#yaml_15" class="md-nav__link">
  429. Yaml
  430. </a>
  431. </li>
  432. <li class="md-nav__item">
  433. <a href="#python_15" class="md-nav__link">
  434. Python
  435. </a>
  436. </li>
  437. </ul>
  438. </nav>
  439. </li>
  440. <li class="md-nav__item">
  441. <a href="#text_warrow" class="md-nav__link">
  442. Text_wArrow
  443. </a>
  444. <nav class="md-nav" aria-label="Text_wArrow">
  445. <ul class="md-nav__list">
  446. <li class="md-nav__item">
  447. <a href="#yaml_16" class="md-nav__link">
  448. Yaml
  449. </a>
  450. </li>
  451. <li class="md-nav__item">
  452. <a href="#python_16" class="md-nav__link">
  453. Python
  454. </a>
  455. </li>
  456. </ul>
  457. </nav>
  458. </li>
  459. <li class="md-nav__item">
  460. <a href="#wheel" class="md-nav__link">
  461. Wheel
  462. </a>
  463. <nav class="md-nav" aria-label="Wheel">
  464. <ul class="md-nav__list">
  465. <li class="md-nav__item">
  466. <a href="#yaml_17" class="md-nav__link">
  467. Yaml
  468. </a>
  469. </li>
  470. <li class="md-nav__item">
  471. <a href="#python_17" class="md-nav__link">
  472. Python
  473. </a>
  474. </li>
  475. </ul>
  476. </nav>
  477. </li>
  478. <li class="md-nav__item">
  479. <a href="#spring" class="md-nav__link">
  480. Spring
  481. </a>
  482. <nav class="md-nav" aria-label="Spring">
  483. <ul class="md-nav__list">
  484. <li class="md-nav__item">
  485. <a href="#yaml_18" class="md-nav__link">
  486. Yaml
  487. </a>
  488. </li>
  489. <li class="md-nav__item">
  490. <a href="#python_18" class="md-nav__link">
  491. Python
  492. </a>
  493. </li>
  494. </ul>
  495. </nav>
  496. </li>
  497. <li class="md-nav__item">
  498. <a href="#dashpot" class="md-nav__link">
  499. Dashpot
  500. </a>
  501. <nav class="md-nav" aria-label="Dashpot">
  502. <ul class="md-nav__list">
  503. <li class="md-nav__item">
  504. <a href="#yaml_19" class="md-nav__link">
  505. Yaml
  506. </a>
  507. </li>
  508. <li class="md-nav__item">
  509. <a href="#python_19" class="md-nav__link">
  510. Python
  511. </a>
  512. </li>
  513. <li class="md-nav__item">
  514. <a href="#yaml_20" class="md-nav__link">
  515. Yaml
  516. </a>
  517. </li>
  518. <li class="md-nav__item">
  519. <a href="#python_20" class="md-nav__link">
  520. Python
  521. </a>
  522. </li>
  523. </ul>
  524. </nav>
  525. </li>
  526. </ul>
  527. </nav>
  528. </li>
  529. </ul>
  530. </nav>
  531. </div>
  532. </div>
  533. </div>
  534. <div class="md-sidebar md-sidebar--secondary" data-md-component="toc">
  535. <div class="md-sidebar__scrollwrap">
  536. <div class="md-sidebar__inner">
  537. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  538. <label class="md-nav__title" for="__toc">
  539. <span class="md-nav__icon md-icon">
  540. <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>
  541. </span>
  542. Table of contents
  543. </label>
  544. <ul class="md-nav__list" data-md-scrollfix>
  545. <li class="md-nav__item">
  546. <a href="#list-of-shapes" class="md-nav__link">
  547. List of Shapes
  548. </a>
  549. </li>
  550. <li class="md-nav__item">
  551. <a href="#line" class="md-nav__link">
  552. Line
  553. </a>
  554. <nav class="md-nav" aria-label="Line">
  555. <ul class="md-nav__list">
  556. <li class="md-nav__item">
  557. <a href="#yaml" class="md-nav__link">
  558. Yaml
  559. </a>
  560. </li>
  561. <li class="md-nav__item">
  562. <a href="#python" class="md-nav__link">
  563. Python
  564. </a>
  565. </li>
  566. </ul>
  567. </nav>
  568. </li>
  569. <li class="md-nav__item">
  570. <a href="#rectangle" class="md-nav__link">
  571. Rectangle
  572. </a>
  573. <nav class="md-nav" aria-label="Rectangle">
  574. <ul class="md-nav__list">
  575. <li class="md-nav__item">
  576. <a href="#yaml_1" class="md-nav__link">
  577. Yaml
  578. </a>
  579. </li>
  580. <li class="md-nav__item">
  581. <a href="#python_1" class="md-nav__link">
  582. Python
  583. </a>
  584. </li>
  585. </ul>
  586. </nav>
  587. </li>
  588. <li class="md-nav__item">
  589. <a href="#circle" class="md-nav__link">
  590. Circle
  591. </a>
  592. <nav class="md-nav" aria-label="Circle">
  593. <ul class="md-nav__list">
  594. <li class="md-nav__item">
  595. <a href="#yaml_2" class="md-nav__link">
  596. Yaml
  597. </a>
  598. </li>
  599. <li class="md-nav__item">
  600. <a href="#python_2" class="md-nav__link">
  601. Python
  602. </a>
  603. </li>
  604. </ul>
  605. </nav>
  606. </li>
  607. <li class="md-nav__item">
  608. <a href="#triangle" class="md-nav__link">
  609. Triangle
  610. </a>
  611. <nav class="md-nav" aria-label="Triangle">
  612. <ul class="md-nav__list">
  613. <li class="md-nav__item">
  614. <a href="#yaml_3" class="md-nav__link">
  615. Yaml
  616. </a>
  617. </li>
  618. <li class="md-nav__item">
  619. <a href="#python_3" class="md-nav__link">
  620. Python
  621. </a>
  622. </li>
  623. </ul>
  624. </nav>
  625. </li>
  626. <li class="md-nav__item">
  627. <a href="#distance-with-text" class="md-nav__link">
  628. Distance with text
  629. </a>
  630. <nav class="md-nav" aria-label="Distance with text">
  631. <ul class="md-nav__list">
  632. <li class="md-nav__item">
  633. <a href="#yaml_4" class="md-nav__link">
  634. Yaml
  635. </a>
  636. </li>
  637. <li class="md-nav__item">
  638. <a href="#python_4" class="md-nav__link">
  639. Python
  640. </a>
  641. </li>
  642. </ul>
  643. </nav>
  644. </li>
  645. <li class="md-nav__item">
  646. <a href="#text" class="md-nav__link">
  647. Text
  648. </a>
  649. <nav class="md-nav" aria-label="Text">
  650. <ul class="md-nav__list">
  651. <li class="md-nav__item">
  652. <a href="#yaml_5" class="md-nav__link">
  653. Yaml
  654. </a>
  655. </li>
  656. <li class="md-nav__item">
  657. <a href="#python_5" class="md-nav__link">
  658. Python
  659. </a>
  660. </li>
  661. </ul>
  662. </nav>
  663. </li>
  664. <li class="md-nav__item">
  665. <a href="#cross" class="md-nav__link">
  666. Cross
  667. </a>
  668. <nav class="md-nav" aria-label="Cross">
  669. <ul class="md-nav__list">
  670. <li class="md-nav__item">
  671. <a href="#yaml_6" class="md-nav__link">
  672. Yaml
  673. </a>
  674. </li>
  675. <li class="md-nav__item">
  676. <a href="#python_6" class="md-nav__link">
  677. Python
  678. </a>
  679. </li>
  680. </ul>
  681. </nav>
  682. </li>
  683. <li class="md-nav__item">
  684. <a href="#axis" class="md-nav__link">
  685. Axis
  686. </a>
  687. <nav class="md-nav" aria-label="Axis">
  688. <ul class="md-nav__list">
  689. <li class="md-nav__item">
  690. <a href="#yaml_7" class="md-nav__link">
  691. Yaml
  692. </a>
  693. </li>
  694. <li class="md-nav__item">
  695. <a href="#python_7" class="md-nav__link">
  696. Python
  697. </a>
  698. </li>
  699. </ul>
  700. </nav>
  701. </li>
  702. <li class="md-nav__item">
  703. <a href="#arc" class="md-nav__link">
  704. Arc
  705. </a>
  706. <nav class="md-nav" aria-label="Arc">
  707. <ul class="md-nav__list">
  708. <li class="md-nav__item">
  709. <a href="#yaml_8" class="md-nav__link">
  710. Yaml
  711. </a>
  712. </li>
  713. <li class="md-nav__item">
  714. <a href="#python_8" class="md-nav__link">
  715. Python
  716. </a>
  717. </li>
  718. </ul>
  719. </nav>
  720. </li>
  721. <li class="md-nav__item">
  722. <a href="#arc_wtext" class="md-nav__link">
  723. Arc_wText
  724. </a>
  725. <nav class="md-nav" aria-label="Arc_wText">
  726. <ul class="md-nav__list">
  727. <li class="md-nav__item">
  728. <a href="#yaml_9" class="md-nav__link">
  729. Yaml
  730. </a>
  731. </li>
  732. <li class="md-nav__item">
  733. <a href="#python_9" class="md-nav__link">
  734. Python
  735. </a>
  736. </li>
  737. </ul>
  738. </nav>
  739. </li>
  740. <li class="md-nav__item">
  741. <a href="#arrow1" class="md-nav__link">
  742. Arrow1
  743. </a>
  744. <nav class="md-nav" aria-label="Arrow1">
  745. <ul class="md-nav__list">
  746. <li class="md-nav__item">
  747. <a href="#yaml_10" class="md-nav__link">
  748. Yaml
  749. </a>
  750. </li>
  751. <li class="md-nav__item">
  752. <a href="#python_10" class="md-nav__link">
  753. Python
  754. </a>
  755. </li>
  756. </ul>
  757. </nav>
  758. </li>
  759. <li class="md-nav__item">
  760. <a href="#force" class="md-nav__link">
  761. Force
  762. </a>
  763. <nav class="md-nav" aria-label="Force">
  764. <ul class="md-nav__list">
  765. <li class="md-nav__item">
  766. <a href="#yaml_11" class="md-nav__link">
  767. Yaml
  768. </a>
  769. </li>
  770. <li class="md-nav__item">
  771. <a href="#python_11" class="md-nav__link">
  772. Python
  773. </a>
  774. </li>
  775. </ul>
  776. </nav>
  777. </li>
  778. <li class="md-nav__item">
  779. <a href="#wall" class="md-nav__link">
  780. Wall
  781. </a>
  782. <nav class="md-nav" aria-label="Wall">
  783. <ul class="md-nav__list">
  784. <li class="md-nav__item">
  785. <a href="#yaml_12" class="md-nav__link">
  786. Yaml
  787. </a>
  788. </li>
  789. <li class="md-nav__item">
  790. <a href="#python_12" class="md-nav__link">
  791. Python
  792. </a>
  793. </li>
  794. </ul>
  795. </nav>
  796. </li>
  797. <li class="md-nav__item">
  798. <a href="#curve" class="md-nav__link">
  799. Curve
  800. </a>
  801. <nav class="md-nav" aria-label="Curve">
  802. <ul class="md-nav__list">
  803. <li class="md-nav__item">
  804. <a href="#yaml_13" class="md-nav__link">
  805. Yaml
  806. </a>
  807. </li>
  808. <li class="md-nav__item">
  809. <a href="#python_13" class="md-nav__link">
  810. Python
  811. </a>
  812. </li>
  813. </ul>
  814. </nav>
  815. </li>
  816. <li class="md-nav__item">
  817. <a href="#gravity" class="md-nav__link">
  818. Gravity
  819. </a>
  820. <nav class="md-nav" aria-label="Gravity">
  821. <ul class="md-nav__list">
  822. <li class="md-nav__item">
  823. <a href="#yaml_14" class="md-nav__link">
  824. Yaml
  825. </a>
  826. </li>
  827. <li class="md-nav__item">
  828. <a href="#python_14" class="md-nav__link">
  829. Python
  830. </a>
  831. </li>
  832. </ul>
  833. </nav>
  834. </li>
  835. <li class="md-nav__item">
  836. <a href="#code-to-display-the-above-defined-shapes" class="md-nav__link">
  837. Code to display the above defined shapes
  838. </a>
  839. </li>
  840. <li class="md-nav__item">
  841. <a href="#moment" class="md-nav__link">
  842. Moment
  843. </a>
  844. <nav class="md-nav" aria-label="Moment">
  845. <ul class="md-nav__list">
  846. <li class="md-nav__item">
  847. <a href="#yaml_15" class="md-nav__link">
  848. Yaml
  849. </a>
  850. </li>
  851. <li class="md-nav__item">
  852. <a href="#python_15" class="md-nav__link">
  853. Python
  854. </a>
  855. </li>
  856. </ul>
  857. </nav>
  858. </li>
  859. <li class="md-nav__item">
  860. <a href="#text_warrow" class="md-nav__link">
  861. Text_wArrow
  862. </a>
  863. <nav class="md-nav" aria-label="Text_wArrow">
  864. <ul class="md-nav__list">
  865. <li class="md-nav__item">
  866. <a href="#yaml_16" class="md-nav__link">
  867. Yaml
  868. </a>
  869. </li>
  870. <li class="md-nav__item">
  871. <a href="#python_16" class="md-nav__link">
  872. Python
  873. </a>
  874. </li>
  875. </ul>
  876. </nav>
  877. </li>
  878. <li class="md-nav__item">
  879. <a href="#wheel" class="md-nav__link">
  880. Wheel
  881. </a>
  882. <nav class="md-nav" aria-label="Wheel">
  883. <ul class="md-nav__list">
  884. <li class="md-nav__item">
  885. <a href="#yaml_17" class="md-nav__link">
  886. Yaml
  887. </a>
  888. </li>
  889. <li class="md-nav__item">
  890. <a href="#python_17" class="md-nav__link">
  891. Python
  892. </a>
  893. </li>
  894. </ul>
  895. </nav>
  896. </li>
  897. <li class="md-nav__item">
  898. <a href="#spring" class="md-nav__link">
  899. Spring
  900. </a>
  901. <nav class="md-nav" aria-label="Spring">
  902. <ul class="md-nav__list">
  903. <li class="md-nav__item">
  904. <a href="#yaml_18" class="md-nav__link">
  905. Yaml
  906. </a>
  907. </li>
  908. <li class="md-nav__item">
  909. <a href="#python_18" class="md-nav__link">
  910. Python
  911. </a>
  912. </li>
  913. </ul>
  914. </nav>
  915. </li>
  916. <li class="md-nav__item">
  917. <a href="#dashpot" class="md-nav__link">
  918. Dashpot
  919. </a>
  920. <nav class="md-nav" aria-label="Dashpot">
  921. <ul class="md-nav__list">
  922. <li class="md-nav__item">
  923. <a href="#yaml_19" class="md-nav__link">
  924. Yaml
  925. </a>
  926. </li>
  927. <li class="md-nav__item">
  928. <a href="#python_19" class="md-nav__link">
  929. Python
  930. </a>
  931. </li>
  932. <li class="md-nav__item">
  933. <a href="#yaml_20" class="md-nav__link">
  934. Yaml
  935. </a>
  936. </li>
  937. <li class="md-nav__item">
  938. <a href="#python_20" class="md-nav__link">
  939. Python
  940. </a>
  941. </li>
  942. </ul>
  943. </nav>
  944. </li>
  945. </ul>
  946. </nav>
  947. </div>
  948. </div>
  949. </div>
  950. <div class="md-content">
  951. <article class="md-content__inner md-typeset">
  952. <h1>Shapes Reference</h1>
  953. <h2 id="list-of-shapes">List of Shapes</h2>
  954. <p><a href="#code-to-display-the-above-defined-shapes">Code to display shapes</a></p>
  955. <ul>
  956. <li><a href="#line">Line</a>: defines a line providing start and end point</li>
  957. <li><a href="#rectangle">Rectangle</a>: defines a rectangle providing bottom left corner, x dimension, y dimension</li>
  958. <li><a href="#triangle">Triangle</a>: defines a triangle providing three corner</li>
  959. <li><a href="#circle">Circle</a>: defines a circle proving center and radius</li>
  960. <li><a href="#distance-with-text">Distance with text</a>: defines a sizing mark with a label </li>
  961. <li><a href="#text">Text</a>: defines a given text positionned at the provided point</li>
  962. <li><a href="#cross">Cross</a>: defines a cross positionned at the provided point</li>
  963. <li><a href="#axis">Axis</a>: defines an axis at the given point with a given label</li>
  964. <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>
  965. <li><a href="#arc_wtext">Arc_wText</a>: defines an arc with text positionned left (moving clock-wise) of arc half-way</li>
  966. <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>
  967. <li><a href="#force">Force</a>: defines an Indication of a force by an arrow and a text (symbol)</li>
  968. <li><a href="#wall">Wall</a>: defines an hached box given starting, ending point and thickness, filled with a pattern</li>
  969. <li><a href="#curve">Curve</a>: defines a general curve as a sequence of (x,y) coordinates</li>
  970. <li><a href="#gravity">Gravity</a>: defines a downward-pointing gravity arrow with the symbol g or user given symbol.</li>
  971. <li><a href="#moment">Moment</a>: defines a Moment arrow with text given text, center and radius</li>
  972. <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>
  973. <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>
  974. <li><a href="#spring">Spring</a>: defines a vertical spring, starting at start and with length as total vertical length</li>
  975. <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>
  976. </ul>
  977. <h2 id="line">Line</h2>
  978. <p><a href="#list-of-shapes">home</a> Defines a line providing start and end point</p>
  979. <h3 id="yaml">Yaml</h3>
  980. <pre><code class="yaml">name: line
  981. shapes:
  982. A: point(-5,-5)
  983. B: point(5,5)
  984. line: Line(A,B)
  985. </code></pre>
  986. <h3 id="python">Python</h3>
  987. <pre><code class="python">A = point(-5,-5)
  988. B = point(5,5)
  989. line = Line(A,B)
  990. line.set_name(&quot;line&quot;)
  991. </code></pre>
  992. <p><img alt="line" src="../reference/line.svg" /></p>
  993. <h2 id="rectangle">Rectangle</h2>
  994. <p><a href="#list-of-shapes">home</a> Defines a rectangle providing bottom left corner, x dimension, y dimension</p>
  995. <h3 id="yaml_1">Yaml</h3>
  996. <pre><code class="yaml">name: rectangle
  997. shapes:
  998. L: 8
  999. h: 5
  1000. p: point(-(L/2),-(h/2))
  1001. rectangle: Rectangle(p,L,h)
  1002. </code></pre>
  1003. <h3 id="python_1">Python</h3>
  1004. <pre><code class="python">L = 8
  1005. h = 5
  1006. p = point(-(L/2),-(h/2))
  1007. rectangle = Rectangle(p,L,h)
  1008. rectangle.set_name(&quot;rectangle&quot;)
  1009. </code></pre>
  1010. <p><img alt="rectangle" src="../reference/rectangle.svg" /></p>
  1011. <h2 id="circle">Circle</h2>
  1012. <p><a href="#list-of-shapes">home</a> Defines a circle proving center and radius</p>
  1013. <h3 id="yaml_2">Yaml</h3>
  1014. <pre><code class="yaml">name: circle
  1015. shapes:
  1016. circle: Circle(point(0,0),5)
  1017. </code></pre>
  1018. <h3 id="python_2">Python</h3>
  1019. <pre><code class="python">circle = Circle(point(0,0),5)
  1020. circle.set_name(&quot;circle&quot;)
  1021. </code></pre>
  1022. <p><img alt="circle" src="../reference/circle.svg" /></p>
  1023. <h2 id="triangle">Triangle</h2>
  1024. <p><a href="#list-of-shapes">home</a> Defines a triangle providing three corner</p>
  1025. <h3 id="yaml_3">Yaml</h3>
  1026. <pre><code class="yaml">name: triangle
  1027. shapes:
  1028. L: 3.0
  1029. W: 4.0
  1030. triangle: Triangle(p1=(W/2,0), p2=(3*W/2,W/2), p3=(4*W/5.,L))
  1031. </code></pre>
  1032. <h3 id="python_3">Python</h3>
  1033. <pre><code class="python">L = 3.0
  1034. W = 4.0
  1035. triangle = Triangle(p1=(W/2,0), p2=(3*W/2,W/2), p3=(4*W/5.,L))
  1036. triangle.set_name(&quot;triangle&quot;)
  1037. </code></pre>
  1038. <p><img alt="triangle" src="../reference/triangle.svg" /></p>
  1039. <h2 id="distance-with-text">Distance with text</h2>
  1040. <p><a href="#list-of-shapes">home</a> Defines a sizing mark with a label </p>
  1041. <h3 id="yaml_4">Yaml</h3>
  1042. <pre><code class="yaml">name: dwt
  1043. shapes:
  1044. fontsize: 14
  1045. t: r'$ 2\pi R^2 $' # sample text
  1046. dwt: Distance_wText((-4,0), (8, 5), t, fontsize)
  1047. </code></pre>
  1048. <h3 id="python_4">Python</h3>
  1049. <pre><code class="python">fontsize=14
  1050. t = r'$ 2\pi R^2 $' # sample text
  1051. dwt = Distance_wText((-4,0), (8, 5), t, fontsize)
  1052. dwt.set_name(&quot;dwt&quot;)
  1053. </code></pre>
  1054. <p><img alt="Distance with text" src="../reference/distancewithtext.svg" /></p>
  1055. <h2 id="text">Text</h2>
  1056. <p><a href="#list-of-shapes">home</a> Defines a given text positionned at the provided point</p>
  1057. <h3 id="yaml_5">Yaml</h3>
  1058. <pre><code class="yaml">name: text
  1059. shapes:
  1060. text: Text(r'$c$', point(0,0))
  1061. </code></pre>
  1062. <h3 id="python_5">Python</h3>
  1063. <pre><code class="python">text = Text(r'$c$', point(0,0))
  1064. text.set_name(&quot;text&quot;)
  1065. </code></pre>
  1066. <p><img alt="Text" src="../reference/text.svg" /></p>
  1067. <h2 id="cross">Cross</h2>
  1068. <p><a href="#list-of-shapes">home</a> Defines a cross positionned at the provided point</p>
  1069. <h3 id="yaml_6">Yaml</h3>
  1070. <pre><code class="yaml">name: cross
  1071. shapes:
  1072. cross: Cross(point(0,0))
  1073. </code></pre>
  1074. <h3 id="python_6">Python</h3>
  1075. <pre><code class="python">cross = Cross(point(1,0))
  1076. cross.set_name(&quot;cross&quot;)
  1077. </code></pre>
  1078. <p><img alt="Cross" src="../reference/cross.svg" /></p>
  1079. <h2 id="axis">Axis</h2>
  1080. <p><a href="#list-of-shapes">home</a> Defines an axis at the given point with a given label</p>
  1081. <h3 id="yaml_7">Yaml</h3>
  1082. <pre><code class="yaml">name: axis
  1083. shapes:
  1084. axis: Axis((0,0), 5, 'x', rotation_angle=0)
  1085. </code></pre>
  1086. <h3 id="python_7">Python</h3>
  1087. <pre><code class="python">axis = Axis((0,0), 5, 'x', rotation_angle=0)
  1088. axis.set_name(&quot;axis&quot;)
  1089. </code></pre>
  1090. <p><img alt="Axis" src="../reference/axis.svg" /></p>
  1091. <h2 id="arc">Arc</h2>
  1092. <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>
  1093. <h3 id="yaml_8">Yaml</h3>
  1094. <pre><code class="yaml">name: arc
  1095. shapes:
  1096. center: point(0,0)
  1097. radius: 1
  1098. angle: 120
  1099. start_angle: 180-angle
  1100. arc_angle: angle
  1101. arc: Arc(center, radius, start_angle, arc_angle)
  1102. </code></pre>
  1103. <h3 id="python_8">Python</h3>
  1104. <pre><code class="python">center = point(0,0)
  1105. radius = 1
  1106. angle = 120
  1107. start_angle = 180-angle
  1108. arc_angle = angle
  1109. arc = Arc(center, radius, start_angle, arc_angle)
  1110. arc.set_name(&quot;arc&quot;)
  1111. </code></pre>
  1112. <p><img alt="Arc" src="../reference/arc.svg" /></p>
  1113. <h2 id="arc_wtext">Arc_wText</h2>
  1114. <p><a href="#list-of-shapes">home</a> Defines an arc with text positionned left (moving clock-wise) of arc half-way</p>
  1115. <h3 id="yaml_9">Yaml</h3>
  1116. <pre><code class="yaml">name: arc_wtxt
  1117. shapes:
  1118. center: point(0,0)
  1119. radius: 1
  1120. angle: 120
  1121. start_angle: 180-angle
  1122. arc_angle: angle
  1123. arc_wtxt: &quot;Arc_wText(r'$&lt;bslash&gt;theta$', center, radius, start_angle, arc_angle)&quot;
  1124. </code></pre>
  1125. <h3 id="python_9">Python</h3>
  1126. <pre><code class="python">center = point(0,0)
  1127. radius = 1
  1128. angle = 120
  1129. start_angle = 180-angle
  1130. arc_angle = angle
  1131. arc_wtxt = Arc_wText(r'$\theta$', center, radius, start_angle, arc_angle)
  1132. arc_wtxt.set_name(&quot;arcwtxt&quot;)
  1133. </code></pre>
  1134. <p><img alt="Arc with Text" src="../reference/arcwtext.svg" /></p>
  1135. <h2 id="arrow1">Arrow1</h2>
  1136. <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>
  1137. <h3 id="yaml_10">Yaml</h3>
  1138. <pre><code class="yaml">name: arrow1
  1139. shapes:
  1140. start: point(0,0)
  1141. end: point(5,5)
  1142. arrow1: Arrow1(start, end, style='&lt;-&gt;')
  1143. </code></pre>
  1144. <h3 id="python_10">Python</h3>
  1145. <pre><code class="python">start = point(0,0)
  1146. end = point(5,5)
  1147. arrow1 = Arrow1(start, end, style='&lt;-&gt;')
  1148. arrow1.set_name(&quot;arrow1&quot;)
  1149. </code></pre>
  1150. <p><img alt="Arrow1" src="../reference/arrow1.svg" /></p>
  1151. <h2 id="force">Force</h2>
  1152. <p><a href="#list-of-shapes">home</a> defines an Indication of a force by an arrow and a text (symbol)</p>
  1153. <h3 id="yaml_11">Yaml</h3>
  1154. <pre><code class="yaml">name: force
  1155. shapes:
  1156. x: 0
  1157. y: 0
  1158. contact: point(x, y)
  1159. vector: point(-3,-5)
  1160. force: Force(contact - vector, contact, r'$Force$', text_pos='start')
  1161. </code></pre>
  1162. <h3 id="python_11">Python</h3>
  1163. <pre><code class="python">x = 0
  1164. y = 0
  1165. contact = point(x, y)
  1166. vector = point(-3,-5)
  1167. force = Force(contact - vector, contact, r'$Force$', text_pos='start')
  1168. force.set_name(&quot;force&quot;)
  1169. </code></pre>
  1170. <p><img alt="Force" src="../reference/force.svg" /></p>
  1171. <h2 id="wall">Wall</h2>
  1172. <p><a href="#list-of-shapes">home</a> defines an hached box given starting, ending point and thickness, filled with a pattern</p>
  1173. <h3 id="yaml_12">Yaml</h3>
  1174. <pre><code class="yaml">name: wall
  1175. shapes:
  1176. theta: 30
  1177. L: 8
  1178. B: point(L-4,-2) # wall right end
  1179. A: point(-4,tan(radians(theta))*L-2) # wall left end
  1180. wall:
  1181. formula: Wall(x=[A[0], B[0]], y=[A[1], B[1]], thickness=-0.5,transparent=False)
  1182. style:
  1183. linecolor: black
  1184. </code></pre>
  1185. <h3 id="python_12">Python</h3>
  1186. <pre><code class="python">theta = 30
  1187. L = 8
  1188. B = point(L-4,-2) # wall right end
  1189. A = point(-4,tan(radians(theta))*L-2) # wall left end
  1190. wall= Wall(x=[A[0], B[0]], y=[A[1], B[1]], thickness=-0.5,transparent=False)
  1191. wall.set_linecolor('black')
  1192. wall.set_name(&quot;wall&quot;)
  1193. </code></pre>
  1194. <p><img alt="Wall" src="../reference/wall.svg" /></p>
  1195. <h2 id="curve">Curve</h2>
  1196. <p><a href="#list-of-shapes">home</a> defines a general curve as a sequence of (x,y) coordinates</p>
  1197. <h3 id="yaml_13">Yaml</h3>
  1198. <pre><code class="yaml">curve=&quot;&quot;&quot;\
  1199. name: curve
  1200. shapes:
  1201. N: 100
  1202. x: np.linspace(-2.0, 2.0, N)
  1203. y: x**3
  1204. curve: Curve(x,y)
  1205. &quot;&quot;&quot;
  1206. </code></pre>
  1207. <h3 id="python_13">Python</h3>
  1208. <pre><code class="python">N = 100
  1209. x = np.linspace(-2.0, 2.0, N)
  1210. y = x**3
  1211. curve = Curve(x,y)
  1212. curve.draw()
  1213. curve.set_name(&quot;curve&quot;)
  1214. </code></pre>
  1215. <p><img alt="Curve" src="../reference/curve.svg" /></p>
  1216. <h2 id="gravity">Gravity</h2>
  1217. <p><a href="#list-of-shapes">home</a> defines a downward-pointing gravity arrow with the symbol g or user given symbol.</p>
  1218. <h3 id="yaml_14">Yaml</h3>
  1219. <pre><code class="yaml">gravity=&quot;&quot;&quot;
  1220. name: gravity
  1221. shapes:
  1222. c: point(0,0)
  1223. r: 2
  1224. gravity:
  1225. formula: Gravity(c, r, text='$Mg$')
  1226. &quot;&quot;&quot;
  1227. </code></pre>
  1228. <h3 id="python_14">Python</h3>
  1229. <pre><code class="python">c = point(0,0)
  1230. r = 2
  1231. gravity = Gravity(c, r, text='$Mg$')
  1232. gravity.set_name(&quot;gravity&quot;)
  1233. </code></pre>
  1234. <p><img alt="Gravity" src="../reference/gravity.svg" /></p>
  1235. <h2 id="code-to-display-the-above-defined-shapes">Code to display the above defined shapes</h2>
  1236. <h2 id="moment">Moment</h2>
  1237. <p><a href="#list-of-shapes">home</a> defines a Moment arrow with text given text, center and radius.</p>
  1238. <h3 id="yaml_15">Yaml</h3>
  1239. <pre><code class="yaml">moment=&quot;&quot;&quot;
  1240. name: moment
  1241. shapes:
  1242. moment: Moment(&quot;$T$&quot;, point(0,0), 2)
  1243. &quot;&quot;&quot;
  1244. </code></pre>
  1245. <h3 id="python_15">Python</h3>
  1246. <pre><code class="python">moment = Moment(&quot;$T$&quot;, point(0,0), 2)
  1247. moment.shape_name=&quot;moment&quot;
  1248. </code></pre>
  1249. <p><img alt="Moment" src="../reference/moment.svg" /></p>
  1250. <h2 id="text_warrow">Text_wArrow</h2>
  1251. <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>
  1252. <h3 id="yaml_16">Yaml</h3>
  1253. <pre><code class="yaml">txtarrow=&quot;&quot;&quot;
  1254. name: txtarrow
  1255. shapes:
  1256. txtarrow: Text_wArrow(&quot;$Text$&quot;, point(0,0), point(2,2))
  1257. &quot;&quot;&quot;
  1258. </code></pre>
  1259. <h3 id="python_16">Python</h3>
  1260. <pre><code class="python">txtarrow = Text_wArrow(&quot;$Text$&quot;, point(0,0), point(2,2))
  1261. txtarrow.set_name(&quot;txtarrow&quot;)
  1262. </code></pre>
  1263. <p><img alt="Text_wArrow" src="../reference/textwarrow.svg" /></p>
  1264. <h2 id="wheel">Wheel</h2>
  1265. <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>
  1266. <h3 id="yaml_17">Yaml</h3>
  1267. <pre><code class="yaml">wheel=&quot;&quot;&quot;
  1268. name: wheel
  1269. shapes:
  1270. wheel: Wheel(point(0,0), 5)
  1271. &quot;&quot;&quot;
  1272. </code></pre>
  1273. <h3 id="python_17">Python</h3>
  1274. <pre><code class="python">wheel = Wheel(point(0,0), 5)
  1275. wheel.set_name(&quot;wheel&quot;)
  1276. </code></pre>
  1277. <p><img alt="Wheel" src="../reference/wheel.svg" /></p>
  1278. <h2 id="spring">Spring</h2>
  1279. <p><a href="#list-of-shapes">home</a> Specify a vertical spring, starting at start and with length as total vertical length</p>
  1280. <h3 id="yaml_18">Yaml</h3>
  1281. <pre><code class="yaml">spring=&quot;&quot;&quot;
  1282. name: spring
  1283. shapes:
  1284. spring:
  1285. formula: Spring(point(0,0),5)
  1286. style:
  1287. linecolor: black
  1288. linewidth: 1
  1289. &quot;&quot;&quot;
  1290. </code></pre>
  1291. <h3 id="python_18">Python</h3>
  1292. <pre><code class="python">spring = Spring(point(0,0),5)
  1293. spring.set_linecolor('black')
  1294. spring.set_linewidth(1)
  1295. spring.set_name(&quot;spring&quot;)
  1296. </code></pre>
  1297. <p><img alt="Spring" src="../reference/spring.svg" /></p>
  1298. <h2 id="dashpot">Dashpot</h2>
  1299. <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>
  1300. <h3 id="yaml_19">Yaml</h3>
  1301. <pre><code class="yaml">dashpot=&quot;&quot;&quot;
  1302. name: dashpot
  1303. shapes:
  1304. dashpot: Dashpot(point(0,0),5)
  1305. &quot;&quot;&quot;
  1306. </code></pre>
  1307. <h3 id="python_19">Python</h3>
  1308. <pre><code class="python">dashpot = Dashpot(point(0,0),5)
  1309. dashpot.set_name(&quot;dashpot&quot;)
  1310. </code></pre>
  1311. <p><img alt="Dashpot" src="../reference/dashpot.svg" /></p>
  1312. <p><a href="#list-of-shapes">home</a> In order to display the various shapes, use the following code in a jupyter notebook</p>
  1313. <pre><code class="python">[1]: %matplotlib widget
  1314. [2]: from pysketcher import *
  1315. [3]: from math import tan, radians, sin, cos # needed for python code
  1316. [4]: import numpy as np
  1317. [6]: drawing_tool.set_coordinate_system(xmin=-10, xmax=10,ymin=-10, ymax=10,axis=True)
  1318. [5]: drawing_tool.mpl.gcf().canvas
  1319. </code></pre>
  1320. <p>for Yaml, you need to add those extra steps</p>
  1321. <pre><code class="python">head = &quot;&quot;&quot;\
  1322. libraries: [&quot;from math import tan, radians, sin, cos&quot;,&quot;from pysketcher import *&quot;,&quot;import numpy as np&quot;]
  1323. myfig={}
  1324. sketchParse(head,myfig)
  1325. </code></pre>
  1326. <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>
  1327. <h3 id="yaml_20">Yaml</h3>
  1328. <pre><code class="python">myfig={}
  1329. sketch=&quot;&quot;&quot;
  1330. # put here the yaml 'object' definition
  1331. &quot;&quot;&quot;
  1332. drawing_tool.erase()
  1333. sketchParse(sketch,myfig)
  1334. # replace 'object' by the actual one
  1335. d = myfig['object'].draw()
  1336. drawing_tool.display()
  1337. </code></pre>
  1338. <h3 id="python_20">Python</h3>
  1339. <pre><code class="python">drawing_tool.erase()
  1340. # put the code of the object case here
  1341. # replace object by the actual name line, rectangle, circle...
  1342. object.draw()
  1343. drawing_tool.display()
  1344. </code></pre>
  1345. </article>
  1346. </div>
  1347. </div>
  1348. </main>
  1349. <footer class="md-footer">
  1350. <div class="md-footer-nav">
  1351. <nav class="md-footer-nav__inner md-grid" aria-label="Footer">
  1352. <a href="../learningbyexample/" title="Learning by Example" class="md-footer-nav__link md-footer-nav__link--prev" rel="prev">
  1353. <div class="md-footer-nav__button md-icon">
  1354. <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>
  1355. </div>
  1356. <div class="md-footer-nav__title">
  1357. <div class="md-ellipsis">
  1358. <span class="md-footer-nav__direction">
  1359. Previous
  1360. </span>
  1361. Learning by Example
  1362. </div>
  1363. </div>
  1364. </a>
  1365. </nav>
  1366. </div>
  1367. <div class="md-footer-meta md-typeset">
  1368. <div class="md-footer-meta__inner md-grid">
  1369. <div class="md-footer-copyright">
  1370. Made with
  1371. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  1372. Material for MkDocs
  1373. </a>
  1374. </div>
  1375. </div>
  1376. </div>
  1377. </footer>
  1378. </div>
  1379. <script src="../assets/javascripts/vendor.d710d30a.min.js"></script>
  1380. <script src="../assets/javascripts/bundle.b39636ac.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>
  1381. <script>
  1382. app = initialize({
  1383. base: "..",
  1384. features: [],
  1385. search: Object.assign({
  1386. worker: "../assets/javascripts/worker/search.a68abb33.min.js"
  1387. }, typeof search !== "undefined" && search)
  1388. })
  1389. </script>
  1390. <script src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-MML-AM_CHTML"></script>
  1391. </body>
  1392. </html>