Jump to content

Marissa Farrell

Marionette Maven
  • Content Count

  • Joined

  • Last visited

Posts posted by Marissa Farrell

  1. @Niels Timmer


    If you know which vertices need to be arc vertices, you can use the Change Vertex Type node on your resulting poly with the appropriate indices and radii to change those to arc vertices.

    Please let me know if you need some extra guidance.

  2. There is nothing in Marionette's shipped content that will do this, though a couple of years back I wrote a node that will read an image, that data can be used to do this.

    These files may not be updated properly for 2019, if you come across an error when installing the Python modules, please let me know which OS and VW version you are running and I will update the scripts to work.


    Original file, extrudes the pixels as rectangles to a height based on their brightness:


    User modified file that seems to result similarly to what you are hoping to achieve:


    • Like 1

  3. Yes, the closed checkmark is what I used, but usually if your points all touch it will close itself. You must have been off by the teeniest unseen-to-the-eye amount.

    If you click-hold the circle button between the two arrows, the vertex will remain highlighted.

    I did notice while going through again that there was still one extra vertex, so I removed it in this revision.


    Please don't feel bad about asking questions! This forum thrives on questions from users, and everyone here is willing to help 🙂 We would rather get asked all sorts of questions than have anyone stuck on something they need help with.



    websters upstairs v1.3_MKF v2018_v2.vwx

  4. So I found the issue and fixed it -

    On the inner edge of the left side of the profile, there must have been two lines overlapping when you composed because stepping through the vertices bounced back over that edge once before continuing. The poly was also not closed.


    I've attached a revised file, exported back from a newer version (you should have no issues opening it, please let me know if otherwise). You should be able to extrude this shape as a solid (I tested and undid the action to make sure).



    websters upstairs v1.3_MKF v2018.vwx

  5. I would suggest using an Ordered List node to assign the order of the creation. There's no real way to determine the order of inputs to a single port if many wires enter it; the Ordered List node will ensure that the values are passed in the order you've specified.

    • Like 1

  6. 1) You can use either single or double quotes, it does not matter as long as you open and close with the same type.

    2) Marionette networks cannot be run on selected objects unless you convert them to a Marionette Menu Command, though I am not certain, I am assuming that is why you are getting a false count of 16 while running in debug mode.

    3) Currently, using the button on the Objects by Criteria node will always revert that dialog back to the defaults. As long as you don't hit OK in that dialog, your previous criteria will remain the same. There is currently a request in to have the Criteria dialog display the current criteria from the OIP when the button is pressed.

    4) You can use Control Geometry to define your source geometry as an alternative to the name node and then create a Marionette Object (which is basically a Plug In Object that uses a Marionette script as its code). I'm not sure if this would fit your needs, but if you'd like more information on it, I'd be more than happy to go into further explanation.


    Hope this helps!

  7. Taking a quick look at your script, this may be as easy as adding quotations around your output values (I am assuming these are the strings you use for naming your profile?)

    For example


    if input == 3:
            self.Params.output.value = "K5"


  8. @Pvz11

    You can move your Extrude Along Path upward using the Move node, or you can extrude legs below the EAP. Once converted to a Marionette Object, it can move around freely. The Marionette Object has its own coordinate system that you will use to move/place your individual parts.

  9. You can create your profile the same way I got around the compose issue - determine the location/drawing order of your vertices and feed them into a Poly node.

    Using the Ordered List node allows you to order the points that are going into the Poly node, if you were to just wire them all into the same port, the Poly node could take them in unpredictably. Ordering them ahead of time will ensure that they are drawn exactly how you expect.


    For example, a square profile - you would provide it 4 points (0,0), (0,1), (1,1), and (1,0) into the first four ports of an Ordered List node, placing a Polygon 2D node after it. You then have two options; you can use the Set Closed 2D node after the Poly node, or you can wire the first point, (0,0), into the fifth port of the Ordered List node (item4).


    I hope this helps, but if it doesn't, feel free to keep asking for clarification 🙂 

  10. @Pvz11


    I took a look and made a few changes to your network - I didn't edit the one you have on your drawing area, but I did redo the one inside of the Marionette Object.

    I hope this helps - basically the "compose" node was failing to compose the lines while in a Marionette Object, I'm going to submit a bug for that since I'm not sure why it works in a regular network, but not in an Object.


    Please let me know if you need any help improving this further!


    • Like 2

  11. Attached is a file with a revision that should work for this use case, I'm sure there's a reason I didn't go this route initially, but I can't recall why.


    There's also a chance I had fixed the issue you're experiencing in a more recent node, though I'll have to dig through some files to see what my latest revision was (though I'm sure it's more recent than Nov 2018, as dated in the node you've been using)


    • Love 1

  12. There's not a traditional method of looping in Marionette, but if you incorporate the Sequence/Range/Series nodes, they can help to facilitate behavior similar to a loop.

    Take a look at those, and if you need some guidance let me know and I'll try to find some time on Monday to help guide you 🙂


    This will just be a matter of list manipulation, so check out all of the Data Flow nodes.

  13. I think the best way to get started is to script something you already know how to make WITHOUT scripting.

    Write out a list of the steps you take when drawing something, and then look for nodes/functions that would help accomplish that for you. For Marionette, if you aren't able to find a node to do something, ask in the forums; sometimes it's been created but not added to default content, and other times it can be made for you quickly.

    Start small and build from there. If you want to do something complicated, try doing the smaller parts of it first and then expand on it.

    • Like 1

  14. One approach that I can think of is to create multiple square grids and offset (move) some of them to give you the appropriate points for an isometric grid.

    I'll try to find some time to experiment later, but maybe that can give you a head-start on me towards a solution 🙂

  15. I'm attaching an example to get you started - it still needs some error handling and modifications to get exactly what you want. I've added a new layer for the Control Geometry example, and I've modified your original network on its original layer.


    Let me know if you have any questions!

    CIRCLES IN CIRCLE_MFarrell.vwx

  16. Great question!

    • Ungroup will actively ungroup a group (unless it's a group created by Marionette) and return the handles of the objects that used to reside within it
    • Contents will give you the handles to the objects within a group without ungrouping it.

    Generally, they can be relatively interchangeable if you don't really care about the grouping of objects in the end, but in this case (though I'm not totally certain) I believe it fails because once you ungroup the objects in a Control Geometry container, the node that references Control Geometry doesn't know what to do anymore since it's only supposed to contain one object (ungrouping would result in the Control Geo container to now contain three separate objects).


    I hope that helps to clear things up at least a little bit!

  17. The chunk node *does* work on curves, the issue is that the Divide Curves node does not understand how to use that input.


    Here's a network that I think accomplishes what you're looking for. What you'll need to do is just approach things a little differently - manipulate your lists later on when they're not objects and are instead point data.


    I included valves at the end to show you different results - when you just generate curves, you're missing the last point which doesn't give you a closed curve. The easiest way to circumvent that is to first create closed 3D polys then convert to curves afterward (You could, of course, manipulate the points instead as you did in your wicker file.)


    Screen Shot 2019-05-15 at 10.17.08 AM.png


    • Love 1


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.