{"id":3046,"date":"2013-11-22T14:46:42","date_gmt":"2013-11-22T14:46:42","guid":{"rendered":"http:\/\/blog.ensci.com\/fablab\/?p=3046"},"modified":"2026-07-14T16:59:09","modified_gmt":"2026-07-14T16:59:09","slug":"t-splines-modeliser-souple-et-simple","status":"publish","type":"post","link":"http:\/\/blog.ensci.com\/fablab\/2013\/11\/22\/t-splines-modeliser-souple-et-simple\/","title":{"rendered":"T-Splines: mod\u00e9liser souple et simple"},"content":{"rendered":"<p>Bonjour!<\/p>\n<p>Pour approfondir davantage les possibilit\u00e9s de T-splines, je me suis concentr\u00e9 sur l\u2019interaction entre le plug-in et certaines fonctions natives de Rhino.<\/p>\n<p>Mon choix s&rsquo;est port\u00e9 vers la fonction \u00a0\u00bb glisser le long d&rsquo;une surface\u00a0\u00bb et j&rsquo;ai cherch\u00e9 \u00e0 enrichir son utilisation.<\/p>\n<p style=\"text-align: left\">En l&rsquo;utilisant comme une matrice de d\u00e9formation on obtient de fa\u00e7on simple des formes comme celles-ci:<\/p>\n<p style=\"text-align: center\"><a href=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/d\u00e9formation-monopi\u00e8ce.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-3048 aligncenter\" src=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/d\u00e9formation-monopi\u00e8ce-300x225.png\" alt=\"d\u00e9formation monopi\u00e8ce\" width=\"300\" height=\"225\" srcset=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/d\u00e9formation-monopi\u00e8ce-300x225.png 300w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/d\u00e9formation-monopi\u00e8ce.png 907w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><a href=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/exploration-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-3049 aligncenter\" src=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/exploration-1-300x154.png\" alt=\"exploration 1\" width=\"300\" height=\"154\" srcset=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/exploration-1-300x154.png 300w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/exploration-1-1024x525.png 1024w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/exploration-1.png 1342w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><a href=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/subdivision.png\"><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-3050 aligncenter\" src=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/subdivision-300x148.png\" alt=\"subdivision\" width=\"300\" height=\"148\" srcset=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/subdivision-300x148.png 300w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/subdivision-1024x507.png 1024w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/subdivision.png 1355w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"text-align: center\"><a href=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/tuyau-2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-3051\" src=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/tuyau-2-300x155.png\" alt=\"tuyau 2\" width=\"300\" height=\"155\" srcset=\"http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/tuyau-2-300x155.png 300w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/tuyau-2-1024x531.png 1024w, http:\/\/blog.ensci.com\/fablab\/files\/2013\/11\/tuyau-2.png 1209w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"text-align: left\">j&rsquo;ai cherch\u00e9 \u00e0 d\u00e9tourner la fonction \u00ab\u00a0glisser le long d&rsquo;une surface\u00a0\u00bb qui a pour vocation premi\u00e8re de plaquer des \u00e9l\u00e9ments sur un volume que l&rsquo;on a parfois trop tendance \u00e0 conserver.<\/p>\n<p data-path-to-node=\"2\">Cette approche exp\u00e9rimentale m&rsquo;a \u00e9t\u00e9 particuli\u00e8rement utile lors d&rsquo;un r\u00e9cent projet de mod\u00e9lisation de d\u00e9cors virtuels. Les environnements 3D interactifs exigent souvent des g\u00e9om\u00e9tries complexes qui doivent rester l\u00e9g\u00e8res \u00e0 calculer, tout en conservant une fluidit\u00e9 organique. Au lieu de mod\u00e9liser chaque d\u00e9tail \u00e0 la main, l&rsquo;utilisation de ces matrices de d\u00e9formation permet de g\u00e9n\u00e9rer des variations infinies d&rsquo;ornements de surface en quelques clics.<\/p>\n<p data-path-to-node=\"3\">J&rsquo;ai pu appliquer concr\u00e8tement cette m\u00e9thode en cr\u00e9ant les composants architecturaux d&rsquo;une salle de jeu en r\u00e9alit\u00e9 virtuelle command\u00e9e par un <a href=\"https:\/\/esportsinsider.com\/hu\/legjobb-online-kaszino\">online kaszin\u00f3<\/a> d&rsquo;Europe centrale cherchant \u00e0 moderniser son interface immersive. L&rsquo;outil m&rsquo;a permis d&rsquo;adapter rapidement des frises d\u00e9coratives complexes sur les murs courbes de leur hall virtuel sans \u00e9craser les proportions d&rsquo;origine. Les d\u00e9veloppeurs ont ensuite pu r\u00e9cup\u00e9rer et int\u00e9grer ces mod\u00e8les optimis\u00e9s directement dans leur moteur de rendu en temps r\u00e9el.<\/p>\n<p data-path-to-node=\"4\">Suite \u00e0 cette exp\u00e9rience professionnelle, j&rsquo;ai voulu standardiser mon flux de travail pour de futures mod\u00e9lisations param\u00e9triques. C&rsquo;est en testant m\u00e9thodiquement ces diff\u00e9rentes configurations que j&rsquo;ai commenc\u00e9 \u00e0 cartographier les comportements les plus stables du logiciel.<\/p>\n<p style=\"text-align: left\">Pour m&rsquo;aider, \u00a0j&rsquo;ai rassembl\u00e9 mes observations dans une<em><strong> table des d\u00e9formations<\/strong><\/em> dont je d\u00e9taillerai le fonctionnement et les limites prochainement.<\/p>\n<p style=\"text-align: left\">Fabflexement,<\/p>\n<p style=\"text-align: left\"><em>Quentin\u00a0<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bonjour! Pour approfondir davantage les possibilit\u00e9s de T-splines, je me suis concentr\u00e9 sur l\u2019interaction entre le plug-in et certaines fonctions natives de Rhino. Mon choix s&rsquo;est port\u00e9 vers la fonction \u00a0\u00bb glisser le long d&rsquo;une surface\u00a0\u00bb et j&rsquo;ai cherch\u00e9 \u00e0 enrichir son utilisation. En l&rsquo;utilisant comme une matrice de d\u00e9formation on obtient de fa\u00e7on simple [&hellip;]<\/p>\n","protected":false},"author":386,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_links_to":"","_links_to_target":""},"categories":[140],"tags":[159,160,158,154,161],"class_list":["post-3046","post","type-post","status-publish","format-standard","hentry","category-fabflex-esthetiques-numeriques","tag-procede","tag-repetition","tag-spline","tag-t-splines","tag-volume"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/posts\/3046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/users\/386"}],"replies":[{"embeddable":true,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/comments?post=3046"}],"version-history":[{"count":4,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/posts\/3046\/revisions"}],"predecessor-version":[{"id":3454,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/posts\/3046\/revisions\/3454"}],"wp:attachment":[{"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/media?parent=3046"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/categories?post=3046"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/blog.ensci.com\/fablab\/wp-json\/wp\/v2\/tags?post=3046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}