Skip to content

Repository for the Acadia 2024 Workshop: Scripting in Practice - from script to deploy

Notifications You must be signed in to change notification settings

mcneel/acadia_2024_script-to-deploy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cover

Scripting in Practice: from script to deploy

A workshop presented on Monday, November 11, 2024 at Acadia in Calgary, Canada

This workshop will introduce the Code Editor in Rhino 8 - a new framework designed for user-friendly tool development and deployment). Using a real-life industry case study from an architectural practice, we'll guide you through identifying a suite of tools that streamline project deliverables, with a particular focus on documentation and geometry attributes. The goal of the workshop is to equip you with the skills to integrate these tools as a plugin, easily shareable across teams. We will kick off with an overview of the new Code Editor, followed by hands-on development of tools in Python, C#, and Grasshopper definitions. You will learn how to use Script Editor to package these tools into a Rhino toolbar and deploy them as plugins using Rhino’s Package Manager. We will also go through version control system and enabling automated deployments through continuous integration.​​

Workshop Tutors

esther ivana jeffrey eve ehsan luis
Esther Rubio Madroñal (Grimshaw) Ivana Petrusevski (Grimshaw) Jeffrey Moser (Grimshaw) Eve Tobey (Grimshaw) Ehsan Iran-Nejad (McNeel) Luis E. Fraguada (McNeel)

Project

The scripts and definitions in this repository are a collection of tools we've developed to show off the functionality of the new Rhino ScriptEditor. We have used python, csharp, and gh definitons to create the commands.

The toolkit contains the following scripts:

  • WT_CalculateMetrics.gh - This GH definition reads obejcts from the current model, organizes them, calculates certain metrics like GFA, and then populates the object's user strings with these metrics. Finally the objects are updated in the Rhino model.
  • WT_GenerateLayouts.cs - This script generates a layout with two details for each Zone and Plot in the reference 3d model. Some of the functionality of this script is referenced from a library called WT_LayoutTools.cs
  • WT_ExportXLSX.gh - This GH definition exports a csv file with the object user strings from the reference model.
  • WT_PrintLayouts.cs - This script prints all of the existing layouts in the current file to one PDF. Depends on functionality in WT_LayoutTools.cs
  • WT_LayoutTools - A library containing some of the functionality used by the scripts in the toolkit.
  • WT_DeleteAllUserStrings.py - As the name suggests, this script deletes all of the user strings on all of the objects in the current model.
  • WT_DeleteLayouts.py - This script deletes all of the existing layouts in the current model.
  • WT_RemoveObjectDisplayModeOverrides.cs - We found that as we were working on the reference model, objects were accumulating DisplayModeOverrides from the WT_GenerateLayouts script and generating layouts became very slow on Windows. This deletes any Display Mode Overrides from all objects in the current model

Additionally, there are a few other files of interest in the repository:

​​

​​

​​

Ivana Petrusevski]()

About

Repository for the Acadia 2024 Workshop: Scripting in Practice - from script to deploy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published