This is a little (probably not too serious) plug-in I wrote over the weekend for adding a very basic level of exploded view functionality. I’m not sure how useful it actually is, or how much effort I’ll be able to pour into it after today, but feel free to give it a twirl.
Plug-in comes with six commands:
BeginExplosionRecord: Assign an explosion trajectory to one or more objects. Selected objects will be hidden and orange duplicates will be added to the model. Transform the duplicates as you see fit, though note that only combinations of move and rotate are properly handled. I cannot guarantee that scaling, tapering or shearing transformations will be retained. Also do not modify the orange objects via control-points, only transform them as a whole.
EndExplosionRecord: When you are done transforming the orange objects, run this command to ‘save’ the transformations.
Explosion: Apply the exploded view transformation to all selectable objects that have exploded transformation data. Hidden and locked objects will remain unmolested. Note that this command does not modify the original objects, instead it hides them and puts duplicates in the model.
Implosion: Apply the inverse exploded view transformation to all selectable objects.
ClearExplosionRecords: Remove exploded view data from selected objects.
DisplayExplosionRecords: Draw a wireframe preview of the exploded end-state of all selected objects.
Trajectory data should be copied and transformed correctly along with objects, so if you Array or Copy or Mirror an object with a trajectory the new objects will also have trajectories.
ExplodedView.rhp (19.5 KB)
You’ll need to unblock this file before loading it. (Sorry, discourse will not allow me to upload RHI installers).
thanks! This could be very useful, I’ll give it a try this evening.
Cool! Nice transitioning between positions too.
Nice. Can we have the source also please ?
Sure, I can put up the source once I’m sure I won’t make huge changes to it any more.
Thank you so much.
I just want to learn how to write plugins for Rhino.
Thank you, David !
Another useful (not so) little feature that was missing in Rhino.
Woo hoo! My students are going to LOVE this! Thanks David! --Mitch
If anyone has any ideas on how to improve the trajectory picker, please let me know. At the moment it’s really cumbersome to use for anything more than a small number of different trajectories.
This is FANTASTIC! would love to see if the trajectories can be mapped along a curve during explosion/implosion.
The animation is just a joke really, the purpose of the plugin is to switch between regular and exploded views, not to provide a set of animation tools. I sympathise with the sentiment, but I think that way madness (and feature creep) lies.
Mostly what I would like to do is have better ways to define the trajectories (perhaps also allowing for scaling and other transformations?) and better ways to inspect trajectories already assigned. It’s a bit of a shame that I had to recreate a movement and rotation UI, it would be nice if somehow I could fall back onto all the commands Rhino already provides for transforming objects. I’m just not sure how yet.
I cannot unblock the plugin, Windows 10 & Rhino5sr12
I keep getting this error while trying to unblock.
Wow even Google isn’t much help here, seems like you’re one of the few people lucky enough to get this error. I’m sorry, I have no idea what the problem could be, though I suppose it should work better if I upload an RHI file instead of an RHP file. I shall endeavour to do so with the next release.
Thanks, I may see if a restart helps almost finished my work. Looking to try this out.
Yes, I feel that this will be necessary to make this truly useful. And I cannot see any simple way of accessing move, rotate, and scale information with the existing Rhino tools. I am more leaning towards something like the Bongo UI where you have keyframes that store the information that is accessible through dialog boxes.
Sure, if you have Bongo installed you don’t need any of this stuff. And I’m certainly not going to try and duplicate any Bongo features, that would be pointless since we already have Bongo features through Bongo.
The way I see this Explosion/Implosion logic is very similar to Hide/Show and Lock/Thaw. It’s just two states the object can be in and this plugin allows you to toggle between them. It is complicated somewhat because I really don’t want people to have to actually move the original object, nor do I want the commands to move it. Object positioning can be difficult to get right and messing with it can be a terrible idea if something goes wrong.
I’m thinking now the solution is to create a duplicate of the original object, and this duplicate can be modified at will and eventually deleted. It can persist between commands and all I need to do is keep track of the transformation applied to the duplicate, and make sure to channel them to the original.
I don’t understand. Do you mean dashed lines?
Well I got it working by downloading new copy on my Mac. No need to unblock file now.
Loaded fine, will be playing in a bit.