1608chris Posted April 27, 2021 Share Posted April 27, 2021 Hi, I'm new to Marionette and am trying to get it to correctly retrieve IFC information so that I can automate the creation of window accessories. I'm using the Get IFC Property node but cannot get it to spit out the right results. I can see from the IFC Data... inspector under the AEC menu that the reference for my windows exists here "[Object.VW_Name] ELSE [Object.IDPrefix] + [Object.IDLabel] + [Object.IDSuffix] ELSE 'Window' " But this string does not work as an sIFCPropName. As a test I've also set up another node simply to look-up "Object.OverallHeight". Neither respond in the string with anything other than "<Unknown Value>". What am I missing here? I think it's a syntax issue (mine), but it's really very unclear how I can setup a successful query. Any help gratefully received! My brain hurts....🤕 Chris Quote Link to comment
Vectorworks, Inc Employee SBarrettWalker Posted April 28, 2021 Vectorworks, Inc Employee Share Posted April 28, 2021 If you are using Vectorworks 2018, then I believe the menu command you are looking at is IFC Data Mapping. What you are seeing with "[Object.VW_Name] ELSE [Object.IDPrefix] + [Object.IDLabel] + [Object.IDSuffix] ELSE 'Window' " is the Field Value that is generated from pulling information from the Window object itself. With the Get IFC Property Node, you need to input the Field Name in order to get the Field Value. I believe in your example, the Field Name is Reference or IFCReference or something along those lines. When you input that into the node, the output will be the string value for this formula: "[Object.VW_Name] ELSE [Object.IDPrefix] + [Object.IDLabel] + [Object.IDSuffix] ELSE 'Window' ", or whatever the Field Value may be for the particular object you are querying. Quote Link to comment
1608chris Posted April 28, 2021 Author Share Posted April 28, 2021 Thanks for getting back to me. I'm using 2021 and attach a scratch file I've been using just to try to harvest the IFC information I need to generate cavity fire barriers around windows in construction. I believe I have put in the right Strings for IFC data for the 'Object.OverallHeight', 'Object.OverallWidth' and 'Object.VW_Name' but only get unknown values generated. What I'm trying to do is size the cavity barriers from the overall dimensions and to generate their names based on the window unit reference, so all can be traced + signed-off on site. I hope that makes sense? Cavity Barrier.vwx Quote Link to comment
Vectorworks, Inc Employee SBarrettWalker Posted April 28, 2021 Vectorworks, Inc Employee Share Posted April 28, 2021 To get the right values, type the field names into the String nodes exactly as you see them here: I have updated the file. Cavity Barrier-SB.vwx Quote Link to comment
1608chris Posted April 28, 2021 Author Share Posted April 28, 2021 Brilliant, thank you! That's really unlocked it, I was just unsure whether there was any specific syntax to these queries as I'd seen people refer to IFC Fields in quotes or square brackets. Just one last thing, is that 'Choice Item' node required? Quote Link to comment
Vectorworks, Inc Employee SBarrettWalker Posted April 28, 2021 Vectorworks, Inc Employee Share Posted April 28, 2021 No, it is not necessary for the particular network you are creating, but if you want to look for specific types of IFC objects, that is a helpful node. The other thing I did was change the info in the Obj by Criteria node. You can't run a network on selected objects, because a node within the network always has to be selected for the network to be run. The only way to use Marionette on selected objects is to convert the network to a Menu Command. You can do this once the network is complete, but while you are building the network, the Obj by Criteria cannot refer to Selection State. Quote Link to comment
1608chris Posted April 30, 2021 Author Share Posted April 30, 2021 Thanks for clearing that up too, I had been getting errors when switching to the selection criteria. I've another quick question about this sort of conversion of the networks in to menu commands - how do you programme the menu command to offer up the OIP input options prior to running the script? Once a menu command, my network just uses my default input values without opportunity to alter these. Quote Link to comment
1608chris Posted April 30, 2021 Author Share Posted April 30, 2021 For context I attach my work in progress. I'm also having problems with the records this produces, as although I resorted to using nodes to force input values to integers prior to them being added to the record, the resultant record just says '<field value>' rather than anything useful. Apologies again for all the questions, but I am totally new to all this. Thanks for your help so far. Cavity Barrier.vwx Quote Link to comment
Vectorworks, Inc Employee SBarrettWalker Posted April 30, 2021 Vectorworks, Inc Employee Share Posted April 30, 2021 I made some changes to the network. Mainly, instead of having the object sent through lots of different Set Record Field nodes at once, I had them pass one through the other. This may not have been necessary but it seems to have fixed the problem. Also, there were a few of the Set Record Field nodes where the Record Name string was not attached. In order to convert this to a menu command and have the fields pop up (instead of being available in the OIP), you can replace the purple Input nodes with User Interaction nodes. There is a User Interaction folder at the bottom of the list of Marionette node folders. These nodes produce dialogs that pop up every time you run a network. Cavity Barrier-SB2.vwx Quote Link to comment
1608chris Posted May 10, 2021 Author Share Posted May 10, 2021 Sarah, just a quick thank you for your help with this. With a bit more sweat I got the task completed and have been able to schedule out ~1000 cavity barriers for a project, so your help was really appreciated. Out of interest is there a way to build a menu dialog with nodes? As last formatted my network would ask for 5 bits of information independently whereas it'd be preferable for this to all be set from one box. 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.