2D
vs. 3D Linework, Questions and Answers
A
high percentage of my technical support phone calls have
to do with the topic of 2 Dimensional vs. 3 Dimensional
linework. Many
clients do not realize that they are drawing 3D linework
when in fact all they want is 2D linework. How do we know
when we are drawing 2D vs. 3D? The answer is simple.
2D
linework is achieved in a couple of ways. When you are working in
COGO and you enter any direction and distance, the lines
you draw are in 2D (even if the points have elevations on
them), which means their elevations are set to zero. By
inversing between two points in COGO by typing POINT#..POINT#
you are drawing lines between the points in 2D. If you bring
in a file from a data collector or manually enter a traverse,
the lines generated by inversing, will be in 2D. In short,
most survey commands used will generate 2D linework even
if there are elevations on the points.
The
CAD commands such as Line and Polyline will also, by default,
draw 2D linework. By simply picking locations on screen you are defaulting
to a zero elevation for each pick. However, if you use any
of the Object Snaps, such as Point, End, and Int, you may
in fact be drawing in 3D because the objects that you are
accurately picking may have elevations assigned to them
thereby making them and your linework 3D.
If
you have many 3D points in your job that you need to join
with 2D linework, and the COGO method of inversing between
each set of points would be a long drawn out process, then
you need an alternative command. You need a command that
will create 2D linework but allow you to visually pick each
of the points, using the object snaps to maintain accuracy.
We have one.
Under
the MicroSurvey menu go to -> Points / Lines / Curves
-> and then choose the command Lines by Inversing
(Dot to Dot). This
command allows you to do one of 3 different types of input.
First, it allows you to type the letter N and then after
pressing enter you can enter the point number you need to
draw to/from. Not always convenient, but available. Second,
you can pick the RANGE option and connect a series of points
by entering the points in a POINT#..POINT# methodology. Again, not always suitable if the points
are not numbered sequentially. Lastly,
and perhaps the most useful for most circumstances.
Set your object snap setting to the POINT option before
starting this command (you can set this by typing the command
SETTINGS and then pick the OBJECT SNAP tab and then picking
the POINT snap). Then while running this command, pick each
coordinate visually, one after another, by placing your
crosshair, with the little pick box, over each point on
the screen and picking with the left mouse button. The POINT
object snap ensures you are grabbing the actual point but
the routine is ensuring that the elevations are set to zero
for the linework you are drawing. The original points are
not touched and remain in 3D while your new linework is
in 2D.
Another
way to draw a line between two 3D points without having
to use a survey related command is also available. This method uses XY filters
to strip off the elevation and create 2D linework. First
you need to place the OSNAP palette on the screen to make
things easier. You can do this by going to the File menu
and go to -> Palette Manager. This brings up a dialogue
box showing all the palettes that come with the CAD portion
of the program. The first one on the list is Object Snap,
Precision Modes, Settings. Highlight
it by picking it and then select one of the unused palettes
down below - 1 through 10. It does not matter which one
you select. Then Close the dialogue box. Now you can move
the palette to a location on the screen that will be good
for you.
Now
start the Line command, pick the Point Object snap and then
pick the XY filter. Both are on this palette. Now you can
go and pick the point you wish to draw from. The slight
hitch is that you must actually select the same point twice
in a row - first pick actually grabs only the X coordinate
- the second pick grabs the Y coordinate. Now that you have
picked the point twice, it now has the 2D location and then
you can repeat the process for the next point. Unfortunately
you do have to pick the XY filter for each point you wish
to draw but you can help speed things up by turning the
Point Object Snap on permanently rather than having to pick
it as well for each point you connect to. (method mentioned above) This procedure may be a little longer
in some ways but can give you more freedom in others and
will always draw in 2D because of the filters. There is
also an XYZ filter but you would have to either enter an
elevation each time or pick an object that has a zero elevation.
If
you have already connected a whole series of points using
the Line or Polyline commands and you used the POINT object
snap to ensure you maintained accuracy, you have still drawn
all the linework in 3D.
Why
all the controversy over 2D vs. 3D? Simply put, while you are working
in a drawing you may run into many obstacles while trying
to edit 3D linework. 3D linework can not be easily TRIMMED,
EXPANDED, FILLETED, CHAMFERED, INTERSECTED, OFFSET, and
many other critical options. Unless all the linework is
at the same elevation, the commands either will not work
or you will not obtain the results you desire.
How
do I convert my 3D linework to 2D? Normally you would think
this is not possible without redrawing the linework BUT,
under the Modelling menu go to -> Utilities -> and
then Polyline Utilities, there is a command MAKE 2D POLY
that can help you. This command is a life saver for some.
It allows you to take any 3D line and project it down to
the elevation of your choice (normally zero), and create
a 2D polyline. This polyline can be worked on by any of
the above listed commands. End of story? Not quite - the
original 3D line is still in the drawing and may cause some
problems so be sure to either erase it or perhaps change
it to a different layer so you can freeze it. Selecting
this 3D line may be difficult unless you change your viewpoint
to a 3D viewpoint. This can be done by going to the View
Menu -> and picking the 3Dview command -> and then
picking one of the views available. Once in this 3D view
you should be able to see the difference between the 2D
polyline you just created and the original 3D linework,
making it easy to select the 3D linework. When you are finished
in the 3Dview simply type the command PLAN and press enter
twice. You will now be back to your normal view.
SCALEZ, A unique use of one of the Modelling commands seems
to offer the best and a simple way to convert 3D lines to
2D lines. Modelling menu -> Utilities -> Elevation
Utilities and pick the command -> SCALEZ. Select the
3D objects then when asked for a Scale factor type in the
number ZERO. Amazingly enough the routine does not crash
(I thought it would because we are scaling by 0) and the
elevations all change to zero. It is fast, painless and
will save you many hours of
pulling your hair out!
If
you have a line already horizontal but not at elevation
zero you can simply use the move command to change it to
elevation zero. Move,
select objects. Base Point: you type in 0,0,0.
Second point of displacement: you type in 0,0,then
the amount to move the object in the Z direction (example:
0,0,0 to 0,0,-10 this would move the line down in elevation
by 10 units).
A
method of converting 2D inversed lines to 3D,
or 3D lines drawn between survey points to 2D has now been
added to the program.
Go
under the MicroSurvey Menu -> Points/Lines/Curves and
there are 2 commands: Convert 2D Lines to 3D, and Convert
3D Lines to 2D.
Convert 2D Lines to 3D: works
on lines that were originally inversed between two survey
points, and the line was drawn at zero elevation. The line
is then converted (not copied) to 3D using the elevations
on the points at the two ends. It remains in the database
as an inversed line. This is great for taking inversed
lines and making them usable for breaklines (which must
be 3D).
Convert 3D Lines to 2D: works
on lines that were simply drawn, using object snaps, in
full 3D. It converts the line to 2D but does not add it
to the inverse database. This is great for taking 3D lines
and making then 2D so other CAD editing commands will work
on them correctly. Once a 3D line has been converted to
2D, it can not be switched back to 3D unless you erase it
and re-inverse the line first.
Another
way to change the elevation of a horizontal line not at
zero elevation would be to go to the Modelling menu ->
Utilities -> Elevation Utilities and pick the command
-> Change Z Of Entity. This command is nice because it allows you
to pick another object to match the elevation to or press
enter and then type in the elevation yourself. Great routine
BUT if the line you are changing is drawn in 3D with both
ends being different elevations then it will only set one
end of the line to the elevation you select. The other end
will still be in 3D at the original slope from the first
point. So this only works for horizontal lines not already
at elevation zero.
The
most important thing I can say is make sure you know if
you are drawing in 2D or 3D and to use the correct commands
to obtain what you want. Just because you used to be able
to simply draw in another program and things there defaulted
to 2D all the time does not mean that we do the same. We
sometimes need 3D linework to help us define Breaklines
for TIN's, Grids and Contours. MicroSurvey.
is giving you the best of each world and making life as
easy as possible while doing so, without sacrificing any
power or flexibility.
Glen
Cameron
Technical
Support Manager
Home