{"id":1752,"date":"2021-10-26T12:37:27","date_gmt":"2021-10-26T16:37:27","guid":{"rendered":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/?page_id=1752"},"modified":"2021-10-27T11:16:47","modified_gmt":"2021-10-27T15:16:47","slug":"3d-to-2d","status":"publish","type":"page","link":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/daily-notes\/10-27-new-ii\/3d-to-2d\/","title":{"rendered":"3D to 2D"},"content":{"rendered":"<p><em>Some Resources for Converting 3D models to 2D Plots<\/em><\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\"><a href=\"https:\/\/t.co\/Rlpxz3cfeL\">https:\/\/t.co\/Rlpxz3cfeL<\/a> converts 3D STL files to 2D SVG suitable for <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> with interactive camera positioning, back-face culling, hidden-line removal, and coplanar-triangle merging. <a href=\"https:\/\/t.co\/oxtWRh4XJ1\">pic.twitter.com\/oxtWRh4XJ1<\/a><\/p>\n<p>&mdash; Trammell Hudson \u272a (@qrs) <a href=\"https:\/\/twitter.com\/qrs\/status\/1333542489828036608?ref_src=twsrc%5Etfw\">November 30, 2020<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p><a href=\"https:\/\/gfx.cs.princeton.edu\/pubs\/_2009_LDO\/cole_2009_ldo.pdf\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-large wp-image-1753\" src=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-11.48.49-AM-1024x829.png\" alt=\"\" width=\"840\" height=\"680\" srcset=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-11.48.49-AM-1024x829.png 1024w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-11.48.49-AM-593x480.png 593w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-11.48.49-AM-768x622.png 768w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-11.48.49-AM.png 1196w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<hr \/>\n<p>&nbsp;<\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"sv\" dir=\"ltr\">Head skan plot <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> <a href=\"https:\/\/t.co\/u4YY0NcPMF\">pic.twitter.com\/u4YY0NcPMF<\/a><\/p>\n<p>&mdash; SHELTRON (@Sheltron3030) <a href=\"https:\/\/twitter.com\/Sheltron3030\/status\/1413304580071333891?ref_src=twsrc%5Etfw\">July 9, 2021<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Man wearing a wreath, 1st century CE, Marble.<br \/>To 3d slit-scan, Pilot Hi-Tec-C 0.25 on A3 Bristol <a href=\"https:\/\/twitter.com\/hashtag\/axidraw?src=hash&amp;ref_src=twsrc%5Etfw\">#axidraw<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> <a href=\"https:\/\/t.co\/voZyeSy5I9\">pic.twitter.com\/voZyeSy5I9<\/a><\/p>\n<p>&mdash; Thomas Ingram (@vertxxyz) <a href=\"https:\/\/twitter.com\/vertxxyz\/status\/1391227187924070404?ref_src=twsrc%5Etfw\">May 9, 2021<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">I made a new turtle: <a href=\"https:\/\/t.co\/5fPbYa99qY\">https:\/\/t.co\/5fPbYa99qY<\/a><a href=\"https:\/\/twitter.com\/hashtag\/turtletoy?src=hash&amp;ref_src=twsrc%5Etfw\">#turtletoy<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> <a href=\"https:\/\/t.co\/lKGc9VU7r5\">pic.twitter.com\/lKGc9VU7r5<\/a><\/p>\n<p>&mdash; Reinder Nijhoff (@ReinderNijhoff) <a href=\"https:\/\/twitter.com\/ReinderNijhoff\/status\/1316999542785609729?ref_src=twsrc%5Etfw\">October 16, 2020<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Vestibule. JPEG of AxiPlotter Drawing via 3D scan Point Cloud from the Amtrak scan series. Image is composite of 4 drawings made w. 7 colors. Ed 1\/10 0.5 tez. <a href=\"https:\/\/twitter.com\/hashtag\/3dscan?src=hash&amp;ref_src=twsrc%5Etfw\">#3dscan<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/nftcollectors?src=hash&amp;ref_src=twsrc%5Etfw\">#nftcollectors<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/cleannft?src=hash&amp;ref_src=twsrc%5Etfw\">#cleannft<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/hicetnunc?src=hash&amp;ref_src=twsrc%5Etfw\">#hicetnunc<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/tezos?src=hash&amp;ref_src=twsrc%5Etfw\">#tezos<\/a> <a href=\"https:\/\/twitter.com\/hashtag\/cryptoart?src=hash&amp;ref_src=twsrc%5Etfw\">#cryptoart<\/a> <a href=\"https:\/\/twitter.com\/hicetnunc2000?ref_src=twsrc%5Etfw\">@hicetnunc2000<\/a> <a href=\"https:\/\/twitter.com\/onhicetnunc?ref_src=twsrc%5Etfw\">@onhicetnunc<\/a> <a href=\"https:\/\/twitter.com\/hicetnunc_bot?ref_src=twsrc%5Etfw\">@hicetnunc_bot<\/a> <a href=\"https:\/\/t.co\/8ms9l8oXjG\">pic.twitter.com\/8ms9l8oXjG<\/a><\/p>\n<p>&mdash; tom burtonwood (@tburtonwood) <a href=\"https:\/\/twitter.com\/tburtonwood\/status\/1391468440569978880?ref_src=twsrc%5Etfw\">May 9, 2021<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<hr \/>\n<h3>Tutorials<\/h3>\n<p><iframe loading=\"lazy\" title=\"Intro to Blender and Sverchok for plotter-friendly generative art\" width=\"840\" height=\"473\" src=\"https:\/\/www.youtube.com\/embed\/BslNIMXKtRs?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<p><iframe loading=\"lazy\" title=\"Creating and Plotting 3D Graphics with Blender and AxiDraw\" width=\"840\" height=\"473\" src=\"https:\/\/www.youtube.com\/embed\/wnpGhqbKcls?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen><\/iframe><\/p>\n<hr \/>\n<h3>Tools<\/h3>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">I&#39;m completely hooked on <a href=\"https:\/\/twitter.com\/Blender?ref_src=twsrc%5Etfw\">@blender<\/a> for making <a href=\"https:\/\/twitter.com\/hashtag\/plottertwitter?src=hash&amp;ref_src=twsrc%5Etfw\">#plottertwitter<\/a> friendly <a href=\"https:\/\/twitter.com\/hashtag\/SVG?src=hash&amp;ref_src=twsrc%5Etfw\">#SVG<\/a> graphics. After discovering a few plugins like <a href=\"https:\/\/twitter.com\/hashtag\/Sverchok?src=hash&amp;ref_src=twsrc%5Etfw\">#Sverchok<\/a> and <a href=\"https:\/\/twitter.com\/hashtag\/animationNodes?src=hash&amp;ref_src=twsrc%5Etfw\">#animationNodes<\/a>, there&#39;s no stopping now! I&#39;ll be posting more about this on my <a href=\"https:\/\/twitter.com\/Patreon?ref_src=twsrc%5Etfw\">@patreon<\/a> soon! Join me on my journey:  <a href=\"https:\/\/t.co\/yKx4GKHflx\">https:\/\/t.co\/yKx4GKHflx<\/a> <a href=\"https:\/\/t.co\/Et49yf1Hc2\">pic.twitter.com\/Et49yf1Hc2<\/a><\/p>\n<p>&mdash; Maks Surguy (@msurguy) <a href=\"https:\/\/twitter.com\/msurguy\/status\/1308970218862063617?ref_src=twsrc%5Etfw\">September 24, 2020<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<h3>Links:<\/h3>\n<ul>\n<li><a href=\"https:\/\/github.com\/msurguy\/awesome-3d-engines-for-plotters\">List of 3D-to-2D SVG Exporters<\/a>, by Maks Surguy<\/li>\n<li><a href=\"https:\/\/github.com\/abey79\/lines\">Lines<\/a>, a vector 3D engine by Abey79 (Python)<\/li>\n<li><a href=\"https:\/\/github.com\/fogleman\/ln\">LN<\/a>, by Michael Fogleman\u00a0 (Go)<\/li>\n<li><a href=\"https:\/\/github.com\/aweary\/ln.js\">Fogleman&#8217;s LN.js<\/a>, ported to Javascript<\/li>\n<li><a href=\"https:\/\/github.com\/CreativeInquiry\/LN.pde\">Fogleman&#8217;s LN.pde<\/a>, ported to Processing\/Java by Lingdong Huang<\/li>\n<li><a href=\"https:\/\/github.com\/CreativeInquiry\/ApparentRidges\">ApparentRidges<\/a>, Processing\/Java port by Lingdong Huang<\/li>\n<li><a href=\"https:\/\/docs.blender.org\/manual\/en\/2.79\/render\/freestyle\/export_svg.html\">Blender&#8217;s Freestyle SVG Export<\/a> (Python)<\/li>\n<\/ul>\n<p><a href=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM.png\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-large wp-image-1754\" src=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM-1024x614.png\" alt=\"\" width=\"840\" height=\"504\" srcset=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM-1024x614.png 1024w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM-640x384.png 640w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM-768x460.png 768w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM-1200x719.png 1200w, https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-content\/uploads\/2021\/10\/Screen-Shot-2021-10-26-at-12.37.05-PM.png 1418w\" sizes=\"(max-width: 709px) 85vw, (max-width: 909px) 67vw, (max-width: 1362px) 62vw, 840px\" \/><\/a><\/p>\n<hr \/>\n<h3>Plotting VR Drawings<\/h3>\n<blockquote class=\"twitter-tweet\" data-width=\"550\" data-dnt=\"true\">\n<p lang=\"en\" dir=\"ltr\">Made a <a href=\"https:\/\/twitter.com\/hashtag\/TiltBrush?src=hash&amp;ref_src=twsrc%5Etfw\">#TiltBrush<\/a> reader library for <a href=\"https:\/\/twitter.com\/ProcessingOrg?ref_src=twsrc%5Etfw\">@ProcessingOrg<\/a> (cc <a href=\"https:\/\/twitter.com\/golan?ref_src=twsrc%5Etfw\">@golan<\/a>) <a href=\"https:\/\/t.co\/XFcxRGKQFq\">https:\/\/t.co\/XFcxRGKQFq<\/a> <a href=\"https:\/\/t.co\/qSjvysiPeJ\">pic.twitter.com\/qSjvysiPeJ<\/a><\/p>\n<p>&mdash; Nick Fox-Gieg (@n1ckfg) <a href=\"https:\/\/twitter.com\/n1ckfg\/status\/1422680388481257475?ref_src=twsrc%5Etfw\">August 3, 2021<\/a><\/p><\/blockquote>\n<p><script async src=\"https:\/\/platform.twitter.com\/widgets.js\" charset=\"utf-8\"><\/script><\/p>\n<p>Some miscellaneous links:<\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/googlevr\/tilt-brush\"><span style=\"font-weight: 400;\">https:\/\/github.com\/googlevr\/tilt-brush<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/support.google.com\/tiltbrush\/answer\/6389651?hl=en\"><span style=\"font-weight: 400;\">https:\/\/support.google.com\/tiltbrush\/answer\/6389651?hl=en<\/span><\/a><span style=\"font-weight: 400;\">\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/msub2.github.io\/silk-brush\/\"><span style=\"font-weight: 400;\">https:\/\/msub2.github.io\/silk-brush\/<\/span><\/a><span style=\"font-weight: 400;\">\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong><a href=\"https:\/\/github.com\/icosa-gallery\/open-brush\">https:\/\/github.com\/icosa-gallery\/open-brush<\/a><\/strong><span style=\"font-weight: 400;\"> &#8211; Recommended<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/LightningArtist\/latkProcessing\"><span style=\"font-weight: 400;\">https:\/\/github.com\/LightningArtist\/latkProcessing<\/span><\/a><span style=\"font-weight: 400;\">\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/LightningArtist\"><span style=\"font-weight: 400;\">https:\/\/github.com\/LightningArtist<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/LightningArtist\/latk.py\"><span style=\"font-weight: 400;\">https:\/\/github.com\/LightningArtist\/latk.py<\/span><\/a><span style=\"font-weight: 400;\">\u00a0<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/github.com\/googlevr\/tilt-brush-toolkit\/tree\/master\/Python\/tiltbrush\"><span style=\"font-weight: 400;\">https:\/\/github.com\/googlevr\/tilt-brush-toolkit\/tree\/master\/Python\/tiltbrush<\/span><\/a><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/sidequestvr.com\/app\/2953\/multibrush-by-rendever\">https:\/\/sidequestvr.com\/app\/2953\/multibrush-by-rendever<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Some Resources for Converting 3D models to 2D Plots https:\/\/t.co\/Rlpxz3cfeL converts 3D STL files to 2D SVG suitable for #plottertwitter with interactive camera positioning, back-face culling, hidden-line removal, and coplanar-triangle merging. pic.twitter.com\/oxtWRh4XJ1 &mdash; Trammell Hudson \u272a (@qrs) November 30, 2020 &nbsp; Head skan plot #plottertwitter pic.twitter.com\/u4YY0NcPMF &mdash; SHELTRON (@Sheltron3030) July 9, 2021 Man wearing a &hellip; <a href=\"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/daily-notes\/10-27-new-ii\/3d-to-2d\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;3D to 2D&#8221;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"parent":1749,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"_links":{"self":[{"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/pages\/1752"}],"collection":[{"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/comments?post=1752"}],"version-history":[{"count":6,"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/pages\/1752\/revisions"}],"predecessor-version":[{"id":1798,"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/pages\/1752\/revisions\/1798"}],"up":[{"embeddable":true,"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/pages\/1749"}],"wp:attachment":[{"href":"https:\/\/courses.ideate.cmu.edu\/60-428\/f2021\/wp-json\/wp\/v2\/media?parent=1752"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}