Have a construct w/ multiple floors within the same drawing. Moving between floors w/ Display Configuration set to the appropriate settings. I set the Elevation and Z coordinate properly.
Problem: If, for example, I'm on 3rd floor and wish to draw a wall I use the endpoint snap drag and click in open space for the other end. It appears my endpoint snap is snapping to the first floor level (and therefore drawing the wall down there). If I click in an open area for beginning and end points....wall draws fine.
Is there something I don't have set correctly for the snap points to recognize the level I'm drawing on??
Solved! Go to Solution.
Solved! by Matasovsky. See the answer in context.
Did some review on OSNAPZ command.
That may be the last piece of the puzzle.
As you are using the PN outside of it's design it's not really set up to do what you are trying to do.
You need a way of setting a floor level and snapping osnapz to that level so that anything you do occurs at that level. Also without layer control, MVB's won't obey the cutplane (ME's will) so unless you have another way of controlling what is displayed, your method could come unstuck.
This is a (excerpt) typ command from my lisp that does these things but there is more to it. A layerkey style that sets levels in layers and a system of setting the level heights. The items in red are what you are after, the first only works if it's set elsewhere.
;L1 turns on level 1 (ground floor) layers beginning with 1-
(Defun C:L1 () (setq CurLevel 1)
(command "-LAYER" "m" "0" "F" "1-Elec*,*|*-Elec*" "OFF" "*" "N" "ON" "1-*,1+*,*|1-*,*|1+*" "")
(command "-LAYER" "ON" "1-WALL,*|1-WALL" "U" "1-WALL,*|1-WALL" "" "")
(command "elevation" FL1)
(command "Osnapz" "1")
(if ( = 0 (AecLKeyOverrides)) (AecToggleLKeyOverrides))
(AecSetLayerKeyOverride "Level" "1")
I show how this works on youtube
btw you do seem to ask the question as if you are unaware of how the PN works. (maybe I misunderstand). As designed, you draw each level at 0 in it's own construct so there is no need to set level heights in each drawing (hence no tools to do so). Each level height is set in the PN itself.
As you are using the PN outside of it's design it's not really set up to do what you are trying to do.
Actually the way PN is designed, it's capable of doing EXACTLY what I'm doing. With construct files, you have the ability to set files to multiple levels and units.
By setting different Display Configurations w/ Cut Planes set at different heights (with above and below limits) I easily get the desired result of being able to go from floor to floor.
You need a way of setting a floor level and snapping osnapz to that level so that anything you do occurs at that level.
The Elevation tab in the lower right corner reads the levels from PN and I simply set it to the floor I'm wanting to draw on w/ the Z coordinate next to it set to "0".
It works GREAT! I copy the Display Configurations to other drawings so they display the same way.
The one issue I have is the snaps.
Also without layer control, MVB's won't obey the cutplane (ME's will) so unless you have another way of controlling what is displayed, your method could come unstuck.
Actually assigning a Classified Definition to MVBs and other items and the Display sets within the Display configurations is set to that classification. Classification Definition is called "Levels"
So do I understand that you are doing multiple levels in 1 construct? That's how I read your orig. post.
Yes I get the assigning to more than 1 level (like a spanning construct)
I know DispConfig's could cut the model, I did look at this idea but because not everything obeyed the cut plane, (like MVB's) I abandoned it as an idea.
Yes I did read about the idea (prob from you) of using Classifications to set levels. How do you apply? Is it manual or do you have some auto way of adding?
"The Elevation tab in the lower right corner reads the levels from PN and I simply set it to the floor I'm wanting to draw on w/ the Z coordinate next to it set to "0"."
How do you "set it"? So I take it as you work on each floor, your whole construct gets shuffled up and down so your working floor sits at 0? Or do you do this in a view file and edit the x-ref?
If this is so, if your osnapz is on and elevation set to 0 then it shouldn't snap to any other level.
I think Autodesk should really supply a method of doing multilevels out of the box. I don't need the PN but it does organise well so perhaps they should examine your method and add some auto-tools to automate the assignment of levels and it could be all done. My nethod works really well (much to my surprise) but it does require a shift of thinking. You should do a youtube video and share what you've done.
In the last templates they have that mid and top display reps which seemed a half baked idea to address this. As there was never any explanation I didn't know how they were meant to be used.
((((I hate this stupid stupid forum format that I can't read anymore than the exact post I am replying to. Many times a conversation is more than JUST the last post)))) /off soapbox.
If I am guessing correctly, you are opening a view drawing for level 3 which opens your multilevel construct.
this should open your 3rd floor at 0 having moved your construct down to align.
WIth osnapz set on and elevation at 0, your walls should be drawn at 0. But you are editing an x-ref (edit in place) so I wonder if this effects the osnap setting - whether it goes to the settings in the construct rather than your view drawing?
"Is there something I don't have set correctly for the snap points to recognize the level I'm drawing on??"
I'm thinking that here the PN is not designed to work as you are working in that it doesn't really recognise your level shuffle. When you edit an x-ref, it would expect that 0 in the construct = 3rd level set in PN but that's not the case. Unless the spanning thing should know.
Posting from home before work commute and before seeing your additional posts.
Spanning Constructs - Yes.
Until I figure out a efficient way to apply automatically, classifications are applied manually to things that aren't naturally working w/ the Display Configuration. The extra step is worth it to get the working environment - just my opinion. MVBs, Plumbing Fixtures, REALLY made progress on this latest project when I discovered I can turn 2D linework into Schematic lines and apply this classification definition to them. Now have the ability to have lines display and go away w/ the change of display configuration. This provides a "work around" to represent things in 2D (that I haven't figured out the best way of doing in 3D) and still have everything turn on and off properly.
Will get to other questions....
Can I ask a couple of other questions.
My std walls have a cutplane override so they display regardless of global cutplane. Levels are sorted via layers. Split level homes are easy as each wall follows it's own CP to baseline not a global one. Does your system (which must use the global CP work well with split level?
You are using View drawings for each level. Therein you set the appropriate Level Class in the display rep in each view drawing? So this would be manual? That would be ok.
"Until I figure out a efficient way to apply automatically, classifications are applied manually to things that aren't naturally working w/ the Display Configuration. The extra step is worth it to get the working environment - just my opinion. MVBs, Plumbing Fixtures, REALLY made progress on this latest project when I discovered I can turn 2D linework into Schematic lines and apply this classification definition to them. Now have the ability to have lines display and go away w/ the change of display configuration. This provides a "work around" to represent things in 2D (that I haven't figured out the best way of doing in 3D) and still have everything turn on and off properly."
How do you turn the 2d lines into schematic lines, and then classify?
I can't get sline, slineadd or slineortho to work in my ACA 2013.
Do you have a simple example that you could post ?
With regard your snap problem, I can repeat your scenario and but I don't think it's fixable.
SnapBase is only 2 dimensional (0,0) so when you draw from endpoint, osnapz and elevation doesn't come into it.
The line will always start with z=0.
When using Ntellery's lisp to set elevations and osnapz, the line will draw at the right level, even if you use "endpoint", because the snapbase 0,0 is now set at the level you're drawing at.
Although, you could draw lines in model view and use endpoint, or in plan view, make sure snap is set to say 200, and don't use osnaps.
I think with your ideas on grouping of 2D , the Multi-Level layer sorting system, and advancement in power computers, the clunky PN system could be replaced with a slick layer setup with customised ribbon control.
The sky is the limit.
Just like in Revit's one drawing system.
"How do you tun the 2d lines into schematic lines and then classify?"
1. My classification definition "Levels" is set to apply to Schematic Lines.
2. Any line or pline I draw I can select, right click, and in that menu is a "Convert To"... middle of menu is "Schematic Line..."
3. After that, I select the NOW schematic line and go to "Extended Data" tob of the Properties Dialog Box. Under Classification I set it to the level I want it to display on.
4. Display Configurations are assigned a Display Set. So, for each Display Configuration that represents a level of the model, I have a Display Representation Set (Display Set) for that configuration. Configurations and Sets are easily copied/pasted in Display Manager, so I have Display Configurations - Medium Detail, Medium Detail (2), Medium Detail (3), etc... and w/ that Display Sets - Plan, Plan (2), Plan (3), etc... respectively. Under Display Options Tab for Display sets are Classification Filters. There, I check the Level I wish to display and uncheck the ones I don't want to display. Attached jpeg
As far as 2013, sline add works for me, so I don't have anything to offer in help there.
Start with some of our most frequented solutions or visit the Installation and Licensing Forum to get help installing your software.