Skip to content

D2P Components streamline parametric modeling in Grasshopper, helping you manage complex data trees, reduce recomputations, and maintain a structured, scalable workflow from concept to fabrication.

License

Notifications You must be signed in to change notification settings

design-to-production/D2P-Components

Repository files navigation

D2P Components

Logo

Ever struggled with structuring a model that is composed of a variety of different geometries and attributes that somehow still belong together ? You usually end up with spaghetti code inside Grasshopper and go for a coffee break when you change an input parameter ?

Then it’s time to consider following a different modelling approach ! We want to share our best practices, acquired in 15 years of daily business and pioneering in defining parametric models with you and are excited about your approaches ! In a nutshell this is what you can expect from D2P Components:

  • Manage complex building components
  • Define your own component types
  • Create instances using your own naming scheme
  • Define properties through geometry
  • Bake components to your Rhino model
  • Build an entire component hierarchy
  • Model parent-child and joint relations

Installation

There are two ways to install the plugin to your Rhino environment. Either by installing an existing release from either food4rhino or the package manager (user scenario) or by cloning this repository to your local machine, compiling it from scratch and making use of the debugging utilities (developer scenario).

PackageManager

You can install the plugin directly inside Rhino by the package server. Search for d2p-components and install the latest version.

Food4Rhino

You can install the plugin via Food4Rhino which is linked to McNeel's public package server https://www.food4rhino.com/en/app/d2p-components

From SourceCode

Please checkout the Getting Involved section and follow the instructions for more informations about how to get started

Usage

  • Step 1 - D2P Components approach a different modelling style and workflow than you might be used to. They are based on specific concepts which are importatnt to understand before working with this plugin. In order to get the basic understanding of the terminology and the concepts behind the code checkout the D2PModellingGuideline
  • Step 2 - Download the Example Files (WIP) and follow them step-by-step.
  • Step 3 - Start with a small (modelling) project and try to implement the core concepts shown in the example files by yourself

Known Issues

  • Whenever you open an existing, previously working GH Definition with D2P Components and find a GHComponent marked in "red" it's likely that the I/O parameter has changed from the last version. This could be the message in the balloon : 1. Solution exception:GetData() can only be called on a parameter with access set to GH_ParamAccess.item For example in Version 1.1.1 there was a fix for "StreamComponentsByType" where the input parameter changed from "list" to "item" which breaks the GHComponent as it's not upgrading automatically. In order to fix it just delete the deprecated component and replace it manually with the new version. We try to avoid introducing these kind of breaking changes though sometimes it's necessary. For future releases there will be potentially an upgrade assistant helping you to automate the migration.

Getting Help

  • Whenever you have questions about the plugin, its usage or conceptual topics you can search in the Discussion forum of this repository. If you don't find an answer or the topic wasn't discussed yet you are welcome to start a new conversation in that forum :)
  • If you want to ask something in private you can send an email with your request to [email protected]

Getting Involved

In order to either get involved into the development of this project or just for the instructions of how to setup the development environment please follow our CONTRIBUTION (WIP) Guideline

About

D2P Components streamline parametric modeling in Grasshopper, helping you manage complex data trees, reduce recomputations, and maintain a structured, scalable workflow from concept to fabrication.

Topics

Resources

License

Stars

Watchers

Forks

Languages