Dernières actualités
Unreal Engine Path Tracer : 5 étapes pour le rendu intérieurCréer et modifier des volumes et des meshes avec Modeling Mode dans Unreal EngineGuide Python 3 pour Grasshopper : accès aux données, types et sortiesCréer une présentation avec des scènes SketchUp et exporter une animationDéplier les UV avec l’UV Editor d’Unreal Engine : guide pratique pas à pasUtiliser l’API Gemini avec un client compatible OpenAI : guide Python et JavaScriptTrouver et corriger les géométries défectueuses dans Rhino 8 : guide pratiqueConfigurer Unreal Engine Pixel Streaming : diffuser un projet dans le navigateurPlacer des éléments architecturaux répétitifs avec Geometry Nodes dans BlenderGuide Rhino 8 : modifier un modèle architectural avec la sélection, History et les blocs
TutorielsSketchUp

Débuter le développement d’extensions avec l’API Ruby de SketchUp : guide pas à pas

L’API Ruby de SketchUp permet d’interagir avec les modèles et l’application au moyen d’extensions exécutées dans SketchUp. Ce guide présente les prérequis, les ressources de développement et les options de test.

Un bureau épuré dans un studio de design, avec un modèle d’intérieur architectural à l’écranImage IA
Image d’illustration générée par IA.Image : 3dsınıfı / FCA AI

En bref

  1. L’API Ruby de SketchUp ne fonctionne pas de manière autonome : elle doit être utilisée depuis l’application SketchUp.
  2. Les interactions avec l’API doivent avoir lieu sur le thread principal afin d’éviter les comportements inattendus et l’instabilité.
  3. TestUp propose des tests basés sur Minitest, exécutés dans SketchUp, ainsi qu’une interface graphique pour les gérer.
  4. Depuis SketchUp 2018, l’API Ruby pour LayOut permet de créer et de modifier des documents LayOut.

Ce que vous allez apprendre dans ce guide

L’API Ruby de SketchUp est une interface permettant d’interagir avec les modèles SketchUp et avec l’application. Selon la documentation officielle de SketchUp, l’API s’utilise dans l’application SketchUp et ne constitue pas un outil autonome. Pour commencer à développer, il faut donc d’abord déterminer comment transformer le travail à automatiser en une extension pour SketchUp.

Ce guide porte sur la découverte des limites de l’API, le choix des ressources officielles adaptées, la préparation de l’IDE et du débogage, puis la mise en place des tests. Les sources ne détaillant ni la compatibilité de l’API avec une version précise de SketchUp ni les étapes d’installation, aucune version ou aucun chemin de menu n’est supposé ici.

Prérequis et préparation

  • SketchUp : l’API Ruby fonctionne dans SketchUp et ne peut pas être utilisée seule. L’application SketchUp est donc nécessaire pour développer et faire des essais.

  • Connaissances de Ruby : les sources décrivent l’API comme reposant sur Ruby. Aucun niveau avancé en Ruby n’est indiqué comme prérequis, mais le code de l’extension sera écrit en Ruby.

  • Ressources pour les développeurs : la documentation officielle de l’API Ruby de SketchUp, la Ruby API Overview et le SketchUp Developer Center figurent parmi les ressources de départ.

  • IDE et débogage : SketchUp fournit une interface de débogage utilisable avec les IDE et éditeurs compatibles avec le protocole Ruby Debug. Des exemples de configuration sont proposés pour RubyMine, ainsi qu’un exemple de projet pour VSCode.

  • Tests : il peut être difficile de tester du code exécuté dans SketchUp à l’aide des flux de test standard conçus pour une console Ruby en dehors de SketchUp. TestUp fournit une solution basée sur Minitest et une interface graphique pour gérer les tests.

Les sources ne précisent ni les coûts, ni les exigences de compte, ni un tableau de compatibilité couvrant toutes les versions de SketchUp. Avant de lancer un projet, il convient donc de consulter également la documentation officielle de l’API et les exemples correspondant à la version de SketchUp ciblée.

Étapes de développement avec l’API Ruby de SketchUp

1. Définissez le travail à automatiser

