Marionette - Networks

46 files

1. Halftone

This is my first marionette and it's based on @Marissa Farrell's image processing!

It takes an image and creates a Halftone object of it with black circles:

IMPROVEMENTS:
Final objective is that I'll add cnc DXF milling information to this marionette so that it can be milled on a CNC machine.
(We've milled Halftone parts in the past using Jason Dorie's Halftone program http://jasondorie.com/page_cnc.html)

Result:

Detail:

Maybe add a line milling. The image below is milled by us in the past with Jason's program.

Be able to change the dimensions of the final halftone image. Now it takes the pixel width and height of the image, but I would like this to be some adjustable parameters. Changing the height and width with Set Height and Set Width has no effect. Somebody has a suggestion on how to do this?

Now the marionette looks at the color of each pixel on a grid with step "Distance between Circle Centers". Related to that color, it creates a circle with according radius on the position of that pixel:

The problem with this method is that that single pixel on the grid has total control on the radius and the one pixel just next to the chosen one has no relevance. A better mechanisme would be that the size of the circle is related to the average color of all the pixels in the area of the square "Distance between Circle Centers"x"Distance between Circle Centers". Anyone with some advice on handeling this? I got some little progress on it:
Here we have 2 lists. One with all the pixels. X,Y coordinates of the pixel, Z is the radius of the circle according to the color. The other list has the X,Y values of the centers of where the final circles have to be placed.

Following this we need to check the distance of all the image points to the center points. If this is smaller than a condition, then that point's radius had to be taken into account for calculating the average radius of that centerpoint. Any one has a quick hint on how to create this in marionette?

(0 reviews)

Updated

2. Apartment Area

This nice script summarize all Space-Areas, which are part of the same Appartement Number and shows the result in a symbol based stamp. Alternatively you can get apartment. Alternatively we can pull out sum of apartment area with a worksheet. But this Marionette is also a nice method to do this.

Instructions:
1. The Marionette Objects access to the field "11_Room ID" of the space object. Every other field can be used if necessary by editing script
2. with the Marionette PIOs field "Raum ID" you can tell the stamp, which apartment should be displayed.

Apartment Area v1.2.1 v2019.vwx

(0 reviews)

Updated

3. Image Processing

This network will read the data in an image existing in your file, for example, the color of each of the pixels, and create rectangles/extrusions with the same fill color. The extrusions are created at a height correlating to their brightness. The data extracted from the image could be used in many additional ways.

(1 review)

Updated

4. SpacesfromList.vwx

This Marionette Script creates multiple space objects from worksheet data.
A very nice and time saving Marionette script to automate a routine peace of work.

Please consider, that the the script takes the area column and calculate the square with that. If you have a language settings with comma instead of points for decimal seperator, the calculation will fail. Use points as decimal character or eliminate decimal places in your list

(1 review)

Updated

5. Class Legend Attributes

This Network ist not very flexible (world based values, just one row) but still useful.
You can insert and and ungroup for individual layout etc.

(0 reviews)

Updated

6. Rectangle Packing

The heart of this Marionette example is the RectPack node. A node with over 2600 lines of code!
It supports dozens of packing algorithm to pack rectangles on another rectangular area in a space and time-saving way.
The right combination of packing and bin algo gives the ability to pack rectangles in a way you want to have them on your machines (as close as possible, always cut complete board, less cuts etc.)

Actually not even myself know, which packing algo ist right for which use case.
Also for professional use case, usually there is a machine dedicated software, which packs the port in a way which match best for the machine.
So I see the main use case to pack parts on a board for milling them on a cnc-machine as example for model-making. Workflows which uses a guillotine-workflow (always cut the whole board) often have special requirements which maybe could be reached with the choice of packing algorithm or maybe can not.

The Marionette Example based on foundational work:
http://www.secnot.com/   Python code for packing algorithm
Jukka Jylang - A Thousand Ways to Pack the Bin - A Practical Approach to Two-Dimensional Rectangle Bin Packing (2010)
Huang, E. Korf - Optimal Rectangle Packing: An Absolute Placement Approach (2013)

General Features:
- Input of basic data like length and width
- object input (node detects if part input are objects and process them like rectangles)
- sort by material
- use a list of stock materials
....

Not all input combinations works at the moment. Recommended to use the existing examples to get correct input values.

(0 reviews)

Updated

7. Area Verification

This tool was
commissioned by ComputerWorks GmbH
edited by: Markus Graf and Pascal Völz
supervised by: Antonio Landsberger

Compatibility: Vectorworks 2019 and higher.

Area Verification is a Marionette tool used to graphicallly and tabularly verify the surface area of spaces/rooms (circle, rectangle, poly line & polygon) in the class "Rooms". To do that the Marionette network divides the areas into calculatable subareas: circles, rectangles, triangles.
The graphical area verification using subareas is often required when applying for permits (building construction, landscaping).

For easier usage a wrapper node is provided.

How to use:
a) Place the geometries (spaces/rooms) in the class "Rooms".
b) Run the wrapper node.
c) Update table.

