SU Feature Request - Sections
-
@thomthom said:
@bmike said:
If I could give the cut a name (S1, Wall A, Floor 1, etc.) and could control visibility in the outliner or on a tool palette, I think my workflow would improve... and I'd spend less time zooming, panning, activating, and then getting things back to the proper view...
You can set up Scenes that only toggles section cuts on/off.
Yup, I'm doing that no problem.
I set up 10-20-30 scenes then open LayOut to detail, setting up views with the corresponding scenes for building sections, etc.What I'm asking for is:
Way to assign labels / data to section cuts. I'd like to be able to click a cut and see in entity info a 'name', just like any other group / component in SketchUp. This way I could name them after creation - 'Floor1', 'Wall A', Beam Detail 2c', etc. Ideally they would come in with a default, much like components - 'SectionCut1', etc.
And, a tool palette or visibility in the Outliner so I can work with section cuts just like I do any other object. If there were a tool palette, I'd be able to click the name of the cut, it would highlight in my model, then I could 'Make Active', Reverse, delete, Create group from slice, etc. etc. - the cuts would behave in the same logic as most of the other entities within SketchUp.
-
A Section manager, heh? Not a bad idea. Off the top of my head, most of what you ask for could be done wth a plugin.
-
@jim said:
A Section manager, heh? Not a bad idea. Off the top of my head, most of what you ask for could be done wth a plugin.
Except that you can't set/get the active section cut...
-
That's just one of the big chunks missing from the API http://code.google.com/apis/sketchup/docs/ourdoc/sectionplane.html - there's virtually nothing to do with SectionPlane objects - except .get_plane & .set_plane to retrieve or change a SectionPlane's 'plane'.
You can get a list of SectionPlane objects [by a sift of their 'entities'] BUT you can't find which is the active one or set one to be the active one, or [easily] make one, etc - e.g. unlike Pages [scenes] etc where you can.... -
Even creating them requires a hack of importing a component with a section cut in it.
-
Sounds like this is on the Google Guys and Gals to address...
Thanks for commenting - pretty maddening with 30 section cuts in my last model to zoom out, activate, zoom back, set the view, save or update the scene.I tried using layers to help manage, but it gets messy...
-
All true, but just being able to name Sections, list Sections by name, and select Sections by name would still improve bmikes's workflow.
-
@jim said:
All true, but just being able to name Sections, list Sections by name, and select Sections by name would still improve bmikes's workflow.
True, and that would be possible by using attributes.
Though, listing section cuts would require to iterate the entire model... -
Even worse!
Iterate all model.entities AND all definitions' definition.entities !
Then when you have the list what can you do with it ? -
Does iterating everything and creating a list of references really take that long?
You would then list the section cuts by name in a WebDialog. Or use an Observer to list only Sections in the current context, and allow selecting them by name from the list.
One of the main problems was being able to select close Sections:
@unknownuser said:
In a model with 15-20 section cuts, some closely spaced, its near impossible to select, right click, and 'Make Active' the specific cut that you want.
You would still need to use the context menu, but at least getting Sections selected could easier.
Giving them names is just a convienence.
-
But as I said... no matter how quick or how slow getting the list of sections [by name] is, what can we do with them once we have them ? Dam' all ??
Incidentally... you could set up an entities-observer on model.entities and all definitions' definition.entities [including any new definition that's added, using a model.definitions-observer, to add an observer to that new definition.entities !]... that observer would spot if you added a SectionPlane and if so ask for a name and add that as an attribute to the new SectionPlane.
In this generated list of SectionPlanes:Names we could set/reset their names - e.g. add a name to a 'unnamed' one, BUT we can't [currently] do much else, other than get and set its plane...
-
@jim said:
Does iterating everything and creating a list of references really take that long?
Consider a model with 500K faces and 2 million edges - yes, I often have those. (Either interior models or large site models)
That'd mean many many iteration and your loop doesn't have to take long before it produce a noticeable lag. Especially when you talk about dealing with strings, which a drop-deal slow.It's why I posted the call for attention regarding validation procs and context menu handlers, some plugins spend all too much time iterating the whole selection which cause an annoying lag that eventually interferes with the modelling experience. http://forums.sketchucation.com/viewtopic.php?f=180&t=31788
-
Here's an image of the last model I detailed up.
19 section planes, some of which point in different directions.Note that the graphics SU uses don't seem to be user scalable, so when you zoom out, the arrow indicators get larger relative to your model, and multiple section cuts overlap, especially when cuts in this model only 2' away from each other point in opposite directions.
Also, when zoomed in you very often can't see the 'edge' of the cut to activate it.
-
The 'section-plane list' dialog could select [i.e. highlight] the 'ticked' section-plane [picked from the list listed 'by name']... BUT then you'd have to make it 'active' manually [at least at the moment the way the API is]...
-
@tig said:
The 'section-plane list' dialog could select [i.e. highlight] the 'ticked' section-plane [picked from the list listed 'by name']... BUT then you'd have to make it 'active' manually [at least at the moment the way the API is]...
Hide the other section cuts?
<span class="syntaxdefault"><br />def display_sectioncut</span><span class="syntaxkeyword">( </span><span class="syntaxdefault">sectioncut </span><span class="syntaxkeyword">)<br /> </span><span class="syntaxdefault">all_section_cuts</span><span class="syntaxkeyword">().</span><span class="syntaxdefault">each </span><span class="syntaxkeyword">{ |</span><span class="syntaxdefault">s</span><span class="syntaxkeyword">|<br /> </span><span class="syntaxdefault">sectioncut</span><span class="syntaxkeyword">.</span><span class="syntaxdefault">visible </span><span class="syntaxkeyword">= ( </span><span class="syntaxdefault">s </span><span class="syntaxkeyword">== </span><span class="syntaxdefault">sectioncut </span><span class="syntaxkeyword">)<br /> }<br /></span><span class="syntaxdefault">end<br /></span>
Advertisement