Jump to content


Vectorworks, Inc Employee
  • Content Count

  • Joined

  • Last visited

Everything posted by sbarrett

  1. The idea of this object is that it is a jumping off point. This was done in response to a user's request and covers the basic specs they were looking for. I am definitely open to improving the object but I also hope people will be inspired to update it themselves!
  2. I see what you mean. I am seeing the same issue when I try to import it into a new file as well. I am filing a bug. -Sarah
  3. Does it only disappear after importing it into your drawing? Can you manipulate it in the original file? Can you tell if all of the "parts" import into your file as well? What happens if you click the Update button in the OIP?
  4. I have uploaded a new version that works in 2021
  5. Version 1.0.0


    This is a path-based Marionette object that creates a stage. This is a little different from the Create Stage... command as it allows you to make the stage from any shape and to choose symbol-based profiles for the frame, bracing and legs. It also uses a leg pocket symbol. You can edit the existing symbols to customize this stage or you can create your own library of symbols to use.
  6. Version 1.0.0


    This is a Marionette object that uses several python libraries - Pillow, NumPy, and SciPy - to create a triangulated panel that takes its colors from the pixels of an image. The color for each triangle is the average RGB value for all the pixels that would fall within that shape if the picture and the panel were aligned. To create this object I used some nodes that @Marissa Farrell created, a couple from this file and one node from this file. As this Marionette object contains external libraries, you may see some prompts to download libraries the first time you make a change. Just click OK when prompted. Unfortunately, this object does not work on PC running Vectorworks 2020. It does however work on a PC running Vectorworks 2021. There are two files in this post, one with just the Marionette object and another that uses the Marionette object in an actual model.
  7. Each part of the scissor lift is a modeled symbol, so those symbols would have to be replaced by ones that are a different size. The way that the script works is that each symbol is named and and each symbol contains a named locus point where the next symbol in the sequence is attached.
  8. @Sebasrougs when you create your list of points to move your duplicates, you need to use the Mix2 node and select the Cross Reference mode in the dropdown. You need to create XYZ coordinates of every possible combination.
  9. Hi @KroVex - The wall height is separate from the story height in Vectorworks. This allows you to draw walls at a specific height that are NOT bound to specific stories, only Layer Wall Heights. If you draw walls that are story-bound, then the walls will adjust with the stories. Since the premise of this script is to create stories so that story-bound wall styles will work, I didn't make any changes to the Layer Wall Height.
  10. What you are talking about is the same idea as this file. This takes loci and nearby text taken from a survey and converts them to the Existing Tree PIO. It could be adapted to the Space object. Because the Space is a path-based object (each Space shape is potentially unique, based on a path), you would have to adjust the script a little.
  11. Most nodes new nodes will work in 2016 because they use pre-existing python functionality, but some nodes have Marionette-specific functionality, such as the Valve node, the Slider node, and the Chart nodes.
  12. Hello, You need to use the node "Get Font ID" between the String node and the iFontID port of the Set Char Properties node. When in doubt, check that the prefixes of the output and input ports match. (They won't always match because of generic prefixes like "item" and "list", but they can be helpful in these situations.)
  13. I am coming in a little late to this conversation but I created a network for Landmark users a while ago that sounds very similar to what you want. Now that you have gotten started, you may not need this, but it might still be a helpful resource.
  14. Once you move the control points of a Marionette object, they will stay that way. What I would recommend is naming the Control Point node so it's values will appear in the OIP of the Marionette object. You can manually reset them there if you need to.
  15. Hi @halfcouple - you are correct in that you have to use a Menu Command to run a network on selected objects, you cannot do it with a regular network or a Marionette object. You can give yourself access to options in a menu command by using the nodes in the User Interaction folder in the Resource Selector. If you replace the regular input nodes with these dialog nodes, when you run the command, dialogs will pop up for each node asking what you want the parameters to be.
  16. Yes, you can use a Control Point 2D node. I have added it to one of your Marionette objects. rectangles with grids.vwx
  17. I have edited the node so that the "result" shows up and the associated data tag is now an output as well. This network will work when running it on a single design layer, but because of how Marionette works (creating groups of objects), placing them on multiple layers at the same time is rather tricky and I don't recommend it. Also, I don't recommend trying to use this with viewports. If you are tagging objects in viewports, I think using the data tag as-is works better than trying to script it. DT_AssociateWithObj.vwx
  18. Hi @Martin Lerch, I tested it and it appears to work great. The issue that you will have is that any geometry created by a Marionette script will be grouped. after the script is run and you ungroup the data tags, they appear to be associated properly with the space. I would recommend having the data tag also be the output of the script, that way you can manipulate it further along in the script (after it has been associated) if you wish.
  19. Version 1.0.0


    This file contains a Marionette network that converts 2D polys into Massing Models. It reads the Record Format info attached to the poly and uses that information to create the Massing Model. It also transfers all attached Records to the Massing Model. This network is useful for converting shapefile data into Massing Models. To use the network, select the wrapper and make sure that all the fields in the Object Info palette correspond correctly to the objects that you want to convert. All of the info that you want to use to create the Massing Model must be in a single record, but all attached records will be transferred over by the script. Also included in the file is a worksheet that allows you to calculate Floor Usage Data for each floor of a multistory building. If you have one type of usage on the first floor, and a different type of usage on the upper floors, you can calculate that in the worksheet. (If you have more than two types of usage, it can only calculate the first two types.) To change the usage type in the worksheet, just type the name of the usage type, like "Retail" or "Residential" into the top row of one of the Area by Usage Type Columns. The lower rows will adjust appropriately.
  20. You can do this by choosing "Select Eligible Objects Mode" in the Mode bar of the Data Tag tool. If your tag is set to read a field from the Space object, you can hover over a Space with that Data Tag style selected and all spaces will highlight red. This works with any object type that the Data Tag is looking for. I took a screenshot of it using Doors and a Door-specific tag.
  21. Hello Martin, There are no default nodes, but there are a few scripting calls that have been added to Vectorscript and Python in 2019. You can find them here. https://developer.vectorworks.net/index.php/VS:Function_Reference#Data_Tag_Interface_Library In order to place a data tag, you could use the Symbol node and then I imagine you could create a custom node that uses the first command, https://developer.vectorworks.net/index.php/VS:DT_AssociateWithObj, to associate it with a Space. I think this would work if you are placing these Data Tags in design layers, but if you are trying to place them in the Annotation Space of a viewport, I would recommend adding Data Tags manually. There is a way to tag all relevant objects at once, so I imagine a script wouldn't bring much added efficiency.
  22. Yes, there is a node called convert to Poly Group. Here is a quick example of how to use it.TextToPoly.vwx TextToPoly.vwx
  23. Hey @Todd Drucker - I am excited to see you have started with Marionette! The first thing to remember though, is although Marionette is the same type of tool as Grasshopper, it's based off of Vectorworks' functionality and just as Grasshopper is based off of Rhino's functionality. Marionette doesn't really have an equivalent to "Morph" - some people have created arrays along surfaces with it, but they usually have to do it mathematically. There is however a command in the model menu called "Create Surface Array" that pretty much does this. It take a 2D or 3D object and arrays it across a NURBS surface, So I think you might have better luck if you model the column using curves and a loft surface (you can create this with Marionette if you like or just model it manually), the modeled pattern, and then use the Surface Array command. Tip, if you convert the 3D object to a mesh, it will morph around the Surface Array.
  24. I think you could try using a Mix2 node and choose the Cross Reference mode in the Object Info palette of the node. The important thing for list handling in this instance is that there are the same number of values flowing to each input. The Mix 2 node allows you to repeat values in the way that you want. Mix2 Cross Reference Example.vwx


7150 Riverwood Drive, Columbia, Maryland 21046, USA   |   Contact Us:   410-290-5114


© 2018 Vectorworks, Inc. All Rights Reserved. Vectorworks, Inc. is part of the Nemetschek Group.

  • Create New...