One of the fundamental areas of ongoing Factory research is selection. There is a lot more about this to write, but I have a (seemingly) simple question I wanted to get some quick feedback on. Here is the scenario:You are working on a project in schematic design and you are in the Core Workset. You have checked Editable Only in the status bar so you are sure to only select elements in the core. You right-click on a Generic - 12" wall in the core and Select all Instances. All walls of that type in the model are selected (including the Generic - 12" walls in the Exterior workset, which is not currently editable.) Does this match your expectation? Or, would you expect Select all Instances to respect what is checked in the status bar? To phrase the question in more fundamental terms: Do you see Select all Instances as an extension of the Modify tool or as two independent tools?
_tom
This is an issue that has nailed me hard - and everyone else I know. Select ALL instances is so dangerous that we teach everyone NOT TO USE IT - on pain of death.
I would like it to mean "All visible instances" and if I want to really make changes to the whole project, I will go to a 3D view of the whole model and make my selection there.
K
Posted by: kdjanz | June 25, 2009 at 02:25 PM
Thanks kdjanz, the visible instances selection is a common request and we are looking into it. To clarify, by visible, you mean all instances in the current view, correct?
Also, to my original question, even with select all visible instances, would you expect that tool to be constrained by the Modify options in the status bar?
Posted by: Tom Vollaro | June 25, 2009 at 02:30 PM
It should be a default All Instances VISIBLE in the current view, which means that hidden elements would not be included either.
It should also be an option to select all instances project wide, but a deliberate and secondary choice.
Posted by: Steve Stafford | June 25, 2009 at 02:34 PM
I would like three options:
1. Select All Instances... (global)
2. Select All Instances in this view
3. Select All Visible Instances in this view.
Or a check box in the Options bar to have the select all instances be view specific.
Never though of using Select all instances with the "editable only"...
Posted by: Tony Isenhoff | June 25, 2009 at 03:15 PM
Being part of modify is fine. The right question is: Is the tool usable and intuitive, to which the answer is clearly no. I can confirm that it "is so dangerous that we teach everyone NOT TO USE IT". It is good to hear that the factory is focusing on "selection". A robust hierarchical and flexible selection system would save so much time and effort people will love you for it. There are a lot of good examples out there, look at "refine search" on the left pane of Ebay for instance. We need to see numbers against each sub-selection category, we need to be able to select ranges, use and/or logic, involve levels, phases, filters and most of all: parameters. There is a third party application available: http://toolbox4revit.com/int/media/screencasts/FT/FT09_Usage/FT09_Usage.htm, but there is so much more you could do with this...
Posted by: Balazs | June 25, 2009 at 03:41 PM
"Extension of the modify tool."
Not two separate tools.
Though, to be honest I always forget that check box is there. Can you give it a default-like behavior similar to Press and Drag?
It would seem to be silly to have to recheck the box before we select an object and select all instances. Or instead, add to Tony's list with the editable only option in the right-click menu.
Posted by: Donnie | June 25, 2009 at 03:52 PM
I also warn people to use the tool very carefully during training (but not on pain of death)
my 2c (from right click on view and project browser)
Select Instances >
All
Current Workset
Current View
And as a general improvement to help with the transparency of this tool (and Revit), have a counter next to the types in the project browser.
e.g.
Door > Exterior Door > 910mm x 2100mm (2)
Category > Family > Type (NUMBER OF INSTANCES)
Posted by: Matthew Pettengell | June 25, 2009 at 05:20 PM
Tricky question. I never thought about the issue you posed with editable worksets. I guess one thing to consider (since there's general consensus that "Select all instances" is so dangerous) that perhaps "select all visible instances in view" should be the only right-click option when invoked on an object in a view (both model and detail elements). If you're in a 3D view and the whole model shows up, then in essence you're doing a select all instances. To purposely select all instances, I would leave the right click option in the family tree. So for example when right-clicking the wall Generic 12" in the tree, you would have the option to select all instances of that wall.
Posted by: David Baldacchino | June 25, 2009 at 05:41 PM
"Also, to my original question, even with select all visible instances, would you expect that tool to be constrained by the Modify options in the status bar?"
Yep, it should be constrained to what is actually editable. Also the option to select only what is in the current view is very important, and should be the default.
Posted by: Robert M | June 25, 2009 at 06:32 PM
I guess I haven't really found myself thinking about whether I need to select objects on a particular Workset, so it might not really be such a big issue for me. Although, if the option was there I would probably use it.
If there was, then I would like to see a selection option like what is in the right-click menu for Design Options, "Select All Instances in Active Option".
I also agree with David in that I would be happier to have the Select All Instances ONLY in the Project Browser. I share the same sentiment that others have already mentioned that it is a dangerous selection option.
Rule of thumb, tools/options in the right-click menu should be view specific only. Tools/options in the Project Browser should be globally.
I like the way that Matthew has indicated. Here's my take on it;
In the Project Browser;
Select Instances >
All
Current Workset
Current Design Option
In the View;
Select Instances in View >
All
Current Workset
Current Design Option
I have some other selection features to also address;
1. In the Filter dialogue, being able to select sub-categories/families of objects such as Walls, Lines etc.
2. The ability to create selection sets. I don't need the ability to save them, but more for in the moment.
For instance, I should be able to select all Walls of a particular Type in the current view, and then add to that selection all Walls globally of another Type.
Posted by: Chad | June 25, 2009 at 07:04 PM
Since Editable Only is about how things are displayed, then Select All Instances should indeed select all instances in the model, since it transcends the current view. However, I would presume that items not editable cannot be manipulated, so the potential for damage is not really any less that when Editable Only is not checked.
Not to downplay its deadliness! I too long for a "select all in current view", but would not expect it to be only those things that are visible in the current view.
Since Select All Instances is so destructive, we are more apt to do a crossing window across the entire view, and then use the filter dialog to constrain down to object category. This has a couple of drawbacks, though:
* One cannot limit the selection set to a particular family or type, only a category.
* Even worse, it is dog slow. If I could set the filter before creating the selection set to filter, then it would be much better since the display of the entire view would not have to update. Autocad and max both allow this, and it can be a big time saver
I think that creating a selection set is an act distinct from acting on those objects. Selection does imply that modification follow, but I dread the contextualization that comes from combining the two. But then I also think that all editing commands should function whether or not there is an active selection set; a little flexibility in invocation would allow a more fluid use.
One thing I'd love to be able to do is, once a selection set is dialed in, to right click a quantity takeoff or schedule and select "Open with current selection set", and get a view, outlined in red to signify it's partial state, that gives me data about those arbitrary elements. So I can quickly see that these elements have these properties and will cost roughly $x. This would be a bit like allowing a temporary hide within a schedule view.
Posted by: Joel Osburn | June 25, 2009 at 07:15 PM
I would like an option to select just the elements in the current view or throughout the model. With the elements in the current view as the default.
Posted by: McKinley | June 25, 2009 at 10:31 PM
I agree with many of the comments already...we need a variation of Select All Instances. Selecting ALL (visible or not) has its place say if you want to swap out a place-holder, so it shouldn't be removed completely. But like many have said, having selection per view, workset, design option is needed.
I like the idea of having ALL in the right-click from the Browser only. If you do it (right-click) from the View, maybe it’s a fly-out like the Hide in View is. Example: Select All Instances->In View, Visible in View, In Editable Workset, In Design Option. Maybe Editable and Design can be grayed out if they are not active?
Posted by: Dwane Lindsey | June 25, 2009 at 10:32 PM
Thanks for all of the responses. Point taken and noted about the relative danger of the current Select All Instances tool and the need for Select All Instances in View.
Posted by: Tom Vollaro | June 26, 2009 at 12:04 AM
Just one more things while on the topic of selection.
Instead of having to select a single object and then a secondary process such as a Ribbon button or right-click menu to get to the properties, add the ability to double click an object to access it.
Posted by: Chad | June 26, 2009 at 01:44 AM
In autocad, I turn a bunch of layers off. I press Ctrl-A to select all, and only visible objects are selected. This is how it should be.
Revit should behave in the same way - 'Select All' should ignore unloaded worksets and ignore the current view. 'Select All in View' Should restrict it to the current view.
Generic 'Select All' is a dangerous tool. If I had the above two tools, I'd hardly use it.
Posted by: x-p | June 26, 2009 at 04:34 AM
Oh, and inspired by a couple of posts upthread, 'schedule this family' and 'schedule this category' commands would be nice :)
Posted by: x-p | June 26, 2009 at 04:36 AM
Glad you are looking at this. I agree with many of the posts here. Select All Instances is dangerous as currently implemented. Would love to see some of the options noted here like select all in current view and select all visible. Thanks.
Posted by: Paul Aubin | June 26, 2009 at 07:31 AM
Too me it seems the critical issue here is not the functionality, but how the functionality has been labeled. Being able to select all instances within the project is useful at times, but as has been illustrated, can be quite destructive too. As you mentioned, selection is a big thing, and as I think you suspected, while this seems like a simple question it is not really. Ten years ago, when "Select All Instances" was dreamed up, there were no worksets, to worry about, that does not address the "view" issue, but I suspect the thought at the time was the "filter" tool would be sufficient for selecting instances within a view. Filter of course does not have the same refinement as selecting instances of a particular object and not just a category. I too beleive that what you need to examine is a hierarchical selection tool that engages the user and makes it obvious what you're selecting based on the context. It should also make it easy for the user to narrow or expand their selection based on the various structures within Revit used to group and organize objects, Categories, Subcategories, Worksets, Design Options, Phases, Groups, etc. Now before you get all excited that I used the word "context" I'm not saying the Ribbon functionality is the answer here, I just want "smart selection". Its been a few years since I used Microstation, but they used to have a really nifty "power selection" tool. The problem with that tool however was it did not have a low point of entry on the learning curve. However, once a user did know how to use it, they would swear by it to their dieing breath. In fact I've known several users over the years who cited that specific tool as one reason why they would never want to switch to Autocad (previous versions).
Posted by: Robert | June 26, 2009 at 09:00 AM
I wonder if the core question is even relevant anymore. Ever since the Borrows feature was added to Revit, we have taught everyone to NEVER make any workset Editable, and only use the borrows mode. With large projects and large teams, taking control of an entire workset causes big problems.
Selection is definitely an area where Revit could make significant improvements, and the "Select All Instance" is just one are. Like others have posted, we also teach users to be very careful with Select All Instances. I think this feature should have a fly-out menu, similar to duplicating a view in the project browser.
Select All Instances -->
- Entire Project
- Current Workset
- Current Editable Workset(s)
- Current View
- Open Views
Selection power like that of the 3rd party Ideate Explorer would be great.
http://www.ideateexplorer.com/index.php
Since this is a 3rd party tool, it is really slow, it would be nice to have features like this built into the software, built right into the current filter tool.
Posted by: Bret Thompson | June 26, 2009 at 10:16 AM
Here is another mind-bender for you all - related to the request to have "select visible instances in view": If you are in Reveal Hidden mode and you select a hidden (magenta) element - is that visible? It is visible to you at that moment, but in terms of the project it is "hidden."
Posted by: Tom Vollaro | June 26, 2009 at 04:17 PM
Visibility changes, ie. it is stateful. So a command to Select All Visible ought to act on the current state, including hidden items that are visible due to Reveal Hidden.
This would probably match workflow, too, since the items have probably been made visible to act on them. If someone didn't want them included in a new selection set, they can just toggle their visibility, and THEN do the Select All Visible.
Posted by: Joel Osburn | June 26, 2009 at 06:49 PM
When I read the question, it seemed like there would be quite an easy answer. However when I read the comments it seems that, once again, a simple question has a lot of optional answers. I agree with all of the comments but have now got lost in those comments. Is it possible that, once you have evaluated and come up with a preliminary strategy, you could post a screenshot of how you see your solution. I understand that you are trying to get user opinions to help you find a usable solution but once the questions have been asked the subject goes away and we never hear on it again until it (if) has been implemented. It would be useful to see it before the final version appears.
Posted by: Paul | June 26, 2009 at 08:19 PM
Totally agree with Joe's last statement. This keeps things consistent.
Posted by: Chad | June 26, 2009 at 10:42 PM
Some thoughts as I read this:
Select All (condition)(parameter)(param value)
Examples:
Select All (=)(Level)(Level One)
Select All (=)(Material)(Steel)
Select All (Not)(Level)(Level Two)
I have no idea how to wrap a UI around this, but seems like it could be powerful. I guess its a way of defining and then saving selection sets. Imagine iTunes "Smart Playlists"...define a new "Smart Playlist" and add conditions to the playlist. The playlist then shows only the songs that match the conditions, and new songs that match the condition get automatically added to the playlist.
I'm also thinking of a browser-like UI, similar to Navisworks, that can list all elements in a project including number of elements, and then each category can be expanded to be further broken down.
Posted by: Scott D Davis | June 27, 2009 at 02:20 AM
While I'm thinking of it: (and maybe this isn't the best place)
When using "Show" to locate an object, especially in an interference check report, it would be nice to include the "isolate" function to temp. isolate and display just the offending objects.
Posted by: Scott D Davis | June 27, 2009 at 02:23 AM
I'm onboard with Tony Isenhoff's idea. 3 simple options that allow for selection, schedules and other methods already provide a great and flexible way for selection so I think 3 options woukld provide that extra flexibility needed. That being said I have not had many issues with this tool as I just use the filter and teach others to aswell, so when a select all instances is used we know it's on the whole project.
Posted by: Adam | June 27, 2009 at 07:54 PM
Some more thoughts, all of which are sure to be repeats:
1. In line with your original question: I would ignore the "Editable" workset thing alltogether. No one makes entire worksets editable, and thats a joyous thing. Element borrowing is much more powerful. Typically i dont have elements editable... until i need to edit them. So if SAI reflected Workset editability, the tool would be (for us) useless.
2. Select all > In current View. Could be a welcomed addition, but what would be even better for me, is being able to Filter better. For instance, i window select everything in the view, then hit Filter. There are fifteen "Specialty equipment" families, but i cant deselect certain types in the filter, etc. That would be worth more to me than SAI being improved, and here is why:
There are a lot of ways to select. Up and left, grabbing all things we touch, even hidden by other things, but that are in the view range. Window selecting, grabbing only what we completely encompass with our window. Things that are seen, things that are not, etc.
WHICH of these rules would SAI respect? In my personal opinion, a door behind a wall is still IN THIS VIEW, and id want it selected with SAI > this view. But others wouldnt.
Seems to me what were after is a more robust Filter, since most of the time people are using SAI as a way to filter to a particular item. When i personally use SAI, its cuz i want them ALL, in the global project, no exceptions. I would do:
SAI > Current view (present in the view range, visible or not. Exclude hidden elements)
SAI > Project (current functionality)
Then id put it to bed and focus on a way more robust filter: Ability to filter extensively. I want to sweep select the view, then hit filter, than select "Family Name" and filter down, just like the FILTERS command. (As much as i hate to say it, the Quick Select/Filter tool in AUtoCAD is fabulous). Start with a selection, decide if you want to whittle down, or append to new selection set, and set some quick criterion...
Also, a few other suggestions here were great. Double click to edit/access groups, families, parameters, properties bar (non modal please?) etc. SELECTION SETS. Just like MAX/Navis.
They seem unrelated, but the reason THOSE suggestions are paramount is if you TALK to the end users, i think youll find a lot of the time people use Select all instances, its for things that would use these tools if they existed...
Posted by: Aaron Maller (twiceroadsfool) | June 29, 2009 at 03:41 PM
Select all should be an extension of all object manipulation tools IMO, if I understand what is being asked. When you invoke a tool, modify, move, copy, mirror.... the tool should check for existing selection set, as it does now, and if none, allow objects to be added, removed, filtered, etc. as needed. I'd think it would be a welcome addition to have it be a bit more transparent like this as well.
If the factory decides to do something with select all with respect to how it is accessed via view or browser, I respectfully disagree that access to it be removed via view selection. I despise sorting through the browser to find a family that I want to select all in the project. I do this often and hate how long it takes to get to something you either can select on screen or know the name of that could be searched for. If it is determined to remove select all in project from view, PLEASE, PLEASE, PLEASE, add "find family in browser" & "find type in browser" to the right click menu of selected element(s) in a view. This would be handy anyway if we can't get a "reload family" on the same menu or options bar. Again I do lots of reloading, and hate sorting through the browser to find the one I need to reload when it's right there on my screen.
Posted by: DoTheBIM | July 01, 2009 at 11:04 AM