To do:
- update table when running script
- implement an add-on to turn spaces into polygons (soon)

(0 reviews)

Updated

8. Tiles / Verlegewerkzeug

This tool is available in English ("Tiles") and in German ("Verlegewerkzeug"). The contents are the same only translated.
Dieses Werkzeug ist auf Deutsch ("Verlegewerkzeug") und auf Englisch ("Tiles") verfügbar. Die Inhalte sind die gleichen; nur übersetzt.

Tiles will help you when planning patterns of tiled sections, brick bonds, laying patterns, ceiling or fassade panels and evaluate it through datavisualization and  worksheet.
For extensive information on usage of the tool, please consult the manual.

Das Verlegewerkzeug hilft Ihnen in der Planung von Fliesenspiegeln, Fassadenelementen, Mauerwerksverbänden und der Auswertung als Datenvisualisierung und Tabelle.
Für umfangreiche Informationen über die Bedienung des Werkzeugs, lesen Sie bitte die Anleitung durch.

Created by / erstellt von ComputerWorks GmbH.
Compatibility / Kompatibilität: Vectorworks 2019 +.

(1 review)

Updated

9. Sine Wave

Here are a couple wrappers that output sine and cosine waves. I thought the math enthusiasts might find these useful.

(0 reviews)

Submitted

10. Labyrinth

This script generates labyrinths. Just for fun.

(0 reviews)

Updated

11. Natural color spectrum

In this example you can find a node that returns a spectrum of colors and a Wrapper for creating random 3d Points.
Saturation and Brightness can be changed in the OIP.

Color_Range_Video.mov

(0 reviews)

Updated

12. Component Wall from Surface

Here is a script that converts a NURBS surface to a wall with components that can be exported to IFC. The wall is an Auto Hybrid object made up of 3D Solids that match the thicknesses and attributes of the components of a referenced wall style. CWS_1212_IFC.vwx

A couple caveats: Make sure that wall style names do not  have a single or double quotation symbol in the name - it will get misinterpreted by the String Node. Also, if your base surface is an Interpolated Surface, use the tool in the 3D Power Pack - Rebuild NURBS... - to convert it to a standard NURBS surface.

(0 reviews)

Submitted

13. Colorize Subtext within a Text Object

In this Example there are used some custom Nodes:

1. "GetSubstring" --> Search for a string inside another string and returns Position and count. This will be necessary to set them to a Text Style Resource.
2. "GetInsideChar" --> Returns strings which are inside specified characters (normally quote or double quote)
3. "GetSubstringExcludeQuote" --> Same as the first one, but it to not return text inside quotes
4. "GetNumberFromString" --> Search for Numbers inside a String.
5. "GetNextObj" --> Put This in a Wrapper and it will return the next object after this node. This is a great one!! Can be used also for input geometry inside a script network. Without naming or other smut.

This could be improved by further code (find standalone or text in word, find integer, find float, etc.) But It works for most cases perfectly.

(0 reviews)

Submitted

14. List of Files and Folders in a Directory

This example shows, how to list filenames and foldernames of a folder on your disk.

Contains the following Custom Nodes:
1. "GetActFile" --> The Path of the active Vectorworks document.
2. "ListDir" --> Folder- and Filenames of a directory
3. "GetNextObject" --> Handy to grab objects directly out of the script

short movie documentation:

FileAndFolderList.vwx

(0 reviews)

Submitted

15. Journey Through Marionette - Part 1

Now that graphical scripting is a reality in Vectorworks software, my designing spirit has been fantasizing about many forms and shapes. I’ve been clicking the mouse for over 20 years and feel like our software is like an extension of my drafting board, but I recently learned that Marionette requires a different but exciting approach. Graphical scripting to me is a form of exploration in a foreign language, it satisfies my curiosity and offers instantaneous alternatives.

