Jump to content
Developer Wiki and Function Reference Links ×

IFC Help Needed


1608chris

Recommended Posts

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

Link to comment
  • Vectorworks, Inc Employee

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.

Link to comment

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

Link to comment
  • Vectorworks, Inc Employee

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.

Link to comment

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.

Link to comment

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

Link to comment
  • Vectorworks, Inc Employee

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

 

Link to comment
  • 2 weeks later...

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.

Link to comment

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...