Jump to content
Developer Wiki and Function Reference Links ×

Add Solids with Marionette

Recommended Posts

I'm trying to make some simple cubbies (basically just a grid of horizontal and vertical extrudes) using Marionette, but I can't seem to just simply add all of the extrudes together to create a solid addition (so that all of the joint lines won't show).  I've tried using the Solid Boolean node in a variety of ways, but, the best I can do is create four, or more, coincident solids (see attached), when all I want is just one solid.  Is there a node to just simply add solids together, or a way to use the Solid Boolean node to do this?  Thanks!

07-Add Solids-04-00.vwx

Link to comment

The description for the Solid Boolean node says "The operation will be performed for each possible combination of objects in the lists supplied."  I guess they really meant it.  What ended up working was exploding the lists of all the solids that I was trying to add, and then adding them to each other one at a time (see attached, in the two big light green wrapper nodes...).  


Could a node be created that simply adds all the solids in one step?  


Or is there a better way to do what I've done, with the current nodes?


Link to comment
  • Marionette Maven

Although not ideal, one way you can do this is to use the Pop Front node and wire the Item port to hObj1 and the rest of the list to hObj2 (screenshot below)

How the Solid Boolean node works is that the first port is the "blank" and the second port is the "tool." The node will cross reference these lists, as you've noticed, to create as many combinations as possible. If only one item is fed into the first port, then the objects will all be added to/subtracted from/intersected with that first "blank" item.



Link to comment

@Alan Woodwell Thanks for the cabinets; I learned a few things looking at your various scripts.  And I've wrestled a little with which is better: more scripts / Marionette objects with fewer OIP options, or, fewer scripts with more OIP options?  Looks like you went with more scripts, each with limited options.


@Marissa Farrell The "Pop Front" node seems at least a lot more ideal than what I was doing...  I realize that if more than two items are put into the "hObj1" port of the "Solid Boolean" node for subtraction or intersection, it can't know which to act on.  Maybe the node could be updated so that if "Add" is selected in the OIP, it simply adds all objects as a single object, regardless of how many objects are fed into the first port?  Or, alternatively, a separate "Solid Boolean - Add" node?  Now that I understand how the "Solid Boolean" node works it all makes perfect sense, though maybe it could be a bit more intuitive...


In the meantime, the "Pop Front" node is a significant improvement: a lot fewer wires and nodes, and, no limit as to how many rows or columns of cubbies there can be!



Edited by willofmaine
Link to comment

Okay, thanks for these, though I'm getting the feeling my script isn't ideal?  But I'm not sure why... it allows for both setting the wall thickness and for adjusting the number of cubbies each way, and, assuming the nodes in the duplicated wrappers only need to be counted once, it does it with fewer nodes...

Link to comment

I don't think there is a right or wrong way to do these networks, just different ways as long as you get the result you need. In these days with computers with huge processing power it doesn't really matter. 

Ideally one might reduce the amount of time that a program takes to perform some task at the price of making it consume more memory. In an application where memory space is at a premium, one might deliberately choose a slower algorithm in order to use less memory. Often there is no "one size fits all" design which works well in all cases, so engineers make trade-offs to optimize the attributes of greatest interest.

Nice work though, its always a challenge for the brain which i like.

Edited by Alan Woodwell
Link to comment
  • 3 years later...

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.

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...