ThreeDot Posted September 26, 2007 Share Posted September 26, 2007 Is is possible for 2D symbols to inherit class properties? I assumed that if I created them on the "None" layer and set all attributes to "Class Style", this would work. It doesn't. Thanks, Matt Quote Link to comment
Guest Posted September 26, 2007 Share Posted September 26, 2007 Yes, they can. Are you assigning this to the symbol, or while editing the symbol to the individual pieces? Do you have "Use at Creation" enabled for the class graphic properties? Quote Link to comment
ThreeDot Posted September 26, 2007 Author Share Posted September 26, 2007 My procedure is this: 1. Start on the "None" class with all attributes set to "Class Style". The "None" class, in fact all classes, are set to "Use at Creation". 2. Draw a 2D shape and "Create Symbol...". 3. Assign a symbol name and select "Leave Instance in Place" in the Create Symbol dialog box. 5. Double click to edit the new symbol. Confirm that it exists on the "None" layer and all attributes are set to "Class Style". 6. Exit the symbol edit mode. 7. Move the symbol from class to class to test. The Attributes palette shows the correct class attributes for the symbol (stoke, fill, etc.) but the symbol is visually unchanged. What am I doing wrong? Thanks, Matt Quote Link to comment
Guest Posted September 26, 2007 Share Posted September 26, 2007 Does it have the little arrow next to fill & pen type (solid, hatch, pattern, etc) ? Normally the drop down box says "Solid", but when an object is using the class attributes, it will say "Solid" with a swooshy arrow. Did you at any point get a message about associating class attributes with objects and selected No or No Always ? Quote Link to comment
ThreeDot Posted September 26, 2007 Author Share Posted September 26, 2007 The attributes are as you say, with little swooshy arrows. I know the message about class attributes (No, No Always, Yes Always, Yes). In general I always select "Yes Always", but that did not appear in this particular operation. Matt Quote Link to comment
P Retondo Posted September 26, 2007 Share Posted September 26, 2007 Three, the symbol is a container object. The container object's attributes are not shared by the objects it contains. Same with groups. Quote Link to comment
ThreeDot Posted September 26, 2007 Author Share Posted September 26, 2007 So, the container takes on the active class attributes but the objects contained inside do not. There is no transference. A symbol is nothing without the sum of its parts, so... that contradicts Katie's response, no? Matt Quote Link to comment
P Retondo Posted September 26, 2007 Share Posted September 26, 2007 Doesn't really contradict what Katie says. But I've never really been sure what the meaning of a "lineweight," etc., would be for a container object. BTW, it's not the active class attributes that would count, it's the class to which the object is assigned (could be one and the same unless the symbol was created to be assigned to a particular class when placed). You probably knew that. This does work the way you want it to, if the objects within the symbol are created as you normally do ("use class" for everything), and then you convert the symbol to a group and change the classes of the contained objects. Quote Link to comment
ThreeDot Posted September 27, 2007 Author Share Posted September 27, 2007 So, Katie, is that true? While technically the symbol (i.e., the invisible container) assumes the attributes of the class it resides on, those attributes are not transferred to the objects contained inside. Therefore, there is no obvious, visual change to the symbol. Please clarify. Thanks, Matt Quote Link to comment
Guest Posted September 27, 2007 Share Posted September 27, 2007 That is correct. If you select a symbol, note how you can't change the fill of the symbol - it's stays at "None" The symbol itself does not own attributes, only the objects within a symbol. Those objects need to the desired class attached. Quote Link to comment
ThreeDot Posted September 27, 2007 Author Share Posted September 27, 2007 Oh, wait. I see how it works...stupid me. It's that AutoCAD stank on my sleeve which prevented me from seeing how VW does it. That, and I can't even spell inheritence [sic] correctly. *Sigh* Thanks, Matt Quote Link to comment
Guest Posted September 27, 2007 Share Posted September 27, 2007 If it were a group instead of a symbol, the behavior would be different. Quote Link to comment
billtheia Posted October 2, 2007 Share Posted October 2, 2007 So...is all of this to say that a symbol CAN'T inherit the attributes of the class it is placed on? I'm struggling with this now too. I'd like to be able to use the symbols provided with VW2008 using MY line weights, styles, colors, and fills. The way I read this thread, I can only do this if I convert the symbols to groups. I've just tried that and it doesn't work either. What the $%^! do I need to do to have all of these great new Wolf and SubZero symbols use the attributes that I want, NOT those that were assigned by the symbols' creators? Using VW2008-Designer Quote Link to comment
Guest Posted October 3, 2007 Share Posted October 3, 2007 The actual symbol itself will not take on the class attributes, but the objects that make up the symbol can take on the attributes of their respective classes or attributes. To apply your graphics to the library symbols, edit the 2D and/or 3D symbol components and change the attributes directly or class the different parts of each symbol. Quote Link to comment
billtheia Posted October 3, 2007 Share Posted October 3, 2007 I have tried editing inserted symbols by changing all attributes to "By Class" but this did not work. I inserted the symbol, double clicked on it, selected all, changed everything to by class in attributes palette, double clicked again, and did the same with any groups in the symbol, exited group edit, and exited symbol edit. I return to the drawing but the symbol looks the same - it has not taken on class attributes. Can someone please give this newbie a clear step-by-step process for changing a symbol so that it takes on the attributes of the class on which it is inserted? Thanks. Quote Link to comment
P Retondo Posted October 3, 2007 Share Posted October 3, 2007 billtheia, you don't necessarily have to convert your symbols to groups. The same process will work in both converted and unconverted symbols. Enter the symbol or group to edit the objects. Change all the objects so that they take attributes by class. BE AWARE that it is the class of these objects, not the class of the group or symbol, that will affect how they look. So if you want to have a class that controls them, set one up and ASSIGN IT TO THE OBJECTS. Assigning that class to the symbol instance will not do anything. Assigning that class to a group will also do nothing, unless you are prompted by VW about whether you want the class assigned to the group's objects and respond affirmatively. So, I would suggest that you use some special class other than "None" to control how these objects look. The biggest use of this level of control is to customize class attributes in Viewports. Quote Link to comment
billtheia Posted October 3, 2007 Share Posted October 3, 2007 Thanks, Pete. So, in order to get the symbol to take on the attributes of a class, I must edit the symbols objects and place them on that class. Hmmm. Just seems counter intuitive to a former ACAD guy. Quote Link to comment
P Retondo Posted October 3, 2007 Share Posted October 3, 2007 Well, the logic of this is that your contained objects might have different classes and attributes, so you don't want the container object to override the differences. Quote Link to comment
ThreeDot Posted October 3, 2007 Author Share Posted October 3, 2007 AutoCAD has a very simple way to deal with this very problem. Create a block (symbol) on the 0 layer and mark all attributes as "By Layer"; these will automatically inherit attributes from the current layer. Assign a specific color, line weight, dash style, etc. for any object in the block that you want to remain fixed; that is, not assume the active layer attributes. This allows all "By Layer" objects to be flexible while fixing other attributes that have been specifically defined. Matt Quote Link to comment
billtheia Posted October 3, 2007 Share Posted October 3, 2007 3., I know - that's what I was hoping VW would do too but it looks like that's not the case. So - the short answer to the question "how do I create a symbol that inherits the attributes of the class on which it is inserted?" is YOU CAN'T. So then what does a VW user do when he/she has the same object in more than one class (e.g. new const. & demo) and wants needs the symbol to have different attributes? Quote Link to comment
mike m oz Posted October 3, 2007 Share Posted October 3, 2007 Have two symbols - in your example have one for the new item and another for the demolished item. Quote Link to comment
billtheia Posted October 3, 2007 Share Posted October 3, 2007 How very...efficient. Quote Link to comment
Petri Posted October 3, 2007 Share Posted October 3, 2007 3., I know - that's what I was hoping VW would do too but it looks like that's not the case. I think it is exactly the case. But maybe I don't quite understand. Quote Link to comment
Petri Posted October 3, 2007 Share Posted October 3, 2007 Of course one could have a parametric object for something like this. Very, very efficient! Quote Link to comment
P Retondo Posted October 3, 2007 Share Posted October 3, 2007 Bill, you can override the class attributes of your objects in a Viewport, so you don't need to create two symbols. If you want to display the same symbol in two different ways in one drawing, you'll need 2 viewports to do that. Look at the OIP with a viewport selected. Go to the "classes" button and when the list comes up, you can edit the class attributes, and those edits will apply in that viewport only. So you can change your linestyle to dotted for that viewport, for example. Window and Door PIO's as used straight from the window and door tools can be classed and will pick up class settings and viewport overrides in the manner you are asking for. Those aren't really symbols, per se, they're a different kind of object. So if you are looking for the easiest way to have a window or door be dotted in one plan and solid in another, assign them to a Demo class like the wall, and use viewport overrides to have that class display differently in different drawings. Quote Link to comment
Recommended Posts
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.