Jump to content

Delete Class(es) dialog question


Recommended Posts

Am I correct in saying that when you delete a class you get this same dialog regardless of whether there are any objects assigned to it or not?:

 

1383710165_Screenshot2022-07-19at19_48_27.png.1de706a931ca0e648eb1cac3b0ce71d6.png

 

If so I will post a Wishlist item on this as I'd prefer VW to only bring up the dialog if there are objects present + prevent confusion.

 

  • Like 1
Link to comment

Not what I am seeing in VW2022.

 

If I delete a class with no objects I get a dialog box asking if I really want to remove the class.

 

If I delete a class with objects in it, I get the dialog box you show.

 

Try it in a blank file and see.

 

It may be that the class exists inside of resources which is why you get the dialog even though you don't see anything in the drawing in that class.

  • Like 4
Link to comment

Aha that will be it thank you! Classes inside of resources. Hmmm so would choosing 'Delete...' in the dialog mean you could be deleting geometry within a symbol definition...??? Or reassign it to a different class...? I need to have a play with this...

Link to comment
6 hours ago, Kevin Allen said:

and locate/identify the objects.

 

take that a step further: option to show counts of assigned classes in the nav palette

 

i said "option" to

 

btw for years i've desperately wanted to create the inverse of this filter (Unassigned Classes):

1880159739_ScreenShot2022-07-19at7_01_36PM.png.aae362647da95ed5d7b555b0b4e9d875.png

 

Filters are another of those features that came out of the gate swinging, and then were swiftly abandoned. They have SO MUCH potential, especially in an app with Criteria pull downs throughout... 

 

  • Like 3
Link to comment
11 hours ago, Pat Stanford said:

It may be that the class exists inside of resources which is why you get the dialog even though you don't see anything in the drawing in that class.

 

I have had time to look at this.

 

Try this in a blank file:

 

Bring in a symbol that has any object assigned to a certain class ('Class A') + place five instances of that symbol in the drawing.

 

Use a worksheet to search the file for objects assigned to that class. It will return the five instances of that object that have been placed in the drawing.

 

Edit the symbol + reassign the object to a different class ('Class B'). Run the worksheet to search for objects on Class A again. No objects are returned because you have edited both the symbol definition + the instances.

 

Delete Class A + you get the 'What do you want to do with the objects...?' message. Why? When there are no longer any objects assigned to that class, whether in the drawing itself or in a resource?

 

Am I missing something really obvious?

 

When you replied to my original post I wasn't able to check it but I assumed what you said was correct because I had used a blue group symbol in the file then changed the class the instance of the symbol was assigned to, so in this case the original class (in the symbol definition) would have remained the same resulting in me having one class in the resource + one in the drawing + this would have explained why I was getting the 'What do you want to do with the objects...?' message when I tried to delete the first class. I have tested this now + when I delete the original class + choose to reassign objects to the new class it has the effect of editing the symbol definition. This all makes sense.

 

But it doesn't explain why I get the 'What do you want to do with the objects...?' message when I edit a normal symbol to change the class geometry within it is assigned to.

 

Also another point: my worksheet doesn't pick up objects assigned to blue group symbol resources so in the example above I can have an object assigned to a class in a symbol definition in the RM but when I go to delete that class + get the 'What do you want to do with the objects...?' message I have no way of checking where those objects are. This relates to the point @Kevin Allen makes. Is there a way I can get my worksheet to search for objects within resources like my blue symbols???

 

 

 

 

 

Link to comment

Unfortunately, worksheets are not able to report on resources, only on objects placed in the drawing.

 

Again, I am not seeing what you report.

 

I created a new blank file. I created a rectangle in a class named Blue and an oval in a class named Red. I then selected both and made a symbol.

 

If I try and delete the Red class with one of the symbols placed or with just the symbol definition, I get the error dialog box.


I then edit the symbol to put both objects in the Blue class. When I delete the Red class I only get the "Do you really want to do this" dialog box no matter if there are symbols placed or not.

 

Did you possibly get the Symbol itself in the class as well as the contained objects? But then when you edited the symbol you only changed the contained objects?

 

If you really think this is happening then submit your test file with step by step instructions (like you did above) on how to replicate the problem and submit it as a bug.

  • Like 1
Link to comment

