Here's a first attempt at a plugin to build a set of pages that show one component each, ready for Layout to embed and dimension etc.
Usage
Select one or more components - even inside another component - and from the plugin menu 'Build Component Scenes'. You should see a number of pages appear, each named after the components chosen, Each page will have one component visible on a layer named after the component. When you open the model in Layout you will now have a nice convenient way to do individual component drawings.
I've tried to make this idempotent - if you repeat the command you should get the same results each time with no interference between the sets of pages. Pages seem to be happy to share names whereas Layers seem to prefer unique names and there shouldn't be any clashes.
The current To-Do list is
Make this an extension later http://sketchupapi.blogspot.ca/2011/07/turn-your-plugin-into-extension.html
Package as an RBZ file http://sketchupapi.blogspot.ca/2011/12/rbzs-in-sketchup-8m2-distribute-your.html
Do not make scenes for duplicate components
- (how to decide this? scaling, shearing and flipping in the component transform can make two apparently equivalent components NOT duplicates).
Make undo/redo friendly.
- first pass at this is to wrap the main routine in start/commit_ operation
but it doesn't remove created pages and
SU crashes completely if it tries to undo a lot of component pages
Find a way to close any open component edits after making the component pages so that the components don't appear to be missing; you could argue that the user should understand but never underestimate the confusion of users. On hold for now because it would surely annoy users to lose an edit deep inside a complex model
Updates for v0.3
- attempt workaround for active_view.zoom failing to actually zoom to the chosen component
Updates for v0.2
- Wrapped routine in start/commit_operation, which speeds up dealing with many components.
- Zoom to extent of component when making the page.
Download ComponentScenes
version 0.3