Vectorworks, Inc Employee SBarrettWalker Posted January 20, 2016 Author Vectorworks, Inc Employee Share Posted January 20, 2016 The first Marionette Webinar is now available on YouTube! Quote Link to comment
nplache Posted January 21, 2016 Share Posted January 21, 2016 Thank you VW team, great video! Question, is it just me or is the video aspect ratio off? (example; @ timestamp 12.33 the 4" circle appears as an oval) Not a major issue but it may be confusing for some... Quote Link to comment
J. Wallace Posted January 26, 2016 Share Posted January 26, 2016 Question regarding Marionette. I switch between meters and Ft/Inches units often and would love to have a script for this. Is it possible for marionette to do this? Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted January 26, 2016 Vectorworks, Inc Employee Share Posted January 26, 2016 Looks like Document Units can indeed be controlled by scripting: http://developer.vectorworks.net/index.php/VS:SetUnits I do not think any nodes currently hook into this, but it should be possible to create one. Quote Link to comment
Mark Flamer Posted January 26, 2016 Share Posted January 26, 2016 Yes, really easy to create a node that does this. It's a good example of how to create custom "commands" using Marionette. I went ahead and threw one together. Quote Link to comment
J. Wallace Posted January 26, 2016 Share Posted January 26, 2016 Thanks Mark That's very nice of you...I'm not sure what to do with this now as I'm new to Marionette. I guess that will get sorted out. Thank you again. Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted January 26, 2016 Vectorworks, Inc Employee Share Posted January 26, 2016 Select the node, in the Object Info Palette, select the units you want the document to use from the dropdown, then click "Run" Quote Link to comment
J. Wallace Posted January 26, 2016 Share Posted January 26, 2016 (edited) Tried that Jim. I get an error... Edited January 26, 2016 by J. Wallace Quote Link to comment
Marionette Maven Marissa Farrell Posted January 27, 2016 Marionette Maven Share Posted January 27, 2016 @J. Wallace, could you post the full "error1.png" message that you get? I'm not seeing an error when I run this node. That's usually the best place to troubleshoot, but I need to see everything in that window. Quote Link to comment
J. Wallace Posted January 27, 2016 Share Posted January 27, 2016 Hi Marissa Here's a screen shot of the full error. Quote Link to comment
Hippocode Posted January 27, 2016 Share Posted January 27, 2016 Hi Marissa Here's a screen shot of the full error. Jamie, could it be that you installed the Extensio module ? Version 2016.02 broke Marionette because of an UID collision with one of our tools. If so, remove it or upgrade to the latest release to fix it. Quote Link to comment
J. Wallace Posted January 27, 2016 Share Posted January 27, 2016 Thanks Hippocode That is most likely the issue...can you direct me to the un-install instructions? Quote Link to comment
Hippocode Posted January 27, 2016 Share Posted January 27, 2016 Thanks Hippocode That is most likely the issue...can you direct me to the un-install instructions? https://www.gitbook.com/book/hippocode/extensio-installation-manual/details There is also a newer version available that fixes this issue. Quote Link to comment
J. Wallace Posted January 27, 2016 Share Posted January 27, 2016 (edited) Thanks Hippocode... The node now functions which is great. How is it best to share this with different files I work on? I don't see anything in the resource pallet which would make this easy to access...Thanks Edited January 27, 2016 by J. Wallace Quote Link to comment
J. Wallace Posted January 29, 2016 Share Posted January 29, 2016 A question about nodes...how does one share a nodes made in one file with other files. Doesn't look like it shows up in the resource browser? Quote Link to comment
rDesign Posted January 29, 2016 Share Posted January 29, 2016 Take a look at this previous thread for info on how to add custom Marionette nodes so that they can be accessed from the Marionette pull-down menu. Very helpful tip from Pat Stanford quoted from that thread: And those nodes MUST be saved as a symbol. That is the part I was missing. It is probably best to check the "Convert to Plugin Object" box on the create dialog otherwise you will have to manually ungroup the node before you can use it as part of a network. Your nodes will be saved in a separate sub category than the default nodes. So if you create a file 01. Basic Math with some nodes (as symbols) in it, it will not just add them into the Basic Math sub-category, but will give you two Basic Math sub categories. The first with the info from the User Folder, the second with the data from the Application folder. The good news is that you don't have to restart VW for it to recognize that new nodes (or files/folders) have been added. They just appear. Quote Link to comment
J. Wallace Posted January 29, 2016 Share Posted January 29, 2016 Thanks Tim That was super helpful... Quote Link to comment
Vectorworks, Inc Employee SBarrettWalker Posted February 1, 2016 Author Vectorworks, Inc Employee Share Posted February 1, 2016 Hello everyone! Thanks to those of you who attended today's Webinar. If you were not able to catch it, it will be available one YouTube soon. For now, I am attaching the file I used in the webinar - I didn't get a chance to show what all of the definitions can do, so feel free to play around with them. Quote Link to comment
Aquinde Posted February 1, 2016 Share Posted February 1, 2016 Thank you Sarah. Great webinar today. I have so many questions but I really need to take the time to write them in a sensible manner. Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted February 2, 2016 Vectorworks, Inc Employee Share Posted February 2, 2016 Demo File How does one put a custom curve, i.e. taken from a site plan, for example, into Marionette as an input? She will cover this at some point, if not in this session then in the next. There are a few ways to do this. You can use the "Name" node from the input node category to get a named object from the document. You can also package a curve or any other object into a standalone PIO as control geometry. If you have no start input for a series object, does it start at zero? Yes Can you change the wrapper class without unwrapping and rewrapping? Yes, you can change any of the attributes in the attributes pallet also. Just like redefining the class for any VW object? Yes How long did it take Sarah to be that proficient with Marionette? Good question. Sarah came to Vectorworks already having experience with Grasshopper in school, so the answer to this question probably needs to be qualified, as they are very similar in concept and approach. will you share that appendix page please? http://developer.vectorworks.net/index.php/VS:Function_Reference_Appendix#objects What is the best approach to start implementing algorithmic design in to your daily practice? I think to look for places in your practice that would benefit from automation. Repetitive tasks. Save your energy for design. Does the C convention mapping true/ false to 1/0 apply to Marionette booleans? Marionette uses Python convention. True and False are values of a proper Boolean type. Your list of object type is all CAPS- significant, or not? Not. How do we know the default values in a function? If you open the node they are listed in the script and also in the description. What is the output of "Ungroup" - does it name each rectangle? The output of the "Ungroup" node is a list of object handles -- in this case, handles to a bunch of rectangles. You only have to select one node in a network to create a wrapper for the whole thing? Yes, it will find the rest Can wrappers with the same name that are not symbols actually be different? The name of a wrapper is just a title. So, yes there would be no naming conflict. Can a wrapper be made from multiple wrappers? Yes, they can nest to any depth. Quote Link to comment
Markvl Posted February 3, 2016 Share Posted February 3, 2016 This is great Jim. Thanks for getting it up so quickly. I had to miss this one on Monday. Quote Link to comment
RickR Posted February 4, 2016 Share Posted February 4, 2016 (edited) Very informative! One small comment. Wasted screen space is a pet peeve of mine as it prevents me from having the work area at maximum zoom. This time Sarah had significant unused space: top, bottom, left and right. Edited February 4, 2016 by RickR Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted February 9, 2016 Vectorworks, Inc Employee Share Posted February 9, 2016 All video, demo file and QA have been appended to the original post in this thread for convenience. I will also be maintaining the registration link in that post for whichever session is next up until the series completes. Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted February 9, 2016 Vectorworks, Inc Employee Share Posted February 9, 2016 A few users asked during the webinars live: US AIA Members Can Earn 1 AIA LU. Those who viewed the webinars live can submit their AIA numbers for us to process: Submit for Webinar 2 Submit for Webinar 3 Those viewing a recorded webinar can take this test to receive credit: Test for Webinar 2 Test for Webinar 3 And we’ll of course provide updated info for Webinar 4. Quote Link to comment
Vectorworks, Inc Employee PVA - Admin Posted February 22, 2016 Vectorworks, Inc Employee Share Posted February 22, 2016 (edited) When placing a Google map in the file this way, does it place the image in the correct geographic location? Yes, It obtains the lat and long from the Heliodon. If the Heliodon is rotated, the map comes in similarly rotated. Is the Marionette.py file automatically created and updated? It's copied into the user folder when Marionette runs. But, It's not changed in any way. Can you please repeat the context/definition of the python paragraph called "def RunNode(self):" The RunNode function defines the functional behavior of the node. It "maps" input values to variables and performs operations on the variables, then maps the results to output values. How does the scripting language know where a block of code ends? i.e. Java has { }... White space is significant in Python. It uses indentation to specify scope. In your Filter example you left the Else alone. Shouldn't that have been reversed or deleted? Not necessary because the logic in front of the Else() was inverted. Missed a couple minutes because of internet failure - but do all VW commands have a corresponding Marionette or Python function? Many commands in VW have a function call in the API. http://developer.vectorworks.net/index.php/VS:Function_Reference Can i use a smaller/ nearer area in google maps? You can change the “Zoom value” setting in the Marionette definition. However, Google does impose some limits. Will you post the Marionette resource page again? Thanks www.vectorworks.net/marionette (marionette resource page) www.vectorworks.net/sciencefair (info. on science fair competition) After you've repurposed a node (SetName for example), where does it live? i.e. how do you access it for future projects? It's in the file you are working in as an instance of a plugin object. You can put it in a symbol and put the file in your default library user folder to make it available to the tool popup. You're calling the variable string - I would call it name, can you do that? You can call it whatever you like "rectangle" has double quotes the next SetDescription is in single quotes. does it make a difference if you use double or single quotation marks? There are 3 ways to specify strings in Python! ' ', " ", """ """. Just remember that the quotes have to match at the beginning and end of the string value. http://www.tutorialspoint.com/python/python_strings.htm How would we know that h = object and name = string? Is this defined somewhere else? These are defined in the “Params” class (the upper, first indented section) of the Python script of the Marionette node. Where are the best places to learn the basics of Python? Or would doing that be a bit of overkill for the purposes of using Python with Marionette? Not overkill at all! Marionette can use any code that others have written in Python. There are tons of tutorials for free online. Go to www.python.org Naming convention is that functions start with a capital letter for the first word but variables lower case? You can define your own naming conventions, just remember that Python is case-sensitive, so a variable called “Height” is not the same as a variable called “height”. You are calling vs. functions - does that mean that the whole thing is dependent on vector script macros? (also: What is the relationship between Python, VS, and the core of VW?) VectorScript was the first scripting language for Vectorworks. Python was added a few years ago and calls into the core of VW using the same functions. Another way of saying this is that the Vectorworks Python interface uses the same API as the Vectorscript interface. We had hundreds of functions that had been exposed over the years to allow VectorScript to control Vectorworks. When we created the Python system, we made these all available. The good news here is that if you already know Vectorscript, you’re already familiar with a great deal of what you need to be successful in Python. Where do you find the list of definitions, i.e. T=type, PON=pluginobject name, etc? (also: To identify the parameters within Vectorworks, how do you find out that PON means plugin object name, for example?) These are VectorScript criteria. It’s probably a good idea to become familiar with the VectorScript / Python developer page at http://developer.vectorworks.net/index.php/VectorScript . The “function reference” available at that page gives you a listing of all the function calls available in VectorScript/Python interface to Vectorworks (its “API”). There’s also an “appendix” which lists a lot of constant values (in this case criteria values). See also http://developer.vectorworks.net/index.php/VS:Search_Criteria How, in general, do you identify the APIs available out there on the internet? VERY general question, I know! Python is popular among thousands of developers in various industries. There is an incredible amount of free code out there. I would just do a google search, and also go to www.python.org . What is a "namespace"? It is a "chunk" of definitions (functions, types, ect,). It's a way to stop confusion resulting from duplication of names. Here is general overview: https://en.wikipedia.org/wiki/Namespace Is there a way to specify WHICH Heliodon to use, if there is more than one present in a file (for the purposes of shadow studies/renderings)? There are several ways to do this. Name the heliodons, for example, and get a handle to the heliodon of interest based on its name. Demo files and video links added to original post. Edited February 22, 2016 by JimW Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.