Jump to content

Marissa Farrell

Marionette Maven
  • Content Count

  • Joined

  • Last visited

Posts posted by Marissa Farrell

  1. So, I looked into this today and unfortunately at one point we introduced a method behind-the-scenes to fix a bug in Marionette Objects (they weren't always drawing correctly when in a 3D view) that saves and restores the current view after a Marionette network is run. 

    Because of this, unfortunately there's no way to set a view using a Marionette network.


    I put in a request to look for an alternative method to solve the Marionette Object issue which will directly fix this issue and I'll try my best to let you know if and when that happens 🙂 

  2. I don't believe we have a node in default content that will work for this, but I can look into providing you with a custom one.

    The Set View Matrix node does not appear to work in the way you'd wish (I've never used this node and am not exactly sure what its application would be)

  3. There are a couple of options for this.

    1) If you want to run a script on selected shapes (or shapes by a different criteria), you can create a Marionette Menu Command using the Objects by Criteria node with criteria of Selected (this can be populated in 2019 by using the Criteria configuration... button in the OIP). This object will not be tied to Marionette directly after the menu command is run and will limit your customization abilities.

    2) If you want to be able to reshape the starting shape in the future, you can use a Control Geometry node and place your starting shape in the Control Geometry group of a Marionette object. This will remain as a Marionette Object (which is similar to a plug in object) and will refresh when edited.


    I'd be more than happy to go over either method (or both) with you if you need some direction.

  4. vs.PutFile() is used for text files, but you want to create an image file.

    I suggest building your path using vs.GetFolder()

    You also will not need to use vs.Close() after making this change.


    fileName = vs.GetFolder('Choose path:')[1] + 'image.bmp'

    (You need to extract the second output from GetFolder, which is why the [1] is after it.)

  5. You can customize the Popup List node in the library to contain these choices. In order to do so, you will need to delete the line at the very top that begins with #COMMAND

    You can edit the values you want displayed in the 13th line.

    The output will be an integer, the outputs start at 0, so if you select the top item in the list, the output will be 0, the second item in list will be 1, and so-forth.

    You can then use an Equals node to define your boolean input to the valve nodes.


    Let me know if I need to clarify better 🙂

    • Like 1

  6. Can you provide me with an example group?

    It's possible to extract the texture from objects within a group using Marionette, and testing with a group containing one object I'm getting decent results, but the issue will be if you have multiple objects within the group that have different textures.

    I am unable to pull the texture of the group directly which leads me to believe it may not be possible.

  7. 4 hours ago, Matster said:

    - I can specify an object by its name, but would like to just select 400 or so objects and apply the Marionette script to the lot how can i do this?

    You have a few options here , two of which:

    1. You could use the Objects by Criteria node to create a set of criteria to define the objects to run the network
    2. You could create a menu command that would run on selected objects (you would still use the Objects by Criteria node in this situation, but you could not run the network directly from the drawing area if it's set to run on selected objects)
    5 hours ago, Matster said:

    - typically in the UK, we work in mm, but all our set build panels are in feet and inches! so I need to convert the format of the "Get Length" and "Get Width" to feet and inches

    You can perform math on these values prior to writing them to the record, we currently don't have a node that will do this automatically for you


    5 hours ago, Matster said:

    - Ideally, I would like the panel size to be as text in one text field, I just cannot work out how to join multiple strings together, so it makes a single string i.e.  "Get Length"&"x"&"Get Width"

    I've attached a file that shows how to use the Concatenate node for this purpose


    Hopefully I covered everything 🙂


    Please let me know if you have any other questions or get stuck anywhere else, I'm more than happy to help.

    • Like 1

  8. For #1, you can use a valve node before the alert dialog to determine if it shows or not.

    The only current issue is that nothing past the valve will run if the input is false, even if the network converges somewhere later.


    for 2, we don't have any OIP controls like that, so I am going to guess no.

    A workaround would be to modify your own popup controls with possible values, but I don't think we can display color at this time, it would have to be text based.

    • Like 1

  9. Our debug mode at this time is primarily used to determine what data is flowing through a wire to kind of backtrack where the network went wrong - sort of like assigning breaks in code.

    It's hard to determine ahead of time what will cause a crash, but we do our best to add error handling to the default content when we come across it - is it possible for you to send me a network that you encounter(ed) a crash in? I'd like to take a look and see what I can do on my end.


    I'm working now on outlining some Marionette help, so I will be sure to add information on best practices as often as I can.


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.