Jump to content

sbarrett

Vectorworks, Inc Employee
  • Content Count

    266
  • Joined

  • Last visited

Everything posted by sbarrett

  1. I am not sure what that error means, but I added the 2019 version to the post itself - maybe you will be able to download it from there.
  2. Version 1.0.0

    103 downloads

    Creating stories, levels, and layers can be a tedious process, especially for tall, multistory projects. This wrapper allows you to automate that process based on an overall building height, typical floor heights, and default levels. You can create up to 4 Layer Levels and 2 Layerless Levels. To create fewer Levels, leave any of the Layer 1, Layer 2, Layer 3, Layer 4, Layerless Level 5, and/or Layerless Level 6 fields blank. To use this script in a new file, simply import the wrapper into the file, place it in the drawing, and run the script. The settings of the script are very similar to the levels and layers created in the Vectorworks template, but you can customize them in the OIP of the wrapper. To change the Story suffixes and Story names, double click on the wrapper and the select the Get Story Names node. There are settings that you can change in the OIP of this node as well. NOTE: Existing stories and story-associated layers that match the names of the new stories and layers will be deleted every time you run this script. Existing stories that DO NOT match the names of the new stories will not be deleted but may interfere with the creation of new stories. It is recommended that this script is run in a file without existing stories, levels, or story-associated layers.
  3. No this is not possible with Marionette as it is not possible to attach/associate the parametric record of a Vectorworks Door to an object that is not a door. However, in Vectorworks 2020, we have added a Barn Door configuration to the Door tool so in Vectorworks 2020 this Marionette object is no longer necessary.
  4. You are on the right track and very close. If you want the output value to be a symbol name, it needs to be a string. In order to create a string in your script, you must use quotation marks. Assuming that HR4 is the symbol name, you simply have to put quotation marks around it to make it a string. if input == 0: self.Params.output.value = 'HR4' if input == 1: self.Params.output.value = 'HR5' if input == 2: self.Params.output.value = 'K4' if input == 3: self.Params.output.value = 'K5'
  5. Unfortunately, the Get Z at XY probably won't work because a NURBS curve likely doesn't have an actual thickness. I created a work around that might work - I created a loft based on the curve, used the Get Z at XY node and then deleted the loft. Battle dots marionette create loft.vwx
  6. sbarrett

    Lists in lists

    If your NURBS surfaces always follow the same curvature and change only in the length that they lay on the floor, you can create a bunch of surfaces that are the same size, then use the Extend NURBS node to extend each in a random manner. The Extend NURBS node only takes a single length value as the extension, so inputting a random list of lengths to extend a list of surfaces should work.
  7. Version 1.0.0

    146 downloads

    In Vectorworks, there is a command that allows the user to build a surface array, i.e. to array a symbol across a NURBS surface. This is a powerful tool, but creating patterns with multiple symbols is currently missing as an option in the software. With this in mind, these two Marionette scripts are meant to help create panel patterns on a wall with existing 3D symbols: · The wrapper “Panelization with Rotation” arrays a single symbol across a surface, but can apply a rotation to that symbol in either a user-defined pattern or randomly. · The wrapper “Panelization with Multiple Panels” arrays multiple symbols across a surface in either a user-defined pattern or randomly. For both scripts, the horizontal and vertical reveals between panels can be set separately, allowing for quick visualization of multiple paneling design options. These scripts only work when the NURBS surface is flat and the face is rectangular — the symbols will not follow a curved surface. This is meant to be used for panelized walls, which are much more likely to be flat. (The surface however does not have to be vertical; it can be slanted or horizontal.) The panels are distributed from left to right, top to bottom across the surface — if the pattern does not fit exactly across the surface, there will be extra room left at the right and/or bottom edge of the surface. When paneling a wall, it is more likely that the full surface or the reveals will be resized to fit the appropriate number of panels versus trimming the panels along one side.
  8. Here is an option for the issue of the bounding box. I found points along the edges of the surface and created a 2D poly from those points. gridshell test_SBarrett.vwx
  9. This should work anywhere in the world. To look up a location outside the US, you can write "[City], [Country]" or even a more specific address in the Location field in the OIP. What that field does is it takes a location and converts it to latitude and longitude. It then searches the Iowa State University's database of weather stations (https://mesonet.agron.iastate.edu/request/download.phtml?network=AWOS) and downloads data from the three closest stations to that latitude and longitude. You can change the number of weather stations that it queries if you want. The most accurate data is usually found at airport weather stations, so if you want to type in the location of the nearest airport, change the Num of Stns to 1 and you will get only that weather data.
  10. I updated the geopy library download link - perhaps this new version will work for you.
  11. @Ash I have updated the Temperature Chart and it is located here: The other charts I haven't updated yet.
  12. @jeff prince are you using the latest wind rose file posted here? Also, are you using the latest build of 2019? There were problems with geopy not being installed in 2018 I believe, but it should work in the current version of the software.
  13. @jeff prince I periodically update these graphs and post them in the Marionette objects section of the Marionette forum. You can check there to see if there are newer versions than the ones you have. I updated the Wind Rose pretty recently.
  14. @nealjane1 I uploaded a new version of the file with the date _190228 and it appears to be working fine in 2019. Please let me know if this solves the problem.
  15. @VvierA Can you send us the file?
  16. Hi @cberg- Oh, the Space tool. There is a way to do this but its hidden. The parameters of each finish "key" are there in the space but they don't show up in the dropdown menu of the space's object parameters. I am not sure why this is true. I have built a data tag that is set up like the image you provided. I don't believe there is a separate trim finish in the space, only a base finish, so that parameter isn't included, but all the others are. Let me know how this works! Finish Data Tag.vwx
  17. From a scripting standpoint, I think you could easily put these objects in separate classes. Putting them in separate layers can be a little trickier, because the created geometry is always placed in a group and that group will be placed on the active layer, no matter what layer the objects INSIDE the group are on. The way around this would be to place your starting objects on the layers that you want them on, and then run your script with the active layer set to the layer that you want those objects placed on. You can do this within the script with classes using the Set Class node from the attributes folder, or with layers using the Set Layer node from the Layers folder.
  18. Version 1.0.0

    63 downloads

    This file is most useful for Landmark users but could be adapted to other plugin objects (PIOs). The purpose of these scripts are to take surveys of existing trees that consist of "dumb" data - pieces of geometry and text to label trees on a survey - and convert it into Existing Trees with the relevant text data associated. The first network, "Test Proximity," runs a check to make sure that each piece of text is closest to its associated piece of geometry. This is necessary to make sure that the second script will work properly. The second network takes the center of each piece of geometry and places an Existing Tree there. It will use the saved red symbol in the Resource Manager as a template, so if you use particular default settings for your Existing Trees, you can edit the red symbol. (Some day maybe there will be an Existing Tree Style!) The network will also transfer the text data to your chosen field of the Existing Tree PIO. In this network, it is set to transfer to the Tree No data field. This network could be adapted to other PIOs if needed.
  19. sbarrett

    Vortex box

    I noticed that your rectangle nodes are named and when I remove the Int node then those names appear on the outside of the wrapper. To keep this from happening, you can attach a 2D Vector node with the values of 1 for X and 0 for Y to the vRot inputs of the rectangles. Those are the default values for no rotation.
  20. sbarrett

    Vortex box

    Hi @Palle- It looks like you have an integer node attached to the "vRot" input of the rectangle nodes in one of your wrappers. This input requires a vector - that is what the "v" means. It looks like all of the Int nodes you are using have a value of 0 so you are not looking to rotate any of the rectangles. If you simply remove these Int nodes and leave those rectangle inputs open the script will work how you want.
  21. sbarrett

    Yes/No Dialog

    You can think of this node as an alternative to the Bool input node. The output of the Yes No Dialog is labeled "b" meaning it is a boolean or true/false value. Yes would be true and no would be false. You can connect it to any node that has a "b" input and some sort of either/or choice. When you run the network, a yes/no dialog will pop up and you can choose Yes or No.
  22. The file is a 2019 file - I have exported it to 2018 and posted it here. Popups v2018.vwx
  23. I wonder if figuring out whether the church is visible would work better if you project from the other direction - from the church. If you have existing buildings and trees in your model, I imagine that you could create a projection from the church to the location of the building - all the building would need to be is a flat surface - and where the projection of the church hits the surface (isn't blocked by other buildings, trees, etc) is where you know that views of the church exist.
  24. I believe it would just be easier to make the multipliers (1,2,3,...) the output of the popup and multiply that output by 12 or whatever variable integer. Again, you can use the Popup node if the multipliers will always be the same, or you can use the Popup Dialog node to have a dialog appear after the script is run. The output of the popups are integers representing the index value of the item chosen from the list. Since your list will basically be 1,2,3 etc you can add one to that integer to get the value you need. I have built some examples for you. Popups.vwx
  25. This is possible with a Popup Dialog node, located in the User Interaction folder. The difference between this node that the Popup node is that every time the script is run, a dialog with a dropdown menu will appear, and you will have to pick your option before the network will finish running. If you want a static popup that appears in the OIP of a Marionette object, you still need to use the original Popup node and create the list via editing the script inside the node.

 

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...