Jump to content

Marissa Farrell

Marionette Maven
  • Content Count

  • Joined

  • Last visited

Everything posted by Marissa Farrell

  1. Marissa Farrell

    Roof Nodes

    I hate to have to say this, but the roof nodes can't work at this time due to an overlook with the API. Or at least the ones to create a roof... I haven't looked much further into them, I just know we added a few more parameters to roofs in general since the callback to the software was last updated, which kind of messed up the overall outcome. In short - it's not Marionette's fault, it's Vectorscript's I'll explore more today and see if there's any way to salvage some use of them..
  2. Marissa Farrell

    Short Videos

    Alan, these are great resources! Thank you for sharing your progress of learning Marionette!
  3. Marissa Farrell

    Worksheet nodes

    Hi dason! I'm attaching a network that I hope will help/lead you in the right direction. In this document, the Get Cell Value node is a little different... the other one should have been "Get Cell Formula" but I misnamed it back when I made it. I also modified the Polygon2D node in order to smooth your poly with bezier curves. I'll update that in the shipping library at some point to have more options. Unfortunately, I couldn't get an actual polyline object to create properly, so I'm hoping the polygon is okay. How this works: The Sequence nodes will essentially loop through every row in the worksheet, starting with 1 and ending with however many rows you have. This can be modified by you if need be. You have to have an input of at least 1 for each the row and column to the "Get Cell Value" node, which I'm sure makes sense. Also, the alphabet equivalent is as expected, A=1, B=2, etc. These values are then pushed into the Point 2D node, creating the list of (x,y), and ultimately sending them through the Polygon 2D node to create your poly. I hope this helps, feel free to ask for more information if you need it.
  4. Marissa Farrell

    Object questions

    Sarah! You've come to the rescue! I was going to try to find my similar script
  5. Marissa Farrell

    showing different in 2D plan and top view

    Gerald, The copy node isn't producing 3 objects, it's just producing 2, however when you used "Get Rectangle" to get the width and height, and applied it to the other "Rectangle" node, you created your 3rd rectangle then. Another way you could have done this would be to create another wire from the two nodes you were using for your first rectangle, since those are the same values returned from the "Get Rectangle" node. I'm attaching a file that shows this process instead. I thickened the wires to show you what I mean. Let me know if this is not clear. This revised network does not require copying the rectangle, therefor there is no need to delete a copy. With regards to the move node, I do not believe you would hurt anything by replacing your French node with the German node, although I haven't looked at either of them. If you're truly concerned, you could create a brand new symbol for the German version and name it so that you know the difference. I hope I've been helpful! Marissa
  6. Marissa Farrell

    Marionette Objects and OIP

    A handful of comments here: Object name: I have an idea, but I don't want to share until I am positive on this. I'll get back to you if I have a solution. Object Location: You're correct that objects have their own coordinate system. Unfortunately, I don't think there is currently a way to define the insertion point of the object. Again, if I find out otherwise, I will let you know. OIP Display: Not currently possible. We can't even programmatically define values at all in the OIP, really. At least not the way we would need to in this case. Rise over Run: I created a node that will take in a vector and create an angle. I'll link to it once I post it. In addition, there are a couple of reasons why I don't believe your script is working. The most important one (and thank you for again bringing it to my attention) is that the Rotate node WON'T accept an angle (at this time). It's trying to query a list, and since you are using just a float value, it can't index it. I think there are also many other things wrong with the rotate node, but I haven't gotten around to fixing it. A question I have - are you trying to rotate your rectangle about Z (in 2D)? or are you trying to rotate it in 3D? I only ask because I'm not really sure what you expect your outcome to be in this case. If you are trying to rotate only in 2D, you can use the orientation input to the rectangle and use a 2D vector with your run as x and your rise as y. I hope this all made sense, and ultimately that I gave you the correct information. (I mostly hope I'm just not wrong... :blush:)
  7. Marissa Farrell

    Object questions

    Here's a sample of a super simple curtain. I didn't, at this point, take the time to do all of the math on it, but I think it's a satisfactory example. There is still a LOT more you could to with it for customization, I just wanted to share that the possibilities are (nearly) endless
  8. Marissa Farrell

    Object questions

    Good Morning, RickR! To answer your questions: 1) Yes, you can ABSOLUTELY create a complex PIO object from scratch. This also allows you to choose whatever variables you want to have available for parameters. It is a complicated process, but I can try to mock something up later for you, just to give you a simple idea. 2) I don't think that "Move" is the problem. Are you using a "Name" node to specify the object you want to move? If so, is "Create Duplicate Object" checked in the OIP when you select the "Name" node? If so, try unchecking that. 4) (What did you do with 3?!) This one is slightly trickier. The values in the OIP are usually stored similarly to Records, but they aren't like the records we can customly create. Let me look into my older files to hopefully mock something up for you. I have a feeling the default nodes won't do what I'm looking to do. Let me know if my answer to 2 helped you at all, otherwise we can continue to troubleshoot!
  9. Marissa Farrell

    showing different in 2D plan and top view

    Hey the frog! I've attached a file that I believe fixes your issue. The problem is that when you copied your rectangle, the copy never got extruded which left it as a 2D object. When this happens, you can think of these Marionette Objects as "Hybrid" 2D/3D objects, which means that when you are in top/plan you will see the 2D objects, but when in any 3D view, you will see your 3D objects. I added a delete node to the file and connected the output port "copy" to it, in order to remove that pesky 2D representation. Top/Plan: Top: Does this help? Marissa
  10. Marissa Farrell

    Work Sheets

    Yes, it's possible. There are a lot of worksheet nodes I haven't yet finished writing. Hopefully I can get some up soon for you! EDIT: I believe ahedley shared his worksheet nodes here, I haven't tested them myself, but they may suffice while I finish up the official library.
  11. Marissa Farrell

    Blob to Floor Pates help

    There's not currently a compose node, and I also was thinking along the same lines, however I don't think that's the solution to this anyhow. I'll keep you updated on my troubleshooting.
  12. Marissa Farrell

    Multiple Extrude

    Hey Alan, Here's a rectangle that will take in an angle (in degrees) for the orientation. Keep in mind that the rotation takes place from a corner of the rectangle. Play around with this and let me know if it makes sense to you. Unless there are any strong objections, I will most likely get the rectangle node changed to represent this method in a future update to the software. Let me know! Marissa
  13. Marissa Farrell

    Multiple Extrude

    So orientation currently takes in a vector. I believe the current default value is (1,0), I don't have vectorworks open to confirm at the moment, but hopefully my memory serves me correctly. This means that the vector points in the x direction. I plan to soon change the rectangle node to take in an angle rather than a vector because I believe it will be more user friendly. For now, if you're interested in playing with orientation, use a vec2 node and try putting in some values for x and y. They may need to be in the range of 0 and 1, but I'm not positive on this. It may just normalize them on its own. I will gladly go into more depth about vectors if you'd like!
  14. Marissa Farrell

    Short cut key for debug

    Hey Alan! If you hit the "i" key on your keyboard while the Marionette tool is active, it will toggle between the "Insert" and "Debug" modes of the tool. Does this help?
  15. Marissa Farrell

    Sin Node

    Hey Alan! The sine node takes in an angle in radians. Since you're providing it with an angle in degrees, the output will be incorrect. There's a node in the Math section (Angular Conversion subsection) called "Deg2Rad" which will take an angle in degrees and convert it to radians. I'm attaching an example. I hope this helps!
  16. Marissa Farrell


    Jeff, The node "Compound List" in the attached file does what I believe you are looking for. Let me know if I missed something! Marissa
  17. Marissa Farrell

    How to assign handles

    So actually, in this case, vs.CreateText() does NOT return a handle, it returns None. Here's a script that should work for you instead. vs.CreateText('Hello') h = vs.LNewObj() vs.SetTextFont(h, 0, vs.GetTextLength(h), vs.GetFontID('Arial')) Hope this helps!
  18. Marissa Farrell


    I'm excited for the challenge! I will say, however, that I'm most likely going to have to create another custom node. When Marionette compiles, I don't believe there's a smooth way to create nested loops, which is pretty much what we would need in this case. I'll get back to you on this, though!
  19. Marissa Farrell

    Creating an Open Poly 2D or 3D

    If you convert back to a wrapper and then convert back to an object node, does that resolve the issue? I'm just trying to see where the logic is being lost.
  20. Marissa Farrell

    Creating an Open Poly 2D or 3D

    In this case, the reason it isn't carrying over to a new file is that you're using a symbol as your input for the profile. Because that symbol doesn't exist in the new file you're trying to use it in, it cannot generate geometry from the symbol. I'll try to get something that works the way you're hoping, but right now I'm not sure of the best solution.
  21. Marissa Farrell

    Creating an Open Poly 2D or 3D

    @Markvl, can you attach the file(s) that you're experiencing this in? I'd also like to bring attention to the nodes "Set Closed 2D" and "Set Closed 3D" which exist in the Poly2D and Poly3D categories, respectively. Those nodes will allow you to choose whether or not your poly is closed.
  22. Marissa Farrell


    Alan, The animate node that you're trying to use in this file won't really help you out. I've attached a revision of your Clock_02 file. The change I made is to the "Transform2" node (again). If you open it up and take a look at the bottom, I added the line "vs.ReDrawAll()", this line will update your drawing area with the new rotation each time the node gets run. I also edited the logic behind your sequence. In this case, we want to rotate it -30 degrees each step because we're adding to the previous location. A negative angle will move us clockwise. If we were to leave it with the sequence you were using before, the line would move in different increments, which isn't what you're looking for. Let me know if this makes sense and if you have any questions! Marissa (I'll try to get a node that will just update the view without having to append code to the node. I tried briefly for this example, but failed. )
  23. Marissa Farrell

    Move & Rotate-Animated

    Alan, You are right that in this case (and in most others following this example) a loop is running. There are some other obscure times where the lists could be used in a different way that would not result in a loop, but those (so far, to my knowledge) would be more rare. It's perfectly acceptable to think in terms of looping in this example. Great demonstration! Maybe at some point I can get a detailed description of what exactly is going on in this example, and provide a case where the behavior would be different. Thank you for sharing!
  24. Marissa Farrell


    AH my mistake. It only works if it's accepting inputs, not with wired outputs. Sorry!
  25. Marissa Farrell


    Patrick, To avoid the issue of connections getting destroyed, when you save your symbol, convert it to a plug-in object. I've found that as the best route.


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.