AutoCAD/Map Norths
Expert: Bill DeShawn - 4/10/2010
QuestionQUESTION: I work in the surveying industry where a drawing (map) will initially be oriented in model space such that a vertical line in the WCS represents True North (North 0 degrees-0 minutes-0 seconds West), linework at other angles list with the correct relative bearings and points are created with x, y and z coordinate values. This drawing will need to be reoriented for a layout such that in the viewport that original vertical line represents and lists Magnetic North (say North 13 degrees-0 minutes-0 seconds West) and all linework at other angles lists with the correctly rotated relative bearings. A second layout and successive layouts will have viewports where that original vertical line uses and reflects other North definitions (deed, assumed, project,...). In each case North arrows will need to be placed in the layouts reflecting the "correct" north for each immediate situation. At the same time new points created in model space will need their x, y and z values established based on the initial origin and True North orientation. The drawing also needs to be saved in the original setting so other users are in the correct environment when opening the drawing.
Playing with the UCS and various twist commands can create the mirage or illusion of the various north directions, but linework doesn't list or annotate with the correct bearings. It appears that for each case ALL drawing objects need to be "rotated" around the initial origin by some angle clockwise or counter-clockwise which in effect changes the WCS orientation relative to the drawing elements. How does one save the "views" to quickly move back and forth between various "north" states or systems, and maintain sanity? There's probably a real simple answer that eludes me.
ANSWER: Gary:
First off, lets be sure we're on the same page about what Model Space is. There is the Model Tab, and there is a Layout. In the layout can be one or more viewports. Each viewport presents a portion of the model for viewing on paper. That's the other Model Space. With newer versions of AutoCAD, the Model Tab UCS and/or view twist can be different from the UCS and/or view twist in a viewport that exists in a layout. It is much easier to set up a viewport to view and plot one portion of a model and lock the viewport, name the layout appropriately and for another view, set up another layout, rather than trying to make one viewport work for everything. If working in the "twisted" viewport or Model Tab, keep the UCS at World - always. That way your bearings routine will report the right angle. Only use DVIEW "Twist" to orient your drawing. Never change your UCS. When propertly oriented, WORLDUCS should be set to 1 and VIEWTWIST should be set to your desired view angle. Do not attempt to use one viewport for every twist and view. If by chance, your routine places the text at an orientation which appears upside down in your viewport, I have a LISP routine available that you can load to change that for you quickly.
Another advantage to saving your model in various viewports is that you have complete control over what layers appear in what viewports. So you can choose to freeze or thaw utilities, new trees, existing trees, buildings, contours, at your discretion, permanant and temporary disturbance area polylines, etc. Do not attempt to put all that in just one viewport and then manipulate the layers and change views differently for each sheet you want to plot. You will be plotting sheets over and over for many people to look at at different times, so you don't want to be repeating processes over and over to accomplish that. Use PAGESETUP to set up how you want to plot each sheet and save the pagesetups with appropriate names in each layout. In some layouts, you may even want to set up a full-size page setup with one pen set and a half-size setup with another pen set (stb or ctb file). So if you doing a project to plot on a C size sheet at 1" = 10', you may want to do a page setup for that size and another for Tabloid at 1" = 20' with a lighter pen weight plot style.
Let me know how it goes.
Bill DeShawn
http://my.sterling.net/~bdeshawn
---------- FOLLOW-UP ----------
QUESTION: I think I haven't made my question clear. I created the object in the attached diagram in model space (angle units set to "surveyor") such that line AB lists as "north" (or "south"). Without changing the WCS or rotating the object (versus "rotating the view" of the object) line AB will ALWAYS be "north" when listed, or I'm missing a technique. I want to be able to make line DA "north," list out the new relative bearings of the other lines, create some new lines based on bearing directions relative to this new "north," save this UCS to return in the future and use with a particular layout, and then return to the original AB "North." And then again I need to repeat the procedure with say line AC being "north." But the drawing always needs to retain the original WCS for point creation or development.
In this example I can create a UCS such that line AD is oriented or twisted "north," but the line still lists as say the original N45degreesE and line AB still lists as North. Do I have some variable set incorrectly? The bearing routines all seem to work correctly only with the WCS, not the current UCS.
AnswerGary:
This way of drawing a site or plat is very unusual. But anyway, if you create a UCS by using the 3 point option. Type UCS and 3 or UCS NEW and 3 and select three points. The first point is endpoint D, then endpoint C, then endpoint A. Now even though according to the WORLD UCS, line DC is NORTH, line AD will list as North. Is this what you mean? Now, my Bearings routine written by Fred Bertagnolli in 1990, doesn't change UCS to world and it lists the correct bearings relative to AD, however, because the routine wasn't designed for UCSs other than the WCS, it placed the text on some other location of the drawing. In order to fix the placement of the text to be next to each of the lines like it's supposed to be, there is some code change in the routine that needs to be implemented (using the TRANS function). In your case, the routine you are using may be returning your UCS to WORLD to label the lines (and then perhaps returning to the previous UCS). Unless you or I or someone you know can check that out, then I don't think there's anything else you can do about it. There is no system variable that's going to change that behavior.
Other relevant notes:
The 3-point option is a "legacy" option that no longer appears on screen as an option until you type N for new UCS. But you don't have to type N for "NEW". The same is true of the OBject and Entity options. E for entity is no longer documented. It has been replaced by OB for Object. But it still works.