Dyno is

Organising, deploying and running Dynamo workspaces tool for Autodesk Revit


Download latest beta version 0.4.0

And some details

Dyno is equally good for work with Dynamo algorythmic architecture workspaces, various automatisation and extending Revit possibilities.
Dyno provides versatile and simple possibilities for making work with Dynamo workspaces faster.

Organise and group

Organise Dynamo workspaces and place them on server or any local folder

Make presets for
workspaces

Any workspace may have several initial node values (presets) for different using cases

Run in one click

Just double click on preset line in Dyno browser and it will be evaluated without opening Dynamo main window

Watch results

Dyno shows end and/or intermediate evaluation results from "Watch" nodes

Stay tuning

Dyno is in development stage. There will be many cool new features in future!
If you have any questions or proposals feel free to send emails to author's address in the footer.

1: Installing and preparing


To begin

Click the big logo on the top and watch the video how Dyno works!

Requirements

Dyno works only with Revit 2016 and 2017 all editions.

Current version of Dyno has been tested with Dynamo stable version 1.0.0

Work with other versions is not guaranted!

Downloading and installation

Launch the installer and Dyno will automatically be installed and integrated in all versions of Revit.

Launching Revit and Dyno browser

Launch Revit and you will see the additional Dyno browser window with content of storage folder.

Browser can be turned on and turned off in "Visual Programming" tab in tools ribbon.

Arranging Dynamo workspaces

Sample storage folder with Dynamo sample workspace and their presets is installed together with the program.

The default workspace storage is located in Windows user folder /AppData/Roaming/Dyno/SampleWorkspaces/

The test Dynamo project and test preset file are located in the storage folder.

Configuration file and storage location

There is program settings file in Dyno.cfg in the folder /AppData/Roaming/Dyno/

Also you can set Dyno parameters from "Settings" window. "Settings..." option is located in Dyno browser window context menu.

You can use parameter "workspacesStorage" in config file or "Settings" window to make different folder location which will be Dyno workspace storage.

You can also move files with examples to the new folder.

2: Using


Storage structure

All workspaces in the storage must be organised in folders. There must be at least one folder.

For example:

[SampleWorkspaces] //this is storage folder
    [Test]
    [Grids Renumbering]
    [Rooms Сalculating]
    [Adaptive Components Generating]

Preset files

Dynamo workspaces with .dyn extension and preset files with .dpr extension are in subfolders.

Each preset file is made for individual Dynamo workspace and must have the same file name. The can be several presets inside for one workspace.

Each preset sets some group of initial node values of workspace.

For instance, test examples which are located in the storage in subfolder "Test" are installed together with the program:

[SampleWorkspaces] //this is storage folder
    [Test]
        test.dyn //this is test Dynamo workspace
        test.dpr //this is preset file for it


3: Presets


Making presets

Preset file is a simple text file with JSON format data.

It doesn't have to exist. If it doesn't, Dynamo workspace will be launched with default node values from Dyno browser.

The example of node preset syntax with some types of initial node values:

{
    "hideOriginal" : true,
        "presets" : {
            "Test Preset 1":{
             "useSelected":"Select Elements",
             "forceReopen":false,
             "Select":{"type":"element", "mode":"one"},
             "Number":4.55,
             "Integer Slider":15.5,
             "String":"hello!",
             "Boolean":false
        }
    }
}

Preset file structure

File is the hierarchy of objects.

  • Root level:
    • hideOriginal (true/false) - whether to hide workspace line from Dynamo browser leaving only preset lines
    • presets (group) - group of presets for particular Dynamo workspace
  • Group preset level:
    • (group) - group of properties of particular preset
  • Preset level:
    • useSelected (node name) - turns on mode when Dyno uses current selected objects in active view and sends them to "Select Model Element" node before starting workspace.
    • forceReopen (true/false) - turns on or off mode when Dynamo workspace is always reopened before evaluating. Reopen process needs some more time but it may be important for right evaluating some scripts. ATTENTION! In previous Dyno versions script was always reopened before evaluating but now you should turn on this option explicitly!
    • (different data format) - the initial settings of node with this name in Dynamo workspace before its execution

4: Nodes


Description of initial node values

Nodes in preset can be described short or extended way.

Short means writing the node value right after its name.

For example:

"Some number node":4.55,
"Some string node":"hello!",
"Some boolean node":true

Extended means writing a few node parameters at the same time:

"Select":{"type":"element", "mode":"one"},
"Boolean Fast":
    {"fastMode":true, "value":true},
"Number Extended":
    {"value":4.55, "desc":"mall desc"}

There are some paraters that each node has:

  • type (node type) - shows node type. Optional for main nodes!
  • value (node value) - shows node value. Required for main nodes!
  • desc (line) - node desription. Is shown in node value change window and tooltip in Dyno browser.

Supported nodes

Such types of nodes are supported at the moment:

  • Number, Integer Slider, Double Slider - any number

    "Number": 5.81,
    "Number Extended": {"value":4}
    
  • String - any text line

    "String": "hello!",
    "String Extended":
        {"value":"Hi!", "desc":"small desc"}
    
  • Boolean - true/false

    • fastMode (true/false) - turns on or turns off mode value fast switching in one click.
    • trueText (line) - sets the text for true value
    • falseText (line) - sets the text for false value\

      "Boolean":false,
      "Boolean Fast":
          {"fastMode":true, "value":true}
      
  • Select Model Element,Select Model Elements - elements selection

    • mode (selection type) - type of object selection: one - one object, many - group of objects, rectangle - group of objects by rectangular selection.

      "Select Element":{"type":"element", "mode":"one"}
      
  • File Path, Directory Path - file or directory selection

    • mode (selection type) - file or directory.
    • value (string) - initial path for dialog window.
    • filter (files filter) - file description and extension mask list separated by vertical lines (for example, "txt files (.txt) | *.txt | All files (.) | *.").
    • filterIndex (integer) - selected default mask. it starts from number 1.

      "File Path":{"type":"path", "mode":"file", "value":"c://", "filter":"txt files (*.txt) | *.txt | All files (*.*) | *.*", "filterIndex":2 }
      

Values list in nodes

Dyno supports values list definition for nodes. You can use this list for selecting some value for node through Dyno changing node parameter window.

For defining values list you should use values parameter:

values (values array) - values list for node in square brackets.

  "AxizList" : { "value": "X-", "values": ["X+","X-","Y+","Y-","Z+","Z-"] }


5: Buttons


Tabs and Buttons on ribbon

Dyno gives you the opportunity of making your own tabs in Revit tools ribbon and putting buttons corresponding to presets there.

It allows you to structure presets in convenient way, organize the workspace and launch presets quickly.

Configuring of tabs and buttons on tools ribbon

There’s a special file buttons.txt to configure buttons on the ribbon. It must be located in the root of storage folder. It allows to associate the set of buttons to the storage and move them together.

If the file doesn’t exist, create it.

It is a usual text file with settings in JSON format.

The example of button configuration file syntax:

{
    "Tab name 1"  : ["Preset 1", "Preset 2"],
    "Tab name 2"  : ["Preset 3", "Preset 4"]
 }

Each button automatically generates icon for itself looking like symbol in circle.

The color of the circle depends on the group which the preset belongs to. All buttons of one group go together in the tools ribbon.

For more detailed information watch the video about placing the buttons.

Feel free to contact

Alexey Lobanov