Phileas Posted May 2, 2019 Share Posted May 2, 2019 I have a question about something I'd like to do using the marionette tool so I can easily modify the parameters afterwards: The big polygon is the outline of a terrace I'm building. It's a 5cm thick layer of concrete, sloping down at 2%, that is set to be covered by 4cm thick stone tiles. These tiles are set to be 50cm x 50cm, and the is a space of 0.5cm to be left between two tiles for the joint. The thing is: These dimensions will certainly vary, so I'd like to make them a parametric object so I can modify them in one click later on. second point: obviously, the tiles won't fit in perfetly in this shape, some tiles will need to be cut at the edges. So I'd like to be able to tell VW "fill this surface with these tiles while respecting the spacing, cut them at the edges if needed, have them lie on top of the concrete slab and follow the slope." How would you do this using Marionette? I know I can later on wrap up all the nodes within one single node, and specify what the parameters of my object are. Anyone who knows his way around Marionette who cares to help me? Quote Link to comment
Marionette Maven Marissa Farrell Posted May 2, 2019 Marionette Maven Share Posted May 2, 2019 I can help you! Could you send me a file with that base shape? 1 Quote Link to comment
Phileas Posted May 2, 2019 Author Share Posted May 2, 2019 @Marissa Farrell Sure, here you go: Base Shape.vwx Quote Link to comment
Marionette Maven Marissa Farrell Posted May 2, 2019 Marionette Maven Share Posted May 2, 2019 So - I've gotten started on this, to the point where you can cut the rectangles down to size. The slope won't be taken account in this revision. There is currently an issue where there are multiple coincident objects remaining (I'm looking into that now, it's a result of a Planar Boolean node but that we haven't yet solved) I have not extruded the "tiles", they are just polys at this point. I wrote the script in 2019, but exported back to 2018 since the file you shared earlier had to be converted to 2019, so I assume you're using an older version. Everything *should* work, but please let me know if you find otherwise. Base Shape_MFarrell.vwx 1 Quote Link to comment
Phileas Posted May 2, 2019 Author Share Posted May 2, 2019 @Marissa Farrell Thanks for everything, your help is very appreciated, as I'm only getting started with Marionette and sometimes even find myself having trouble understanding what you did lol 🙂 But it works! Thank you for the transcription to 2018 too, that's the version I currently have. Concerning the slope, that's the least important thing I'd say, if it happens to be too much of a complication feel free to ignore it 🙂 I have one big question tho: Do I understood this right: You used a Dim node to set both the width and the height of a tile, since they are the same (?). That means that if I wanted to wrap up the nodes now, I'd only be able to make the tiles bigger or smaller squares, but never rectangles with a different width/height right? Cause I'd only get 2 parameters: TileDim and Spacing (if I got this right) I'd happily make the adjustment myself, but I don't quite understand everything that's going on starting at the 2 sequence nodes in this image (I'm a bit embarassed, but I'm still an absolute newbie to Marionette). I don't want to use up even more of your time, so I'll try to figure out the logic behind these nodes on myself and update when I have more precise questions. A big thank you again! Quote Link to comment
Marionette Maven Marissa Farrell Posted May 2, 2019 Marionette Maven Share Posted May 2, 2019 2 minutes ago, Phileas said: Do I understood this right: You used a Dim node to set both the width and the height of a tile, since they are the same (?). That means that if I wanted to wrap up the nodes now, I'd only be able to make the tiles bigger or smaller squares, but never rectangles with a different width/height right? Cause I'd only get 2 parameters: TileDim and Spacing (if I got this right) Yes, that's correct. I'll throw together a change with independent width/height for the tiles. 1 Quote Link to comment
Marionette Maven Marissa Farrell Posted May 2, 2019 Marionette Maven Share Posted May 2, 2019 Base Shape_MFarrell_v2.vwx 1 Quote Link to comment
Phileas Posted May 2, 2019 Author Share Posted May 2, 2019 @Marissa Farrell Thank You very much for your quick answer! Quote Link to comment
Phileas Posted May 2, 2019 Author Share Posted May 2, 2019 @Marissa Farrell OK so I'll try to explain what I understood, I'd be very thankful if you could correct/complete my explanation: first, get the bounding box of the containing shape by giving it a name and using a name node and a "get bounding box" node. use the two extreme coordinates of that bounding box to make a rectangle out of it. Get the 2D center of that rectangle with a "get 2D center" node, as well as the height, the width and the XY coordinates of the bottom left corner of that rectangle using a "get rectangle" linked to a "get XY" node. Then delete that rectangle with a delete node. you then create the tiles by using a "rectangle" node and the two parameters "Width" and "Height" You now need to make 2 sequences. Both start at the XY coordinates of your bottom left corner (I'll call that point the origin from now on). To get the stopping points, you added the width (or the height respectively) to that origin using "add" nodes, and linked them to the stop inputs of the sequence nodes. Concerning the steps, you used the added value of the width (or height) and spacing, all three of these values being my parameters. If I understood that right, you had to add the spacing to the 2 other parameters each time because otherwise the tiles would not have been separated right? you then get the exact amount of tiles that need to be placed by using the math nodes after the 2 sequence nodes. I think I get that. By mixing the 2 lists into one you get every 2D point where a tile needs to sit you then move duplicates of the tile rectangles to everyone of these loci I have to admit that I didn't manage to understand the rest as I don't even know most of these nodes 😞 If you still have time to spend on my case, I'd be glad if you could help me understand the logic behind the rest better 😞 Quote Link to comment
Marionette Maven Marissa Farrell Posted May 2, 2019 Marionette Maven Share Posted May 2, 2019 You're definitely on the right track! I'll try to find some time later today or tomorrow to write up what's happening. I'll also look into chunking the network into wrappers to make it easier to understand in parts 🙂 1 Quote Link to comment
Phileas Posted May 3, 2019 Author Share Posted May 3, 2019 @Marissa Farrell Thank you very much again! I really want to improve in marionette so I can do stuff like that on my own later 🙂 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.