I’d like to share my experience and discoveries with Marionette and I continue to explore, and hopefully inspire you to give it a try and ultimately share the knowledge with our community.  My first attempts were all 2d based, nothing great, just crawling before walking. Here is a list of files.

MT-01-How to make a line.vwx
MT-02-How to make a circle.vwx
MT-03-How to rotate a rectangle.vwx
MT-04-How to duplicate a line.vwx
MT-05-How to duplicate a rectangle.vwx
MT-06-How to duplicate and rotate a rectangle.vwx
MT-07-How to create four rectangles.vwx
MT-08-How to class objects.vwx
MT-09-How to create spiral with lines.vwx
MT-10-How to duplicate and scale a circle.vwx

(0 reviews)

Submitted

16. Journey Through Marionette - Part 2

Now that graphical scripting is a reality in Vectorworks software, my designing spirit has been fantasizing about many forms and shapes. I’ve been clicking the mouse for over 20 years and feel like our software is like an extension of my drafting board, but I recently learned that Marionette requires a different but exciting approach. Graphical scripting to me is a form of exploration in a foreign language, it satisfies my curiosity and offers instantaneous alternatives.

I’d like to share my experience and discoveries with Marionette and I continue to explore, and hopefully inspire you to give it a try and ultimately share the knowledge with our community.  Part 2:

MT-11-How to rotate multiple rectangles.vwx
MT-12-Kaleidoscope.vwx
MT-13-How to create a 2D paraboloid.vwx
MT-14-How to create a double 2D paraboloid.vwx
MT-15-How to sequence locus points.vwx
MT-17-How to sequence two circles.vwx
MT-18-How to sequence two circles and linestyle.vwx
MT-19-How to sequence regular polygon.vwx
MT-20-How to create spiral with arcs.vwx

(0 reviews)

Submitted

17. Journey Through Marionette - Part 3

Now that graphical scripting is a reality in Vectorworks software, my designing spirit has been fantasizing about many forms and shapes. I’ve been clicking the mouse for over 20 years and feel like our software is like an extension of my drafting board, but I recently learned that Marionette requires a different but exciting approach. Graphical scripting to me is a form of exploration in a foreign language, it satisfies my curiosity and offers instantaneous alternatives.

I’d like to share my experience and discoveries with Marionette and I continue to explore, and hopefully inspire you to give it a try and ultimately share the knowledge with our community.  Part 3:

MT-21-How to create a grid of objects.vwx
MT-22-How to duplicate array tiles.vwx
MT-23-How to create a grid and intersect fixed[1].vwx
MT-24-How to use get list length.vwx
WT-25-How to create spiral with arcs and clipping mask.vwx
WT-26-How to make an object and a copy.vwx
WT-27-How to duplicate proportionaly.vwx
WT-28-How to create a cube.vwx
WT-29-How to grow volumes by remap domain.vwx
WT-30-How to clip two squares.vwx

(0 reviews)

Submitted

18. Introduction to Marionette - Part 1- Nodes and Connections

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

19. Introduction to Marionette - Part 2 - Math and Wrappers

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

20. Introduction to Marionette - Part 3 - Creating Multiple Objects

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

21. Introduction to Marionette - Part 4 - Object Nodes

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

22. Introduction to Marionette - Part 5 - Manipulating Geometry

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

23. Introduction to Marionette - Part 6 - Modifying Existing Networks

Marionette is a brand new design workflow tool for Vectorworks. It is the first and only cross-platform graphical scripting (or “visual programming”) environment available in a BIM authoring software for the AEC, Entertainment and Landscape industries. It enables a user with few or no programming knowledge and skills to create custom application algorithms to explore designs, build interactive objects and streamline complex workflows that may also include functions of the operating system and internet.

Graphical scripting will play a significant role in the workflows of the future. These tools, when built into an intelligent information modeling application such as Vectorworks software, present designers with unlimited opportunities to generate, define, build, and explore form and function throughout the design process.

This series of video tutorials will introduce you to the basics of working with Marionette and walk you through the basics.

(0 reviews)

Updated

24. Symbols in Rows

Places a Marionette object, which contains symbols from a specific symbol folder. Offset and rows, can be defined. Handy for a quick and printable preview of symbols in a specific folder.

(2 reviews)

Updated

25. Hexagon Grid / Honeycombs

Here is a wrapper for creating honeycombs.

(0 reviews)

Updated