Commencez par déterminer quelle tâche répétitive l’extension doit faciliter. Le centre des développeurs de SketchUp indique que les extensions peuvent automatiser des workflows et s’intégrer à des données externes. C’est un bon point de départ pour définir le périmètre du projet ; toutefois, les méthodes de l’API permettant d’effectuer l’opération prévue doivent être vérifiées dans la documentation correspondante.

Au début, limiter le périmètre aide à déterminer plus facilement les données que l’extension doit recevoir et le résultat qu’elle doit fournir à l’utilisateur. Il s’agit d’une recommandation de planification, et non d’une fonctionnalité précise de l’API ou d’une étape de menu dans SketchUp.

2. Appuyez-vous sur la présentation officielle et les exemples

La Ruby API Overview de la documentation de l’API Ruby de SketchUp est un point de départ essentiel. La documentation officielle propose également des liens vers des exemples et des tutoriels qui présentent des scénarios et des concepts courants. Pour votre première application, étudiez ces exemples et sélectionnez ceux qui correspondent à l’objectif de l’extension ; plutôt que de supposer l’existence d’une classe, d’une méthode ou d’un comportement qui n’y figure pas, vérifiez sa description.

Le SketchUp Developer Center rassemble également des ressources pour débuter, des exemples d’extensions et des ressources consacrées à l’API. Ces contenus peuvent aider à comprendre comment une extension apporte de nouveaux outils et de nouvelles fonctions dans SketchUp. Si vous souhaitez partager votre extension, le Developer Center mentionne également la possibilité de la publier sur Extension Warehouse.

3. Préparez votre IDE pour l’API

Les stubs de l’API Ruby sont fournis pour aider l’environnement de développement à reconnaître l’API SketchUp. Les ressources officielles comprennent des instructions de configuration de projet pour RubyMine et un exemple de projet pour VSCode. Choisissez l’exemple adapté à votre IDE et suivez les étapes de configuration documentées.

L’interface SketchUp Ruby Debugger peut être utilisée pour le débogage. Elle est conçue pour fonctionner avec les fonctions de débogage des éditeurs et des IDE compatibles avec le protocole Ruby Debug. Les sources n’imposent aucun IDE particulier ; vous pouvez donc faire votre choix en fonction des outils déjà utilisés par l’équipe de développement.

4. Exécutez les appels à l’API sur le thread principal

La documentation officielle de l’API avertit que toutes les interactions avec l’API Ruby doivent être exécutées sur le thread principal. Dans le cas contraire, des comportements inattendus et une instabilité de l’application peuvent survenir. Tenez compte de cette exigence dès la conception de l’extension ; notamment si vous envisagez de répartir le workflow en plusieurs parties, vérifiez dans la documentation officielle comment exécuter les opérations concernées.

Cet avertissement n’est pas un détail à vérifier uniquement avant la publication : il doit faire partie du plan de développement et de test. Même si l’extension produit le résultat attendu, il ne faut pas négliger l’exigence du thread principal.

5. Exécutez les tests dans SketchUp

La source officielle indique que des tests Ruby exécutés en dehors de SketchUp peuvent ne pas suffire pour vérifier du code qui doit s’exécuter dans l’application. TestUp répond à ce besoin avec une solution basée sur Minitest et une interface graphique pour gérer les tests. Créez des scénarios permettant de vérifier les comportements visés par l’extension et évaluez-les dans les conditions d’utilisation de SketchUp.

Les sources ne fournissent pas d’exemples détaillés expliquant comment rédiger chaque type de test avec TestUp. Pour mettre en place l’infrastructure de test, consultez donc les explications du dépôt officiel de l’outil ainsi que les tutoriels sur l’API. Cette approche évite de supposer une syntaxe de test ou une étape d’installation automatique qui ne serait pas documentée.

6. Vérifiez le périmètre si la prise en charge de LayOut est nécessaire

Depuis SketchUp 2018, l’API Ruby permet également de créer et de modifier des documents LayOut. Il est indiqué que l’API Ruby pour LayOut, elle aussi, ne peut être utilisée que depuis SketchUp. Si l’extension doit intervenir sur des documents LayOut, traitez cette fonction comme un besoin distinct et consultez la documentation LayOut API Overview. Comme les sources ne donnent pas davantage de détails sur la compatibilité des versions ou les étapes d’utilisation, il convient de consulter la documentation officielle correspondante.

