Chuyên đề thiết kế đường trong Civil 3D
A farewell: this will be my last post on the BeingCivil blog, as I have accepted the position of
Social Media Manager in Product Support. I would like to thank you all for joining us here on
the BeingCivil blog, following us on Twitter and YouTube. BeingCivil lives on, with the critical
support of our other great authors: Almas, Jason, Justin and Seth. My congratulations as well to
Joshua Coombs, who takes over as the Technical Lead for Civil in ProductSupport. I wish you
all success and happiness in the coming holiday season and beyond, and finally, don't forget to
"Be Civil"!
55 trang |
Chia sẻ: tuanhd28 | Lượt xem: 1974 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Chuyên đề thiết kế đường trong Civil 3D, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 1
Bài 1: Tạo bề mặt
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 2
Ở đây không đi sâu vào phân tích địa hình và khai thác các thuộc tính của nó. Chúng ta có
thể tự tìm hiểu thêm trong tài liệu lớp chuyên đề qui hoạch chiều cao đã đề cập.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 3
Bài 2: Thiết kế bình đồ tuyến
Có hai cách tạo Aligments (AL),
nếu chúng ta đã có tim tuyến thì
chọn Create Aligment form
Polyline nếu chưa và tự tạo mới thì
chọn Create Aligments by Layout..
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 4
Sau đó thực hiện theo dòng lệnh của chương trình.
Tiếp theo chúng ta xem xét vấn đề tiêu chuẩn thiết kế và quay siêu cao như thế nào.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 5
Chúng ta có thể hiệu chỉnh lại
công thức tính siêu cao cho chính
xác. Với các phương pháp quay siêu
cao khác nhau.
Quay siêu cao theo tim
Quay theo bụng
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 6
Công thức quay siêu cao đã hiệu chỉnh chính xác:
Trong đó:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 7
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 8
Gán siêu cao cho tuyến
Chọn vào tuyến cần áp siêu cao và click chuột phải chọn:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 9
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 10
Hiệu chỉnh nhãn cho tuyến
Cách hiệu chỉnh giống nhau cho các loại nhãn
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 11
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 12
Bài 3: Thiết kế trắc dọc
Thiết kế trắc dọc tự nhiên Thiết kế đường đỏ
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 13
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 14
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 15
Thiết kế đường đỏ
Sau đó thực hiện các lệnh theo dòng lệnh
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 16
Xuất thông số trắc dọc
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 17
Chọn vào trắc dọc cần xuất, click chuột
phải chọn Profile View Properties
Chọn vào tab Band
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 18
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 19
Gán nhãn cho trắc dọc
Chọn vào trắc dọc cần gán nhãn, click
chuột phải chọn Edit Lables
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 20
Bài 4: Thiết kế trắc ngang
1. Khai báo mặt cắt ngang
Mặt cắt ngang là phần không thể thiếu trong thiết kế hình học đường, nó liên quan chặt
chẽ tới các yếu tố như: bề rộng đường, cấu tạo mặt cắt ngang, kiểu mặt cắt ngang, siêu cao,
độ mở rộng, khối lượng đường
Có thề tạo mặt cắt ngang từ thư viện sẵn có trong Civil hoặc khai báo một loại mặt cắt
ngang mới. Mở hộp thoại Tool Palettes từ menu Corridor/Subassembly Tool Palettes
(Ctrl+3) chứa các mẫu mặt cắt ngang, các loại vật liệu áo đường, bó vỉa và góc hướng
taluy.
Trong Tab Assemblies, đã có sẵn những mặt cắt ngang, click vào đối tượng đó và kéo ra
nền cad sẽ tạo ra mặt cắt ngang với các thông số hình học và loại vật liệu mạc định ban đầu.
Hộp thoại Tool Palettes
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 21
Tạo mới một mặt cắt ngang như sau: Chọn menu Corridors/Create Assembily, xuất
hiện hộp thoại Create Assembily, đặt tên là mat cat 1, chọn OK.
Tùy theo vào yêu cầu thiết kế mà chọn ra các kiểu áo đường, bó vỉa, phân cách, taluy
thích hợp để gán cho Assembily đó. Mỗi một loại Subassemblies đều có những đặc điểm
riêng, dùng cho từng yêu cầu nhất định, chẳng hạn như loại đường có siêu cao, mở rộng bụng
trong đoạn cong, đường ngoài đô thị, trong đô thị, đường có giải phân cách
Có thể tham khảo các thuộc tính này trong thư mục C:/ program/ Civil 3D 2010/ Help/
C3DStockSubassemblyHelp.pdf.
Ví dụ khai báo áo đường kiểu Subassemblies LaneOutsideSuper:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 22
Các thuộc tính trong Properties của Subassemblies đó có thể tìm hiểu thêm trong file
pdf đã nêu ở trên. Đây là loại Subassemblies có thề tự động quay siêu cao khi vào đường
cong và được sử dụng cho tất cả các loại đường.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 23
− Khai báo bó vỉa
− Khai báo vỉa hè
− Khai báo Taluy
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 24
2. Tạo mô hình tuyến
Trên cơ sở bình đồ tuyến, trắc dọc, mặt cắt ngang tuyến, tiến hành xây dựng mô hình
tuyến như sau:
Chọn Alignment
Chọn đường đỏ thiết kế
Chọn mặt cắt ngang
Xuất hiện hộp thoại Create Corridor, chọn set Targets để tham chiếu với bề mặt tự
nhiên
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 25
Click trong Frequency để chỉnh khoảng cách các cọc trong tuyến, ví dụ ngoài đường
cong cắm 20m, trong đường cong và đoạn nối siêu cao cắm 10m
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 26
Mô hình 3D tuyến đường
3. Tạo các đường Samle Lines cắt ngang qua tuyến
Chọn menu Sections/Create Sample Lines, chọn Alignment cần trắc ngang, xuất
hiện công cụ Sample Line Tools:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 27
Công cụ Sample Line Tools
Trong Sample Line Creation methods mạc định ban đầu là At a Station cho phép add
từng Sample Line trên mặt bằng tuyến, Chọn From corridor stations cho phép tạo hàng loạt các
sample line theo các cọc đã định trên Corridor ban đầu:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 28
Nhãn cho các Sample Lines sẽ dùng để ghi cọc cho tuyến giống như trên trắc dọc:
Xuất hiện hộp thoại Sample Line Lables, chọn Section Name và Add
Nhãn được tạo ra mạc định lấy tên theo lý trình, có thể sửa bằng cách đổi tên Sample Line
trong ToolSpace.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 29
Đối với đường thẳng có khoảng cách các cọc đều nhau, có thể tạo nhãn nhanh bằng cách
thêm tiền tố trước Sample Line Number trong hộp thoại Text Component Editer – Contents
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 30
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 31
Bài 5: Xuất trắc ngang
1. Xuất trắc ngang
Chọn menu Section/ Create Multiple Section View
Chọn Create Section View, chương trình tự động xuất trắc ngang theo mẫu mạc định. Từ
đây, chúng ta sẽ chỉnh sửa nhãn của nó theo các bản vẽ ở VN.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 32
2. Hiệu chỉnh trắc ngang
a) Tên cọc, lý trính
Chọn Edit Section View Style, trong Tab Title Annotation
Trong hộp thoại Text Component Editor lần lượt gán thêm các thuộc tính
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 33
b) Cắm cờ và ghi đường gióng tại khoảng cách lẻ và mia
Tạo Block có tên co như sau:
Từ đường phía trên của Assemblies trong mặt cắt ngang, chọn Edit Lable
Tạo nhãn mới hiển thị với Type là Grade Breaks
Kết quả như sau:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 34
Tạo các đường gióng bằng cách Add line trong hộp thoại Lable Style Composer
Trong Type là Grade Breaks tạo thêm nhãn mới đặt tên là cam co, Add Block tên
co vừa tạo ra trong Tab Layout
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 35
Tăng Weeding nhãn cam co giá trị 100
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 36
Tạo dốc ngang bằng cách Add thêm nhãn Percent Grade theoType Segments.
Kết quả như sau:
c) Tạo các bảng ghi giá trị
− Bảng cao độ tự nhiên
Trong hộp thoại Section View Properties, tạo nhãn mới đặt tên là CDTN.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 37
Các nhãn cao độ sẽ lấy theo tick của Grade Breaks
− Bảng khoảng cách lẻ
Từ nhãn CDTN, tạo mới nhãn tên Khoang cach le, nhãn lấy ra khoảng cách lẻ là
Incremental Distance
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 38
− Bảng cao độ thiết kế
Tương tự như nhãn CDTN, tạo nhãn mới tên là CDTK với Section tham chiếu là Corridor
− Bảng khoảng cách mia thiết kế
Tương tự như nhãn Khoang cach le, tạo nhãn mới tên là Khoang cach mia với Section tham
chiếu là Corridor Kết quả sau khi hiệu chỉnh như sau:
Quá trình hiệu chỉnh trên đối với một mặt cắt ngang điển hình. Để tạo ra cho tất cả các mặt cắt
ngang còn lại, ta làm như sau:
Trong hộp thoại Section View Properties, chọn Save as band set
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 39
Chọn sectionView Group, trong Change Band Set, chọn Import Band set tên cat ngang
vừa tạo ra.
Kết quả sau khi gán các nhãn cho toàn bộ mặt cắt ngang như sau:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 40
PHỤC LỤC KHẮC PHỤC MỘT SỐ LỖI TRONG CIVIL
1. Subassembly Names Disappear on Copy, Move or Mirror
Do your Subassembly names disappear whenever you use the subassembly commands
“Copy to”, “Move to”, or “Mirror”?
After the jump learn how to resolve this issue.
The issue lies with the subassembly naming template. I don’t know if others out there in
blog land knew this but using “” is no good.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 41
To fix the issue change your naming template to use “” (see below).
The same name is provided but now when you copy, move, or mirror the names don’t
disappear.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 42
2. Magic Corridor Boundary
So you have a corridor surface which needs a boundary. You’re used to using Civil 3D
2009 and you know about the Automatic boundary, say, from the daylight lines.
You also know that the Automatic boundary doesn’t always happen depending on certain
conditions. So you installed Civil 3D 2010 because you heard about this new fantastic
boundary method known as “Corridor extents as outer boundary”. You opened your
corridor properties only to discover that the option isn’t where it’s supposed to be. Follow
the jump to find it.
This option only exists when your corridor has multiple baselines. CRUD! Enter the
workaround.
Just add another baseline to your corridor. That’s it. Don’t add any regions to it, just an
empty baseline. Go back to your boundaries tab and voila, you can add the extents
boundary.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 43
3. Civil 3D Part Builder – Not JUST 3D – Part 2
Creating a Custom Variable
Based on some of the comments from the previous post, I am going to take a couple of steps
ahead and cover creating a custom variable that can be passed to the Parts List in Civil 3D.
This post is assuming you already understand the basics of Part Builder and know how to
model a structure. If not don’t worry, we will be getting back to the basics in Part 3.
Step One (Note: it is very important that these steps be followed in exact order), click the
options button at the top of the Content Builder as shown.
In the Options dialog box check the Custom Sizing Flag and click OK. What this does is
allow the ability for us to create a custom variable and then later adjust that variable in the
xml files that will allow the custom variable to be visible in the Part List. This is an
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 44
important step, because we can still create the custom variable in Part Builder, but if this
option is not checked then certain information for that variable will never come through
after editing the xml files and then never be available in the Parts List.
Step Two, create the initial variable. In the Content Builder go to Model Parameters right
click and select Edit.
In the Model Parameters click New and you will get the following dialog box.
In this example I am creating a parameter that I will use for an inline reducer structure I
created. I am already using SID, the Inner Structure Diameter for the diameter coming
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 45
into the structure. So I need another parameter for the reducing diameter coming out of
the structure so that I will be able to create multiple part sizes in Parts List from a single
structure. Make sure you keep in mind or write down the exact name and description of
the new parameter just created, because we will need to add that exactly as it is here in one
of the xml files. For now just use a constant value for the Equation because we will modify
this in the Size Parameters.
Step three, modify the size parameters. Right click on Size Parameters, as show below, and
select Edit Configuration.
In the Parameter Configuration dialog box, shown below, find your new variable. We will
want to modify this variable here as much as we can to be what we want so there will be
less to do in the xml files
In my variable RID, the Reducing Inner Diameter, I have changed the Data Storage type
from a constant to a List, that way I can go into the values for this variable and add all the
sizes that I will use to create this part in Parts List. We also want to change the Visible
attribute from False to True; this is part of what will allow us to see this variable in the
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 46
Parts List when adding sizes. Now look at the Context and Index Attributes for this
variable, shown above in the box, these are the pieces of information that we will need to
modify in the xml files that will allow the variable to pass to the Parts List. You’ll notice
that in the context of this variable that it is calling it a Model Distance Parameter, where
the other variables have a specific context matching the variable itself. This is because the
context for this variable does not exist in the xml file, so we are going to have to add it. Also
you will notice the Index of this variable is set to 1, were the others that pass to the Parts
List are 0, we will have to modify this as well in the xml file.
Step four, edit the xml files. Make sure you save your structure and exit Part Builder, and
close Civil 3D before we edit the xml files. Once everything is saved and closed there are
two xml files we need to edit. The first will be the xml file for the structure itself which will
be located in /Pipes Catalog/US Imperial Structures/Your Chapter/Reducer.xml, where
is the location on your system for the Pipes Catalog and Your Chapter is the chapter
you created at the time you created or saved the initial structure. The second xml file to
edit will be /Pipes Catalog/Aecc Shared Content/AeccPartParamCfg.xml, this is the xml
file that will read the context of the structure and eventually allow us to pass this variable
to the Parts List.
Open the structure xml file with notepad.
Find your new variable as shown highlighted above. Then find the context and index for
this variable also shown highlighted above. Change the context to be something similar to
the description with no spaces, for this variable I used “StructReduceDiameter”. Then
change the index to “0”. Remember to keep the parenthesis on these attributes. Save and
close the xml file.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 47
Now open the AeccPartParamCfg.xml file.
In this xml file the new variable does not exist, so we have to create it in two places. In this
case the easiest thing to do is find a variable that is similar to the one you created; the RID
variable is similar to the SID variable. Do a search for SID copy the line and paste into a
new line as shown highlighted above. Edit the variable name, description and context to
match what is in the structure xml file.
Now we need to add the context to the Structure Domain.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 48
Find the Structure Domain towards the bottom of the xml file or do a search for the
context of the variable that is similar to the one you created. It is very important in this
step to make sure we add the context of the new variable in the appropriate Domain type.
In the case of the inline reducer, I created it as a Junction Structure, so I added the context
of “StructReduceDiameter” in the Junction Structure category, as highlighted above. Save
and close the xml file.
The final step is to verify that everything works. Reopen your structure in Part Builder and
go to the Size Parameters, Edit Configuration.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 49
ou will see by the highlighted information above that the Context and Index of the variable
is now reading the information that we edited in the xml files. Exit Part Builder and go to
your Parts List in Civil 3D add the Part Family for the structure if not already in your list
and go to Add Part Size.
You will see by the highlighted information that our custom variable is now available in
Parts List.
Microsoft XML Notepad 2007 ~ this is a full-featured XML editor
Download:
4118-ba5f-4f30fe913628&displaylang=en
Detailed Info:
NotePad++ ~ this is a Notepad or Wordpad replacement that has good xml editing tools
Download: (choose npp.5.4.5.Installer.exe)
plus/files/
Detailed Info:
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 50
4. Modifying Cover and Slope Rule
H
ave you ever started laying out a pipe network using the cover and slope pipe rule or Pipe Cover
and found the pipes down near the zero elevation? Well if your like me you don’t really
appreciate having the pipes down at the zero elevation. Here’s a way to change the rule to put the
elevation at a place which would be more desirable without having to move the pipes later on.
NOTE: Before you start make sure you save a copy of the C3DPipeRules.dvb to another location
to easily go back to the original state.
To do this open up the Visual Basic Editor after you have worked with a pipe (working with a
pipe should load the C3DPipeRules.dvb file automatically). This post has more information on
how to load Visual Basic files. Go to the CoverAndSlope Module and scroll down to the Public
Sub ApplyWithoutSurface routine, to the part that is below:
1 ‘ If the last elevation is equal to our double max,
2 ‘ then the last elevation has not been set in the network state
3 ‘ and we will set the starting elevation to the minimum cover
4 ‘
5 If dLastElevation = c_DBL_MAX Then
6 dNewPipeZ = 0
7 If eFlowDir = aeccPipeFlowDirectionStartToEnd Then
8 dNewPipeZ = dNewPipeZ – dMinimumCover
9 oPipe.StartPoint.Z = (dNewPipeZ – oPipe.OuterDiameterOrWidth * 0.5)
10
11 ElseIf eFlowDir = aeccPipeFlowDirectionEndToStart Then
12 dNewPipeZ = dNewPipeZ – dMinimumCover
13 oPipe.EndPoint.Z = (dNewPipeZ – oPipe.OuterDiameterOrWidth * 0.5)
14 End If
15 ‘ otherwise set the starting elevation to the last elevation
16 ‘
17 Else
18
19 If eFlowDir = aeccPipeFlowDirectionStartToEnd Then
20 oPipe.StartPoint.Z = dLastElevation
21 ElseIf eFlowDir = aeccPipeFlowDirectionEndToStart Then
22 oPipe.EndPoint.Z = dLastElevation
23 End If
24 End If
You can change the dNewPipeZ = 0 (Line 5), to a new value or we can change it to prompt the
user for the elevation they want to use. The new line could be the following:
dNewPipeZ = ThisDrawing.Utility.GetReal(vbCrLf & “Surface not found, enter invert elevation
to use:”)
If you then create a pipe network you will see that we have two problems with the change of
prompting the user for the invert elevation. The first is the invert elevation of the first pipe is not
the same as the one we entered into the program and the second is that it asks you again to enter
the invert elevation at the end of laying out the network.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 51
The first problem is explained in the code shown above, it is setting the starting elevation to the
minimum cover as told in the programming notes. To correct this remove lines 8 and 13 from the
code above and change the negative sign and the word outer in lines 9 & 14 to a positive and
Inner. I suggest using a ‘ before the line to remove it and adding a note to explain why you did
the change so you can easily go back at a future date and reverse the revision. The
oPipe.Endpoint.Z and oPipe.StartPoint.Z refer to the center of the pipe.
The next change we have to make is to get the program to not ask you what the invert elevation
is the second time. To accomplish this we are going to add an If Then statement around where it
is setting the starting elevation. So right after line 5 add:
If oPipe.StartPoint.Z = 0 Then
After line 16 put End If. So the finished code should look something like this:
1: ‘ If the last elevation is equal to our double max,
2: ‘ then the last elevation has not been set in the network state
3: ‘ and we will set the starting elevation to the minimum cover
4: ‘ This portion was revised to allow the user to input the starting elevation instead of
5: ‘ setting the starting elevation to the minimum cover.
6: ‘
7: If dLastElevation = c_DBL_MAX Then
8: ‘ To get the program to not ask us for the elevation again we will check to see if the start point
z is zero
9: If oPipe.StartPoint.Z = 0 Then
10: dNewPipeZ = ThisDrawing.Utility.GetReal(vbCrLf & “Surface not found, enter invert
elevation to use:”)
11:
12: If eFlowDir = aeccPipeFlowDirectionStartToEnd Then
13: ‘ Line below removed to allow the user to provide the invert elevation.
14: ‘ dNewPipeZ = dNewPipeZ + dMinimumCover
15: ‘ The + was a negative sign and Inner was Outer to get invert of the pipe instead of the top
of pipe.
16: oPipe.StartPoint.Z = (dNewPipeZ + oPipe.InnerDiameterOrWidth * 0.5)
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 52
17:
18: ElseIf eFlowDir = aeccPipeFlowDirectionEndToStart Then
19: ‘ Line below removed to allow the user to provide the invert elevation.
20: ‘ dNewPipeZ = dNewPipeZ + dMinimumCover
21: ‘ The + was a negative sign and Inner was Outer to get invert of the pipe instead of the top
of pipe.
22: oPipe.EndPoint.Z = (dNewPipeZ + oPipe.InnerDiameterOrWidth * 0.5)
23:
24: End If
25: End If
26:
27:
28: ‘ otherwise set the starting elevation to the last elevation
29: ‘
30: Else
31:
32: If eFlowDir = aeccPipeFlowDirectionStartToEnd Then
33: oPipe.StartPoint.Z = dLastElevation
34: ElseIf eFlowDir = aeccPipeFlowDirectionEndToStart Then
35: oPipe.EndPoint.Z = dLastElevation
36: End If
37:
38: End If
If you want to go back to the old way just copy over the changed C3DPipeRules.dvb and it
should be back to the original state. You can download a hacked version here if you’d like to
review.
Lệnh SDI để chỉnh lại mở khung nhiều cửa sổ.
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 53
Advanced Daylighting Design and a farewell...
Hi all - this design scenario came up a few weeks ago, funny enough from two different sources,
in Europe and North America. How do you design an Assembly that in cut conditions daylights
from the hinge point and has two parts (see below); first a variable dimension (x) and then a
second part with a fixed dimension (y)? As you may know, at first glance Assemblies can only
have a variable dimension on the "last" daylight portion, where you just tell the Subassembly to
find the surface wherever it is. This seems impossible - how could we achieve this?
To understand the solution we will quickly review the definition of a parallelogram. It is a
rectangle in which the opposing sides have equal length, like this:
Look at the X and Y portions in the first graphic and compare - any ideas? We DO need to start
with a fixed variable and end with a link to find the surface, but here's another hint - you can
create Links as construction items and use the "Omit Link" property. Stumped? Let's take the
design criteria and combine it with the parallelogram concept to get a solution!
Part 1
Use a LinkWidthAndSlope to create a fixed daylight offset
Then add a LinkSlopeToSurface
This is exactly opposite of what we want, right? On to Part 2...
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 54
Part 2 - now we are going to go "backwards" to get the links we actually want.
From the daylight point at the surface, create the same LinkWidthAndSlope, but in the opposite
direction
Then add a MarkedPoint to the end (give it a name when creating)
Now from the original hinge point, attach a LinkToMarkedPoint and provide the MarkedPoint
name
See what you have done, you have created a parallelogram! Now you need to go back to the two
subassemblies you created in Part 1, right-click and Edit Subassembly. In the Subassembly
Properties, just turn the "Omit Link" property to "Yes." Now those subassemblies are just
construction pieces and will not be drawn when you create your corridor. Perhaps now your
horizons have opened up to other possibilities - my thanks to Tomas Lendvorsky, Autodesk's
Solutions Engineer from Prague (he's a whiz with Expressions too!).
Chuyên đề thiết kế đường trong Civil 3D
BQT diễn đàn www.kythuatdothi.com Trang 55
A farewell: this will be my last post on the BeingCivil blog, as I have accepted the position of
Social Media Manager in Product Support. I would like to thank you all for joining us here on
the BeingCivil blog, following us on Twitter and YouTube. BeingCivil lives on, with the critical
support of our other great authors: Almas, Jason, Justin and Seth. My congratulations as well to
Joshua Coombs, who takes over as the Technical Lead for Civil in Product Support. I wish you
all success and happiness in the coming holiday season and beyond, and finally, don't forget to
"Be Civil"!
Các file đính kèm theo tài liệu này:
- hdsd_civil_tk_9845.pdf