{"id":11833,"date":"2021-04-27T13:43:53","date_gmt":"2021-04-27T12:43:53","guid":{"rendered":"http:\/\/www.keris-studio.fr\/blog\/?p=11833"},"modified":"2023-02-19T22:45:15","modified_gmt":"2023-02-19T21:45:15","slug":"grasshopper-express-01","status":"publish","type":"post","link":"https:\/\/www.keris-studio.fr\/blog\/?p=11833","title":{"rendered":"Grasshopper Express \u2013 shutter"},"content":{"rendered":"<p>folding shutter.<\/p>\n<p>In Grasshopper, there are no really good solutions for <strong>inverse kinematics<\/strong>. This is a major issue for many articulated mechanisms. In this example, we will see how to create an animated folding shutter without using angles and instead using the movement that we would do in real life. <a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-29.gif\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11834 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-29.gif\" alt=\"\" width=\"748\" height=\"358\"><\/a><\/p>\n<p><!--more-->Start by creating 2 points. The highest one is the one where the folding shutter is hanged, the lowest one corresponds to the handler.<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11835 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208.png\" alt=\"\" width=\"1313\" height=\"586\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208.png 1313w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208-300x134.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208-1024x457.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1208-768x343.png 768w\" sizes=\"auto, (max-width: 1313px) 100vw, 1313px\" \/><\/a><\/p>\n<p>Create 2 circles<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11836 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209.png\" alt=\"\" width=\"1503\" height=\"597\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209.png 1503w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209-300x119.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209-1024x407.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1209-768x305.png 768w\" sizes=\"auto, (max-width: 1503px) 100vw, 1503px\" \/><\/a><\/p>\n<p>Find the intersections<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11837 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210.png\" alt=\"\" width=\"1150\" height=\"504\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210.png 1150w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210-300x131.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210-1024x449.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1210-768x337.png 768w\" sizes=\"auto, (max-width: 1150px) 100vw, 1150px\" \/><\/a><\/p>\n<p>Il will be necessary to isolate one of the points. If not, the solution will swing from one point to the other.<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1211.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11838 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1211.png\" alt=\"\" width=\"866\" height=\"436\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1211.png 866w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1211-300x151.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1211-768x387.png 768w\" sizes=\"auto, (max-width: 866px) 100vw, 866px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11839 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212.png\" alt=\"\" width=\"1446\" height=\"492\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212.png 1446w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212-300x102.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212-1024x348.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1212-768x261.png 768w\" sizes=\"auto, (max-width: 1446px) 100vw, 1446px\" \/><\/a><\/p>\n<p>Let\u2019s connect the cercle centers to the intersection. Beware of giving a logic order.<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11840 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213.png\" alt=\"\" width=\"1176\" height=\"653\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213.png 1176w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213-300x167.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213-1024x569.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213-768x426.png 768w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213-672x372.png 672w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1213-1038x576.png 1038w\" sizes=\"auto, (max-width: 1176px) 100vw, 1176px\" \/><\/a><\/p>\n<p>The system is finished. It\u2019s now designing the Shutter.<\/p>\n<p>We can offset the curves<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11841 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214.png\" alt=\"\" width=\"1420\" height=\"660\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214.png 1420w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214-300x139.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214-1024x476.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1214-768x357.png 768w\" sizes=\"auto, (max-width: 1420px) 100vw, 1420px\" \/><\/a><\/p>\n<p>Which is not working with Rhino 6. In Rhino 6<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11842 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215.png\" alt=\"\" width=\"1152\" height=\"363\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215.png 1152w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215-300x95.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215-1024x323.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1215-768x242.png 768w\" sizes=\"auto, (max-width: 1152px) 100vw, 1152px\" \/><\/a><\/p>\n<p>Some finishing<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11843 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216.png\" alt=\"\" width=\"1752\" height=\"562\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216.png 1752w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216-300x96.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216-1024x328.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216-768x246.png 768w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1216-1536x493.png 1536w\" sizes=\"auto, (max-width: 1752px) 100vw, 1752px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11844 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217.png\" alt=\"\" width=\"1210\" height=\"582\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217.png 1210w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217-300x144.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217-1024x493.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1217-768x369.png 768w\" sizes=\"auto, (max-width: 1210px) 100vw, 1210px\" \/><\/a><\/p>\n<p>To segment the shutter<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11845 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218.png\" alt=\"\" width=\"1179\" height=\"470\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218.png 1179w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218-300x120.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218-1024x408.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1218-768x306.png 768w\" sizes=\"auto, (max-width: 1179px) 100vw, 1179px\" \/><\/a><\/p>\n<p>Divide the 2 lines used for the loft<\/p>\n<p>Partition the list to take 5 lines, leave one.<\/p>\n<p><a href=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-11846 size-full\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219.png\" alt=\"\" width=\"1340\" height=\"317\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219.png 1340w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219-300x71.png 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219-1024x242.png 1024w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/word-image-1219-768x182.png 768w\" sizes=\"auto, (max-width: 1340px) 100vw, 1340px\" \/><\/a><\/p>\n\n\n<p>The definition can be found <a href=\"https:\/\/github.com\/Laurent-Lescop\/Grasshopper\/blob\/main\/Volet.gh\">here for RH6<\/a> and <a href=\"https:\/\/github.com\/Laurent-Lescop\/Grasshopper\/blob\/main\/Volet.gh\">here for RH7<\/a><\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Feedback<\/h1>\n\n\n\n<p><strong>Kindly complete\u00a0<a rel=\"noreferrer noopener\" href=\"https:\/\/forms.gle\/2RCQ5M2HfATnPxRT8\" target=\"_blank\">this form\u00a0<\/a>to provide feedback on this exercise.<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"https:\/\/forms.gle\/2RCQ5M2HfATnPxRT8\"><img loading=\"lazy\" decoding=\"async\" width=\"790\" height=\"352\" src=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/link.jpg\" alt=\"\" class=\"wp-image-12899\" srcset=\"https:\/\/www.keris-studio.fr\/blog\/wp-content\/link.jpg 790w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/link-300x134.jpg 300w, https:\/\/www.keris-studio.fr\/blog\/wp-content\/link-768x342.jpg 768w\" sizes=\"auto, (max-width: 790px) 100vw, 790px\" \/><\/a><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>folding shutter. In Grasshopper, there are no really good solutions for inverse kinematics. This is a major issue for many articulated mechanisms. In this example, we will see how to create an animated folding shutter without using angles and instead using the movement that we would do in real life.<\/p>\n","protected":false},"author":2,"featured_media":11847,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,195,448,87,174],"tags":[42,175,456,451,455,47],"class_list":["post-11833","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-3d","category-creation","category-grasshopper","category-linkedin","category-simulations","tag-animation","tag-grasshopper","tag-inverse-kinematic","tag-rhino","tag-shutter","tag-simulation"],"_links":{"self":[{"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/posts\/11833","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11833"}],"version-history":[{"count":4,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/posts\/11833\/revisions"}],"predecessor-version":[{"id":12906,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/posts\/11833\/revisions\/12906"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=\/wp\/v2\/media\/11847"}],"wp:attachment":[{"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11833"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11833"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.keris-studio.fr\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11833"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}