GC copycat proliferation?

With the latest anouncements by Siemens and Nemetchek, I think just about all the major CAD apps have an algorithmic / visual scripting addon.

  1. Rhino: Grasshopper
  2. ACAD: DesignScript, Dynamo
  3. Revit: Dynamo, Grasshopper
  4. Vectorworks: Marionette
  5. Catia: xGenerative Design
  6. Sketchup: VizPro
  7. BricsCAD: Grasshopper
  8. ArchiCAD: Grasshopper / Parem-o
  9. Allplan: Visual Scripting
  10. Siemens NX: Algorithmic Modeling
  11. BlenderBIM: Sverchok

Makes me wonder if the old BIM v. CAD comparisons will start to fade away as more and more CAD apps start exposing their contents to data-centric manipulation via visual scripting interfaces.

Parents
  • HI Dominic,

    Good to see lots of Visual Scripting tools out there. The computational design workflow is getting popular I believe. It would be interesting to see the type of geometry they support and the automation that can be done with the parent application and also the ability of external data manipulation. 

  • It would be interesting to see the type of geometry they support

    This is of course dependent on the base app. In the past, GC's solids has been touted as an advantage over GH, and GC is generally recognised as better than Dynamo when comes to geometry. This seems to be still be case with Dynamo in ACAD. No splines or Nurbs? Also interesting that Dynamic Blocks are on the way. I read somewhere that GC is currently looking to integrate better with Parametric Cells. Future parity?

    and the automation that can be done with the parent application

    Interesting to note that Dynamo integration starts with getting selection nodes in first. These nodes have always been one big advatange of Dynamo on Revit as it allowed Dynamo access and manipulate a lot of the model / drawing elements in a 'BIM' way. Mstn has in the past relied on VBA / COM for this which is not as visible and easy to pick up. I hope that Bentley will take notice here.

    There is mention of Python for GC in future. It might be good to leverage VBA better in GC... which seems to be still going strong and has a built in IDE.

    All that EC Framework schema stuff sound like all anything in Mstn should be 'aligned' for easy access by GC for 'BIM'-like manipulation. OTOH, looking at how long it took to integrate Aecosim, I suspect that most of the verticals are still using COM or do not have a public APIs for their graphic objects or expose their schemas the way some verticals like OpenPlant or Bentley Map do. 

    PokeIt demonstrates that accessing Mstn is scriptable via VBA. What would be great is something equivalent for all the verticals? PokeIT for OBD should be a quick exercise, given TF.COM? This would help a lot of 'power' users get past trying to get their heads around selecting and processing OBD elements. Something that lets even 'average' Revit users look clever... using Dynamo.

    and also the ability of external data manipulation. 

    Not sure what you mean here. Do you mean external data in Excel or an external database? Or something like IFC?

    AFAIK, Dynamo does not have any official nodes for database manipulation. There are some third-party packages. Probably, slower than what GC has..., zero-touch notwithstanding?

    As mentioned, a lot of what is sold as 'BIM' productivity is really just 'bulk-editing' using automation tools like scripting. Parametrics is also sold as a 'BIM' productivity feature as it enables 'bulk' or 'Excel-like' editing. Both have been used to persuade users to jump platforms, dumping 'dumb' CAD for 'smart' BIM.

  • Thanks for sharing this information and the suggestions. 

    Not sure what you mean here. Do you mean external data in Excel or an external database? Or something like IFC?

    I was referring to external databases. Like the way GC supports external databases like Excel, text files, and also other commonly used databases like csv, SQL etc with our Data Importer and Data Exporter node.

    I personally believe this is a powerful GC feature.

    Thanks,

    Anik

  • I have often wondered if all these applications are advancing this scripted approach to geometry whether anyone would claim/push for a 'universal format' for interpoperability sake. kind of like xml or json for data. open, structured, extensible, human readable, etc.

  • xx I think that something like this was put forward as a project for a future version of IFC by AEC3 a while back. Last I heard no one was interested and the project was dropped by bSmart.


    Apparently IFC Design Transfer View was also supposed to support parametrics, but has been put on hold.


    There are many examples of script-based modelers, even for CSG solid modeling, some even have a visual GC-like interface. What is not so common is a script language for applying Geometric Constraints. Apparently also doable, and already used for internal automated testing by LEDAS. Italian academic effort PLASM apparently does scripted constraints but no one seems to be interested in providing one for commercial AEC modeling... so far.


    Maybe GC will step up to the plate and incorporate Constraints into GCScript when it deals with Parametric Solids... in earnest.

  • Dominic.

    Check out this github repository I've recently been told about. 

    https://github.com/edashbolt/generative-components

    Has code for an Item Type and Parametric Cell nodes.

    I've been working to update the code for Item Types in the latest schema for ORD this week, and will submit my code to github soon. 

    Next week I'm going to look at the parametric cells.

    Chris

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri

Reply
  • Dominic.

    Check out this github repository I've recently been told about. 

    https://github.com/edashbolt/generative-components

    Has code for an Item Type and Parametric Cell nodes.

    I've been working to update the code for Item Types in the latest schema for ORD this week, and will submit my code to github soon. 

    Next week I'm going to look at the parametric cells.

    Chris

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri

Children
  • Hello Chris,

    I have updated the code for both OBD update 7(10.07.00.105) & also ORD R3(10.09.00.91). Please let me know if you need that. 

    Regards,
    Alifur

  • Hello Chris,

    Here is the code so that you do not have to do much of work. Hope it helps you. 

    https://communities.bentley.com/cfs-file/__key/communityserver-discussions-components-files/360/ItemTypes_2E00_cs 

    Regards,
    Alifur

  • Alifur.

    I'm trying to use the Parametric GC Node in the github but getting a system com object error any ideas?

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri

  • Hi Chris,

    Could you post a screenshot of the error? Also have you tried debugging the solution to trace the line at which it fails?
    Thanks,

    Ed

  • Hi Ed

    Print Screen below, as you can see it appears to work in the 3D view but the Node is showing a system error

    I'm having issues with my Visual Studios (getting the dll to place in the workspace as part of the debug session) at the moment, but will give it a try again debugging the code today

    Regards

    Chris


    AECOM Roads UK&I Digital Engineering, Design & Solutions Lead | Sector Information Management Lead

    Associate Director – Digital

    OpenRoads Designer 10.12 | MicroStation 2023 | ProjectWise CE 10.3.4 | ContextCapture | ProjectWise PowerShell 2023 | ProjectWise WSG API | Generative Components | OpenBridge Designer 10.12

    Civil 3D 2023 | Dynamo | Navisworks Manage

    PowerShell | Visual Studio | Office 365 | Power Platform | Teams | SharePoint | Visio

    Speckle | BIMVision | Revizto | Solibri