Olaf Pfeifer Posted October 28, 2019 Share Posted October 28, 2019 (edited) Hi, sorry, but I cannot find out how to write my marionette object's parameters into database records (or worksheet cells), which was my reason to create them – can someone point me in the right direction? I wasn't able to find example scripts ... My objective is to create a door schedule that uses simple, 2D, self-made, non-IFC door symbols with data stamps, to be placed on 2D-drawings (draftsperson does not use walls, just lines). Most parameters will be strictly database records that never appear on the drawing, but WIDTH, WALL THICKNESS, and OPENING DIRECTION (L/R) should be 'hard-wired', i.e. taken from the plan, in order to avoid common mistakes. My first approach was to calculate opening WIDTH and wall thickness from the bounding box of the door symbol/group. This works fine, but only as long as the wall layout is strictly cartesian and the doors are not rotated or mirrored. Also, we would like to use door symbols that are larger than the opening width (including frames etc.), so we would no longer be able to calculate the width from the bounding box, wich seems to be all a worksheet can access. Or is there a way to access data from objects INSIDE a group that is listed on a worksheet? So I created a marionette object that draws the door opening based on parameters, because I expected it would be easy to access those parameters from a worksheet or to write them to an attached database record ... but I find that task surprisingly difficult. Am I missing something? So far, my marionette network, run as a wrapper, can draw a door based on two parameters OPENING WIDTH and WALL THICKNESS, and attempts to attach a pre-defined database record to that object, where it correctly fills the fields for wall thickness and opening width. However, the result is a simple group (not a PIO, so it cannot be manipulated by parameter later), and it is nested twice in otherwise empty groups, unnecessarily. If I convert the wrapper into an object node, it becomes the expected parametric plug-in-object that I can modify later, but it does not attach a database record to itself or writes its data to a record that I attach manually. What am I doing wrong? test door database.vwx this is what the door symbol plus tags should look like this is my marionette object node (so far, without tags, but okay ... if it only wrote to the database !!! Edited October 28, 2019 by Olaf Pfeifer spell check & fine tuning :-) Quote Link to comment
Marionette Maven Marissa Farrell Posted October 28, 2019 Marionette Maven Share Posted October 28, 2019 Hi! So if you want to attach the record to the outer container (the Marionette Object) you should use the PIO Handle node (Parent PIO when placed in the drawing) Wire that into the hObj port of the Set Record Field node and then tie the network together with a pass node at the end. I think this is what you're hoping for? 2 Quote Link to comment
Olaf Pfeifer Posted October 28, 2019 Author Share Posted October 28, 2019 Thank you, Marissa! Is "Parent PIO" the same as "GetParent" ? I can only find the latter in my marionette library ... Quote Link to comment
Marionette Maven Marissa Farrell Posted October 28, 2019 Marionette Maven Share Posted October 28, 2019 You want "PIO Handle" Quote Link to comment
Olaf Pfeifer Posted October 28, 2019 Author Share Posted October 28, 2019 Awesome! Thank you so much! It works !! 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.