Erreurs fréquentes

  • Essayer d’exécuter l’API de manière autonome : l’API Ruby n’est pas un outil indépendant pouvant fonctionner sans SketchUp.

  • Négliger l’avertissement sur le thread principal : les interactions avec l’API doivent s’effectuer sur le thread principal ; tout autre comportement peut rendre l’application instable.

  • Considérer les tests hors de SketchUp comme suffisants : pour du code exécuté dans SketchUp, envisagez des solutions de test dans l’application comme TestUp.

  • Supposer des détails non documentés : vérifiez les informations de version, de méthode et de compatibilité dans la documentation officielle de l’API.

  • Faire l’impasse sur la configuration de l’IDE : les stubs de l’API, les exemples pour les IDE et les guides de débogage sont disponibles pour préparer l’environnement de développement.

Étapes suivantes

Une fois la première extension terminée, envisagez de la publier si son usage le justifie. Le SketchUp Developer Center indique que les extensions peuvent être partagées sur Extension Warehouse. Si vous prévoyez une distribution en dehors d’Extension Warehouse, le centre des développeurs renvoie également vers le processus de signature numérique et de certification de sécurité.

Les ressources officielles proposent aussi des exemples d’extensions Ruby en C pour les fonctions plus complexes. Elles sont présentées comme une option pour des fonctionnalités plus avancées et d’éventuelles améliorations des performances, mais ne sont pas indiquées comme nécessaires pour tous les projets. Définir d’abord les limites d’une solution reposant sur l’API Ruby, puis consulter les exemples correspondants, permet de suivre un processus de développement mieux maîtrisé.

Sources et licence

Ce guide a été adapté en turc à partir de la documentation officielle de l’API Ruby de SketchUp et des ressources pour développeurs du SketchUp Developer Center. Dans les notices des sources, les deux pages sont indiquées comme « libres » ; aucune licence Creative Commons particulière n’est précisée.

Sources

2 sources
R
ruby.sketchup.comruby.sketchup.com
Résumé
D
developer.sketchup.comdeveloper.sketchup.com
Résumé

Les textes sources ne sont pas republiés ; les courtes citations sont signalées, le reste est notre propre résumé et commentaire.

L’avis de 3dsınıfı
3dL’analyse de la rédaction

Pour les cabinets d’architecture et d’architecture intérieure en Turquie qui utilisent SketchUp, l’API Ruby peut permettre de transformer des tâches de modélisation répétitives ou des processus faisant appel à des données externes en extensions. Lorsque les mêmes étapes sont répétées fréquemment au sein d’une équipe, même une automatisation de portée limitée peut aider à structurer le workflow.

Pour évaluer le retour sur investissement, il faut prendre en compte non seulement le temps de développement, mais aussi la compatibilité de l’extension avec la version de SketchUp ciblée, ainsi que les besoins de test et de maintenance. Les sources ne précisent ni le coût ni les exigences matérielles ; il serait donc hasardeux de supposer un avantage en matière de coûts ou de performances. La règle du thread principal et la nécessité de tester dans l’application doivent notamment être vérifiées avant la mise en production.

Questions fréquentes

L’API Ruby de SketchUp peut-elle fonctionner de manière autonome ?

Non. Selon la documentation officielle, l’API Ruby de SketchUp s’utilise dans l’application SketchUp et ne fonctionne pas de manière autonome.

Peut-on modifier des documents LayOut avec l’API Ruby de SketchUp ?

Oui. Selon la source, il est possible de créer et de modifier des documents LayOut depuis SketchUp 2018. L’API Ruby pour LayOut ne peut elle aussi être utilisée que depuis SketchUp.

Comment tester les extensions Ruby de SketchUp ?

TestUp est une solution basée sur Minitest qui propose une interface graphique pour gérer des tests exécutés dans SketchUp.

Les commentaires et le forum sont en turc.Rejoindre la discussion
+

À lire aussi