This page explains the general Section3D program requirements, logic and the coding syntax, and it is strongly recommended that you read this page before attempting any of the workshop exercises. One of the Section3D strengths is its flexibility and simplicity. Section3D is easy to learn and understand with a minimum number of key words and dialog boxes because Section3D relies heavily on your ability to develop the working code by establishing simple geometrical relationships. But like any other applications and programming languages there are certain rules and logic you must understand and follow.
Frist, Section3D needs to read/write to the installation and its subfolders to save various settings and reports. Make sure that the read-write access rights are given to the Section3D installation folder - If you don't have the access rights see the below link for adding the Ownership Option in Right Click Context Menu :
After downloading and double-clicking on the 'InstallTakeOwnership.reg' select the Section3D 201# folder -> right-mouse click -> Click on Take Ownership.
Installing the 'Universal' Section3D Subassembly is one-time operation like installing any other custom subassembly. You only need ONE Assembly with the Section3D subassembly attached (tiny red dot) regardless of the number of corridors in each civil 3D dwg file. If you haven't already installed the Section3D subassembly please see the istructions from the following link:
For Windows 7 users, you might want to try the Windows Classic desktop style and also change the mouse cursor to the precision cross by selecting a different pointer scheme (e.g. Windows Standard) under the Pointers tab of the Mouse Properties dialog box.
Section3D 101 Introduction from Czech Republic:
Download the Section3D Tutorial in Pdf format - Quick overview
Before you launch Section3D, you must have at least one surface, one horizontal alignment and a sample line group with some sample lines created in Civil 3D. This is the minimum requirements and starting point of Section3D since Section3D saves/retrieves the design data to/from the sample lines. It is assumed that you have the basic kwnowledge to create these Civil 3D objects in Civil 3D.
Upon launching Section3D you will be prompted with the following (alignments, profiles and surfaces) selection dialog box to display in the Section3D Viewer. Always work from the left to right and top down:
1. Display Settings is the display settings of the Section3D Viewer. Just select DEFAULT for now.
2. Load Previous Selections is checked on to save the current Dialog selections so that Section3D will remember the selections for the next run.
3. Site is a Civil 3D concept (Alignment can be either a site alignment or siteless).
4. Main/Control Alignment is the centerline alingnment on which the sample lines are created.
5. Alignment/Profile Tree displays the available alignments/profiles for the selected site and you can now check on to select any alignments/profiles to display in the Section3D Viewer.
6. Select the sample line group for the main/control alignment selected in 4.
7. Select at least one surface that represents the existing ground surface.
8. Select the main Surface which is always same as the sampled surface created above unless you have multiple surfaces selected in 7.
9. Select Line/Polyline/Featureline layer is for displaying the projected Lines, Polylines (either 2D or 3D) and feature lines in the Section3D Viewer.
Below is a typical selection for most cases. You can now click on the 'Process" button to accept the selections made and proceed to the next step.
The display settings dialog box of the Section3D Viewer (from Section3D Viewer menu - View -> Display Settings) defines how Section3D points, links and surfaces are displayed. The settings in this dialog box is not very important at this point and will be explained in detail in another page, but some settings like grid spacing and vertical scale factor are quite self-explaining.
Section3D basically has two major components:
1. Section3D Viewer
2. Section3D Editor
Section3D Editor can be displayed or opened at any time by right-mouse-click and Editor.
In Section3D Editor which is always on top of the Viewer (but closes automatically when moving to other stations) the Subassembly Points are created by selectinng the "Points" node followed by right-click and "Add Point". The new points automatically receive unique point numbers (usually in sequential) and are initially centered on the screen, and you can change each point code by double-clicking on the command string as shown below. Note the following Section3D coding syntax:
1. Each component (i.e. F=, X=, Y=, S=, E=, M=) in the command string is separated by a comma "," (Comma is the separator or delimiter in Section3D code!)
2. A referenced point is defined by "F=" which stands for From=Point Number.
3. Only the first point (Point 1) is a Free Point which points to itself (since F=1) and is distinguished from other referenced points by cyan color.
4. Depending on whether a point is referenced or free the value of X= and Y= become either absolute or relative Cross-section offset/elevation. This is similar to the AutoCAD absolute "X,Y" and relative "@X,Y" coordinate system. Please note the difference in (X,Y) values of point 1(absolute) and of point 2 (relative).
5. Like in the Cartesian plane, the negative direction of offset change(X=) is to left and the negative direction of elevation change(Y=) is down.
6. "S=" represents the change in Slope and "S=-6%" means "Down at 6% grade" and "S=-2" means "Slope down at 2:1 slope.
7. A subassembly point can be located by providing either (X=, Y=), (X=, S=) or (X=, Y=, S=), and in case all three values are provided (X=, Y=, S=) the Y= value will override the X= value which only determines the left or right direction depending on whether it is negative or positive.
8. A Link (which can be added like the point from the "Links" node) is a line segment joining the subassembly points and comma is again the delimiter as shown below.
To target X=, Y=, S= or E= to a Civil 3D object, simply select the command string -> Right mouse click -> Edit Dialog.
The same Edit Dialog can be displayed by graphically picking the point -> right mouse click ->Edit dialog
The 'X=' value of Point 2 is now targeting Track1 alignment, 'Y=' value of Point 3 is targeting its profile CL1 and the Point 4 is targeting the EXISTING SURFACE. All three points are now constrained by the Civil 3D objects and this procedure is shown in the next three slides.
You can also target the S= value to the Civil 3D superelevation data if they exist in Civil 3D.
Although these key words are rarely used and not fully supported in Section3D, (L=, A=, S=) combination (L= Length, A= Angle measured in degree in counter-clockwise direction, S= Slope of the base from which the angle is measured). Note that in this case S= must be defined by the direction of two point numbers.
The (X=, Y=, S=) values can be also constrained by the previous points. For example, the below slide shows how the offset and slope of the point 4 are dictated by the point 2 (using either .X .Y or .S syntax). The ability to define this kind of direct relationship is necessary if you want to create a dynamic subassembly template, and you must decide carefully when to use these options.
With .X and .S, when you graphically move point 2, point 4 will always follows point 4 according to the predefined relationship.
As demonstrated before, E= can be used to extend a point to a surface, but it can also be used to extend to an imaginary line segment between two points defined by the point numbers as shown below.
To see this code in action try to move point 3 graphically to the right as shown below.
If you move point 3 beyond the limits, the code will fail and the execution of all referenced points collapses except the free point. Don't panic yet because this is the very idea of Section3D ! From Section3D Editor menu -> Edit -> Highlight Failed Points will highlight the point in yellow which failed to execute as shown below.
If you remove the "E=<1-2>" from the command string all points will display again since no geometry is working again. Understanding this failure, you are now ready to move on to the advanced concept of Section3D called "Cases"
Cases is a very important Section3D concept. It's purpose is two-fold:
1. To organize and modularize Section3D code
2. To make decisions by executing one case from a group of different cases
After creating the points (1, 2, 3) as shown, Select the "Cases" node -> right mouse click -> Add Group. This will add a Cases group with a default Case1 as shown below.
Rename the Cases group to "CUT-OR-FILL" and rename the Case1 to "FILL". You can create any number of case by simply right click on the "CUT-OR-FILL" cases group and "Add Case". Add Points and links as shown below.
If you graphically move point 1, you will see that depending on the case, either "CUT" code or "FILL" code will take over. In other words, whatever case succeeds will be be executed and loop out of the Cases group "CUT-OR-FILL".
Cases Group can have any number of cases within that group. For example, proceed to add two more cases "CUT-DITCH" and "FILL-DITCH" with their points/links code as shown below.
Now you can tell Section3D to execute different cases in a certain order. Select "FILL-DITCH" and drag and drop (by holding the left mouse click) to the Cases group "CUT-OR-FILL". Repeat this drag-and-drop operation to the "CUT-DITCH". You will not see that the sequence of case execution is now changed. Section3D will test for CUT-DITCH, FILL-DITCH, FILL and then CUT, repectively as shown by the next two slides.
Click to View how to Drag-And-Drop one case over others to set the priority of execution
From Section3D Edit menu -> Hightlight Failed Points -> Cut Ditch fails and the next Case "Fill Ditch" executes successfully.
Graphically move the point 1 to the left side close to the end the Existing Ground and both "CUT-DITCH" and "FILL-DITCH" fail and the next case in line "FILL" slope executes successfully.
Lower Point 1 until the case "FILL" also fails and the last case "CUT" will take over.
Now, mark all daylight points in all four cases by appending the M= code with the Marker Name "LD" (M=LD).
Create another "Cases" group called "WALL" and add the following Points/Links/Shapes code.
Wall is created 2 units left of the daylight point regardless of which case succeeded. The daylight point numbers are different for each case but when they are all marked with the same Marker name, any of the following points can reference the daylight point by the Marker name instead of the point number (i.e. F=LD).
Simialrly, you can use the marker name in any of the string component. For example, following is allowed in Section3D:
F=LD (LD is a marker name)
X=EP.X, Y=EP.Y, S=EP.S (EP is a marker name of a successfully executed point)
"REP,2,4,5,LEP" in the link string where REP and LEP are marker names of successfully executed poitns
Marker Name can also be used in the "Design Surface Code" for stripping offset limits as shown below.
Typical Examples of Section3D key words and Coding syntax:
F=2,X=-3.5,Y=-1.2
(Starting from Point 2, to left 3.5 and down 1.2)
F=6,X=-4.5,S=-2%
(Starting from Point 6, to left 4.5 at 2% grade down)
F=9,X=2.5,S=-2,M=DITCH
(Starting from Point 9, to right 2.5, at 2:1 slope down, Mark this point with the name DITCH)
F=12,X=-1,Y=-1.2,S=-2%
(Sarting from Point 12, to left side, grade 2% down until the elevation difference reaches 1.2)
***
F=22,X=2.5,S=-2%,E=<4-8>
(Starting from Point 22, to right side, grade 2% down, extends to the imaginary line segment between point 4 and point 8)
***
F=2,X=<4.X>,S=<4.S>
(Starting from Point 2, to the offset of point 4, at the same slope of point 4)
F=7,X=-3.5,S=<3-2>,E=EXGRND
(Starting from Point 7, 3.5 to the left, at the slope defined by by the vector from point 3 to point 2, extend to surface EXGRND)
***
F=7,L=2.5,A=60,S=<3-4>
(Starting from Point 7, Length 2.5, angle 60 degree measured in counter clockwise direction from the edge defined by the vector from point 3 to point 4)
*** The value of "X=" determines either to Left or to Right direction depending on whether it is negative or positive.
Note that S=<3-2> defines the slope from point 3 to point 2. X=<3-2> (width), Y=<3-2> (height) and L=<3-2> (length) are also allowed for the horizontal/vertical offset and the length.