{"id":301,"date":"2019-04-04T09:00:00","date_gmt":"2019-04-04T07:00:00","guid":{"rendered":"https:\/\/blogs.autodesk.com\/villagebim\/2019\/04\/explications-design-automation-api-exemples.html"},"modified":"2019-04-04T09:00:00","modified_gmt":"2019-04-04T07:00:00","slug":"explications-design-automation-api-exemples","status":"publish","type":"post","link":"https:\/\/blogs.autodesk.com\/villagebim\/2019\/04\/explications-design-automation-api-exemples.html","title":{"rendered":"[Explications] Design Automation API\u2013 Exemples"},"content":{"rendered":"<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9a5200d-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image002[4]\" border=\"0\" height=\"255\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a54200c-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image002[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;En d\u00e9but d\u2019ann\u00e9e, je vous annon\u00e7ais la naissance de la technologie <strong>Design Automation for Revit<\/strong> , une des nombreuses annonces d\u2019<a href=\"https:\/\/www.autodesk.com\/autodesk-university\/\">Autodesk Universit\u00e9 2018<\/a>. Dans <a href=\"https:\/\/villagebim.typepad.com\/villagebim\/2019\/01\/forge-design-automation-for-revit.html\">mon article<\/a>, vous trouverez toutes les explications concernant les concepts et utilisations.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Depuis, cette technologie continue \u00e0 \u00e9voluer et notamment, elle vient de faire peau neuve avec la sortie de la version 3 de Design Automation en version b\u00e9ta. A cette occasion, Monsieur <a href=\"https:\/\/forge.autodesk.com\/author\/augusto-goncalves\">Augusto Goncalves<\/a>, Forge Developer Advocate de la soci\u00e9t\u00e9 Autodesk, nous pr\u00e9sente les nouveaut\u00e9s ainsi que des cas concrets d\u2019utilisation lors d\u2019un webcast.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Vous trouvez ci-dessous, les \u00e9l\u00e9ments importants de la pr\u00e9sentation.<\/p>\n<p style=\"text-align: justify\"><strong><u>1- Les fondamentaux , les bases :<\/u><\/strong><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;La Design Automation est la possibilit\u00e9 de disposer du pouvoir de l\u2019application de bureau dans le cloud. Il s\u2019agit tout simplement d\u2019op\u00e9rations en batch* utilisant des donn\u00e9es d\u2019entr\u00e9e (Input) et restituant des donn\u00e9es de type r\u00e9sultat (Output).<\/p>\n<p style=\"text-align: justify\">*Batch : il s\u2019agit d\u2019un traitement par lots, encha\u00eenement automatique d&#039;une suite de commandes sans intervention humaine.<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742bc200b-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image004[4]\" border=\"0\" height=\"162\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9a9200d-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image004[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">La version beta v3 de Design Automation introduit trois nouveaux moteurs Autodesk:<\/p>\n<ul>\n<li>Revit<\/li>\n<li>Inventor<\/li>\n<li>3ds Max<\/li>\n<\/ul>\n<p style=\"text-align: justify\"><span style=\"text-decoration: underline\">Nota :<\/span> la version 2 ne supportait que le moteur AutoCAD en mode production.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;De fa\u00e7on g\u00e9n\u00e9rale, ces moteurs sont disponibles pour les versions 2018 et 2019 cit\u00e9s plus haut mais aussi pour les futures versions (exception : version 2017 aussi pour AutoCAD).<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Les \u00e9l\u00e9ments d\u2019entr\u00e9e et de sortie sont principalement des fichiers (RVT, JSON\u2026).<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a59200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image005[4]\" border=\"0\" height=\"310\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9ae200d-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image005[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Pour expliquer le concept, Augusto, propose un premier exemple qui permet de mettre \u00e0 jour les param\u00e8tres d\u2019un objet, d\u2019un fichier stock\u00e9 dans le cloud pour le retourner dans le m\u00eame format.<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9b2200d-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image007[4]\" border=\"0\" height=\"257\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9b6200d-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image007[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;L\u2019exemple est disponible <a href=\"https:\/\/learnforge.autodesk.io\/#\/tutorials\/modifymodels\">ici<\/a>.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Vous trouvez ci-dessous quelques d\u00e9finitions importantes de la technologie Design Automation.<\/p>\n<p style=\"text-align: justify\"><strong><u>AppBundle<\/u><\/strong><u> :<\/u> contient le code (dll) qui va \u00eatre utilis\u00e9 par Design Automation, il s\u2019agit en fait des plugins web des quatre applications. Le langage de d\u00e9veloppement de ces plugins d\u00e9pend des applications mais on retrouve g\u00e9n\u00e9ralement ces langages de programmation :<\/p>\n<ul>\n<li>C#<\/li>\n<li>C++<\/li>\n<li>.NET<\/li>\n<\/ul>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a5d200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image009[4]\" border=\"0\" height=\"168\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9ba200d-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image009[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\"><strong><u>Activity<\/u><\/strong><u> : <\/u>d\u00e9finit comment le code doit \u00eatre ex\u00e9cut\u00e9.<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a64200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image011[4]\" border=\"0\" height=\"254\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a68200c-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image011[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\"><strong><u>Workitem<\/u><\/strong><u> : <\/u>c\u2019est l\u2019ex\u00e9cution du process (AppBundle + Activity).<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9c2200d-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image013[4]\" border=\"0\" height=\"278\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742cc200b-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image013[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\"><strong><u>2- Gestion des fichiers :<\/u><\/strong><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Comme nous l\u2019avons vu dans le chapitre pr\u00e9c\u00e9dent, dans le processus de Design Automation, les fichiers doivent disposer d\u2019un espace cloud prot\u00e9g\u00e9 avec les droits d\u2019accessibilit\u00e9 pour effectuer des op\u00e9rations.<\/p>\n<p style=\"text-align: justify\">Ci-dessous vous trouverez de nombreux espaces de stockage cloud compatibles avec la solution :<\/p>\n<ul>\n<li>Autodesk BIM 360<\/li>\n<li>One Drive<\/li>\n<li>Box<\/li>\n<li>DropBox<\/li>\n<li>Google Drive<\/li>\n<\/ul>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a6d200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image015[4]\" border=\"0\" height=\"360\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a71200c-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image015[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Comme vous pouvez le supposer, les formats de fichiers pris en charge par Design Automation sont ceux qui sont pris en charge par les diff\u00e9rents moteurs (DWG, RVT, IPT, MAX), pour le moment le format IFC est \u00e0 l\u2019\u00e9tude.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Pour illustrer cette partie, Augusto, propose un deuxi\u00e8me exemple qui permet \u00e0 partir d\u2019Autodesk BIM 360 Docs d\u2019upgrader des fichiers Autodesk Revit de la version 2018 en version 2019.<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a76200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image017[4]\" border=\"0\" height=\"220\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742d7200b-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image017[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\"><u>Nota :<\/u> cette fonctionnalit\u00e9 ci-dessus a \u00e9t\u00e9 introduite lors de la sortie de la version Autodesk Revit 2019.2 (voir <a href=\"https:\/\/villagebim.typepad.com\/villagebim\/2019\/01\/nouveautes-autodesk-revit-20192.html\">ici<\/a> point n\u00b03).<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;L\u2019exemple et le code sont disponible <a href=\"https:\/\/github.com\/Autodesk-Forge\/design.automation-nodejs-revit.file.upgrader\">ici<\/a>.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Ensuite, pour lancer la proc\u00e9dure de traitement, Design Automation utilise des \u00ab <em>Webhooks <\/em>\u00bb, qui lui notifie qu\u2019un \u00e9v\u00e9nement a eu lieu ; comme par exemple la d\u00e9pose d\u2019un fichier dans un espace du cloud.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Pour le troisi\u00e8me exemple, Augusto, nous montre comment les \u00e9v\u00e8nements sont d\u00e9clench\u00e9s par la d\u00e9pose de fichiers dans l\u2019espace de stockage BIM 360 Docs :<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9c9200d-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image019[4]\" border=\"0\" height=\"212\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a7c200c-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image019[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Soit le process illustr\u00e9 ci-dessous :<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a80200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image021[4]\" border=\"0\" height=\"257\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742e1200b-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image021[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;L\u2019exemple et le code sont disponibles <a href=\"https:\/\/github.com\/Autodesk-Forge\/design.automation-csharp-revit.check.issues\">ici<\/a>.<\/p>\n<p style=\"text-align: justify\"><u>Nota important :<\/u> c\u2019est un travail s\u00e9quentiel, cela veut dire que l\u2019on ne peut pas modifier le fichier origine tant qu\u2019il n\u2019a pas \u00e9t\u00e9 trait\u00e9 par Design Automation en batch.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Dans un quatri\u00e8me exemple, Augusto, nous pr\u00e9sente un workflow plus complexe en utilisant deux moteurs pour effectuer la conversion d\u2019un fichier Inventor en un fichier Revit. Une fois le fichier d\u00e9pos\u00e9 sur BIM 360 Docs, le moteur web Inventor transforme le format du fichier en format SAT, puis \u00e0 l\u2019aide du moteur Web de Revit, le SAT est transform\u00e9 en format RFA.<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742e5200b-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image023[4]\" border=\"0\" height=\"219\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a49742e9200b-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image023[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Soit le process illustr\u00e9 ci-dessous :<\/p>\n<p><a href=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a4497a86200c-pi\"><img loading=\"lazy\" decoding=\"async\" alt=\"clip_image025[4]\" border=\"0\" height=\"258\" src=\"https:\/\/villagebim.typepad.com\/.a\/6a015391e15a28970b0240a472a9d0200d-pi\" style=\"background-image: none;margin-left: auto;margin-right: auto\" title=\"clip_image025[4]\" width=\"454\" \/><\/a><\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;L\u2019exemple et le code est disponible <a href=\"https:\/\/github.com\/Autodesk-Forge\/design.automation-csharp-inventor2revit\">ici<\/a>.<\/p>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;A des fins de s\u00e9curit\u00e9, Design Automation fonctionne dans un environnement de type \u00ab sandbox \u00bb.<\/p>\n<p style=\"text-align: justify\"><u>Rappels importants :<\/u><\/p>\n<ul>\n<li>la version V2 de Design Automation est utilisable en production avec le moteur AutoCAD<\/li>\n<li>l\u2019utilisation de version beta v3 de Design Automation est gratuite mais ne peut servir dans le cadre de production<\/li>\n<li>chaque moteur poss\u00e8de des limitations (list\u00e9es pendant la pr\u00e9sentation voir la minute 32)<\/li>\n<li>il existe aussi certaines limitations en terme de service (list\u00e9es pendant la pr\u00e9sentation voir la minute 37)<\/li>\n<\/ul>\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Je vous conseille de suivre la pr\u00e9sentation de Gustavo car il y a plein de petits d\u00e9tails et surtout, vous b\u00e9n\u00e9ficierez des r\u00e9ponses aux questions pos\u00e9es \u00e0 cette occasion.<\/p>\n<p class=\"asset-video\" style=\"text-align: center\">\n<p style=\"text-align: justify\">&#160;&#160;&#160;&#160;Pour ceux qui veulent aller plus loin, vous trouverez <a href=\"https:\/\/forge.autodesk.com\/api\/design-automation-cover-page\/\">ici<\/a> la documentation de Design Automation, <a href=\"https:\/\/github.com\/Autodesk-forge\">ici<\/a> des exemples issus du site <a href=\"https:\/\/github.com\/\">GITHUB<\/a> bien connu des d\u00e9veloppeurs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&#160;&#160;&#160;&#160;En d\u00e9but d\u2019ann\u00e9e, je vous annon\u00e7ais la naissance de la technologie Design Automation for Revit , une des nombreuses annonces d\u2019Autodesk Universit\u00e9 2018. Dans mon article, vous trouverez toutes les explications concernant les concepts et utilisations. &#160;&#160;&#160;&#160;Depuis, cette technologie continue \u00e0 \u00e9voluer et notamment, elle vient de faire peau neuve avec la sortie de la [&hellip;]<\/p>\n","protected":false},"author":13092,"featured_media":2472,"menu_order":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[17],"tags":[20,452,44,81],"class_list":["post-301","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-nouveautes","tag-autodesk","tag-autodesk-forge","tag-bim","tag-design-automation","dhig-theme--light"],"acf":[],"_links":{"self":[{"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/posts\/301","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/users\/13092"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/comments?post=301"}],"version-history":[{"count":0,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/posts\/301\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/media\/2472"}],"wp:attachment":[{"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/media?parent=301"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/categories?post=301"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.autodesk.com\/villagebim\/wp-json\/wp\/v2\/tags?post=301"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}