Pat you were right as usual thanks for your time on this I got there in the end! The 3D geometry in my symbol was an Extrude + although I changed the class of the Extrude itself the polygon from which the Extrude was derived was still in the original class! Hence the message when I went to delete that class. I'm not entirely sure why the polygon  wasn't in None class in the first place... This has actually caught me out a couple of times recently when you have history based modelling + change the class midway through the process + end up retaining the original class deep within the history of the object... Another reason for converting to generic solid!

 

25 minutes ago, Pat Stanford said:

Unfortunately, worksheets are not able to report on resources, only on objects placed in the drawing.

 

I think some of the Materials functions report on the Materials as resources...? So for example the 'Materials Data Sheet' worksheet reports on Materials in the file, regardless of whether they are applied to any objects or not. But this may be specific to Materials only...??

Link to comment

I have not done a complete review, but yes, it does appear that some of the newer worksheet functions can report on specific resource. Materials certainly can.

 

But in general, there is no overall way to get resources into a worksheet.

 

If you can script, then DatabaseByScript and RunScript can do a lot for worksheets, but it is not a general purpose solution.

Link to comment
Just now, Andy Broomell said:

 

I

 

H A T E

 

that this is even possible. Messes me up all the time...

 

It would help if you could search for these objects-within-objects with a worksheet but you can't. They are the black ops of VW objects....

 

It's a bit weird actually: create an extrude + assign it to Class A; subtract a solid from that extrude + put the subtracting solid in Class B; delete Class B + say you want to delete the object (the subtracting solid): nothing happens to the Solid Subtraction until you Edit Solid upon which the subtracting solid immediately vanishes + you're left with just the original extrude. You can create self-destructing objects with all sorts of history that disappears the minute someone attempts to edit them!

Link to comment
28 minutes ago, Andy Broomell said:

 

I

 

H A T E

 

that this is even possible. Messes me up all the time...

or IIRC, I don't think this has ever been fixed, draw in a class, drawn object, the object has the class. Extrude or otherwise manipulate into 3D, the 3D object no longer has the class.

Link to comment
  • Vectorworks, Inc Employee

 

5 hours ago, Pat Stanford said:

I have not done a complete review, but yes, it does appear that some of the newer worksheet functions can report on specific resource. Materials certainly can.

 

But in general, there is no overall way to get resources into a worksheet.

This is correct. As of now, Material is the only resource that can be listed in a worksheet database using the standard database methods.

Support for other resources will be added in future releases.

 

As @Pat Stanford pointed out, database by script is an alternative method for listing any list of objects in a database worksheet.

Link to comment

I wrote a tool that might help some of you out, though its use might be a little niche.  The attached menu command will open a dialog which will list all items using the class selected in a drop-down.  The tool will traverse symbol definitions, symbol options, groups, viewport annotations and crops, and wall components.  Items directly on layers will be individually listed, items found within symbols, groups, and VPs will only list their parent.  There is a box to dump the info into a Worksheet, or to go directly to a selected object.  The behavior will be slightly different depending on where the objects were found:

  • Inside Symbol Definition:  The symbol edit window will be opened and all objects in the target class will be selected
  • On Layer:  User will be given the option to select only the selected row item, or to select all objects in the target class on the layer of the selected row item
  • Inside Group: Opens the group edit window for the group and all objects in the target class will be selected
  • Inside Viewport: Opens the Viewport Annotation or Crop edit window and all objects in the target class will be selected
  • Wall Component: Selects wall centers view on wall

There are options to filter what the tool searches through as well.

 

The only thing this tool WON'T find is if an object in the target class is part of another object's path or profile group (such as the Extrude you guys referenced earlier).  I'll try to think on ways to do this, but for now consider it a limitation of this tool.

 

image.thumb.png.ef34954196c1f01b284b7a41cb37bfd6.png

 

Please let me know if you need any help installing this or if you find any bugs.

 

Locate Class Objects.vsm

Edited by Jesse Cogswell
  • Like 3
Link to comment
8 hours ago, Jesse Cogswell said:

The only thing this tool WON'T find is if an object in the target class is part of another object's path or profile group (such as the Extrude you guys referenced earlier).  I'll try to think on ways to do this

 

That would be amazing thank you

  • Like 1
Link to comment

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.

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