& Construction

Integrated BIM tools, including Revit, AutoCAD, and Civil 3D
& Manufacturing

Professional CAD/CAM tools built on Inventor and AutoCAD
Integrated BIM tools, including Revit, AutoCAD, and Civil 3D
Professional CAD/CAM tools built on Inventor and AutoCAD
Any referenced datasets can be downloaded from "Module downloads" in the module overview.
Transcript
00:04
MORGAN SMITH: So if this is the first time you've met me,
00:08
I've been with Autodesk now for five years based
00:11
in Brisbane, Australia.
00:13
My background-- done a number of different roles over the years,
00:17
ranging from surveying, being a draftsman on the board,
00:21
through to CAD management senior technician,
00:24
so working on a lot of large complex infrastructure projects
00:27
here in Australia ranging from working with multiple road
00:32
transit authorities and joint ventures, airports, rail,
00:36
bus [INAUDIBLE],, roads and highways.
00:38
I've pretty much done most of it.
00:40
And then before I joined Autodesk,
00:43
I was a technical consultant for a couple of years,
00:45
doing a lot of technical support, software
00:47
implementation, training.
00:49
So you may have also seen me at Autodesk University
00:52
in the last couple of years.
00:55
So as the leading slide said, we're
00:57
going to be talking about Subassembly Composer, or really
01:00
an introduction to it.
01:02
So if you've never used such Subassembly Composer,
01:05
we're going to talk about why you would use it,
01:07
what the interface looks like, how to navigate it around,
01:11
and then also dig into how we actually
01:14
develop that subassembly.
01:16
Then, from there, I'll open up the product
01:19
and show you how to compose that subassembly.
01:22
And then once you've made your assembly,
01:24
we're going to take it into Civil 3D
01:26
and most importantly, show you how to update it.
01:30
If you made an error or something like that,
01:33
or it needs improvement, how do you actually
01:35
update that in your design?
01:36
And then from there, I'll just probably share some tips
01:39
and tricks that I've learned over a period of time
01:42
when using the software.
01:46
So being an Aussie, I love acronyms.
01:49
I love shortening everything.
01:50
So you'll find that sometimes there'll
01:52
be some acronyms in there.
01:54
So SAC stands for Subassembly Composer.
01:58
So let's focus on why we would use that.
02:01
So Subassembly is used to create your own
02:06
intelligent and interactive subassemblies
02:09
for a specific need.
02:11
So what happens is the computer used the computer's
02:15
intelligence to solve complex grading
02:17
problems with much less work that'd be required otherwise,
02:21
so basically creating something that has decisions in it.
02:25
And you're handing that over to the computer
02:26
to perform that task.
02:28
Now, the workflow, if you've used Dynamo or anything
02:31
like that, it's all about writing code.
02:35
But you don't require a large investment in time
02:38
to actually learn how to use it.
02:40
So that's about what the parallels
02:44
are when it comes to Dynamo.
02:45
Dynamo's the same.
02:46
It's a visual programming.
02:48
Same with Subassembly Composer, it's visual.
02:51
You drag and drop, you place things into things.
02:54
So when you're developing your subassemblies,
02:58
obviously the normal software development strategies
03:01
should be used.
03:03
And what I found is that like Dynamo, it
03:06
has a fairly shallow initial learning curve.
03:09
So it's fairly easy to pick it up once you've done that.
03:14
Now, most importantly, I believe that GHD
03:17
has deployed Subassembly Composer with Civil 3D.
03:21
If it hasn't, make sure you reach out to your IT help desk
03:26
to confirm that.
03:27
Now, what they'll do is they'll actually,
03:31
if it hasn't been deployed with the first time,
03:33
they'll just rerun the install and then add that back in.
03:37
But if you have admin rights and you're able to fix that,
03:40
you need a copy of the installer in order to fix that.
03:46
A couple of terms that you just need to be familiar with,
03:49
and I'll refer to these quite often during the presentation.
03:54
They're also terms that are used Civil 3D as well.
03:57
So if you're used to using assemblies and corridors
04:00
within Civil 3D, you will be familiar with points, links,
04:04
and shapes.
04:05
And then from also there, we have targets.
04:09
Then the last two, SAC, Subassembly,
04:12
so a bit of a mouthful, Autodesk Subassembly Composer
04:15
for Autodesk Civil 3D.
04:16
So you can understand why people quite often will shorten it.
04:21
Then the last one, PKT.
04:23
The PKT file is the file format that we use,
04:27
that the program uses.
04:29
And what it is, is basically a zip file.
04:31
And it contains all the necessary files
04:34
to make that custom assembly work.
04:36
And we'll talk about that later, about how to actually harvest
04:39
existing subassemblies so that you can have a look,
04:43
open them up in Subassembly Composer,
04:45
and see how they work.
04:46
So that way you can modify them to meet your needs.
04:52
So let's dive into the interface.
04:54
So if you've never seen it before,
04:56
this is what it looks like.
04:58
So it's really a simple interface.
05:00
What it's designed to do is to help you develop subassemblies
05:05
without the need to learn programming.
05:08
Now, underneath, Subassemblies.net.
05:11
And so this interface was created so that way
05:14
it would write the code for you.
05:16
So that way you didn't have to do that.
05:18
So it's a graphical interface.
05:19
It builds the components in the background
05:22
just by adding the bits and pieces.
05:24
So the basic interface is sort of what
05:28
you would call a drag and drop.
05:30
So I'll just get my laser pointer up.
05:32
So over here on the left-hand side, we have the toolbox.
05:35
So we basically will take a component.
05:36
We'll drag and drop it into the flowchart
05:39
in order to define the geometry.
05:41
Then, from there, you add basic building block of the assembly,
05:44
so think points, links, and shapes.
05:49
For a simple process, you can build something as simple
05:53
as a curb assembly.
05:55
Or you could go something more advanced,
05:57
where it's actually making decisions about grading
05:60
or even you can actually embed multiple shapes
06:05
into a subassembly.
06:06
And we'll show that a little bit later as well.
06:08
So depending on what your needs are,
06:11
this will probably do it for you.
06:12
But we'll also remind you that there
06:15
are a lot of components that are available with the product.
06:19
So you may be able to find that that meets your needs rather
06:22
than having to build a custom one.
06:26
So when you open the product, there's
06:28
the opportunity to rearrange the layout.
06:30
I personally, myself, have not done that.
06:33
But there is the opportunity to do that.
06:35
Up on the pulldown menu, if you go to the View tab,
06:38
there's a number of options there.
06:40
If you find that one of the panels is missing,
06:42
you can always go to Restore Default Layout
06:45
and that will restore its layout.
06:50
Then from there, we have the toolbox.
06:52
So this is where we're going to be doing a lot of the action.
06:56
So this is where all the elements
06:59
are stored for constructing your subassembly.
07:02
So the panel provides all the elements
07:05
that you'll use to build your flow chart.
07:08
At the simplest, we may just use two or three,
07:11
which is our points, links, and shape.
07:13
So if we want to build a curb, we'll drag those from there
07:16
into that flowchart.
07:17
And then to use any of those elements,
07:19
we just click and hold using a left mouse button
07:23
and drag and drop it into the Flowchart panel.
07:27
So as an example, we have the different elements,
07:30
so geometry, points, links, and shapes.
07:33
That's pretty straightforward.
07:35
Advanced geometry-- so this is where
07:36
we start getting into if we want to start calculating
07:39
points or generating curves.
07:41
So for example, you want to do a pipe or maybe
07:44
roof of a tunnel, things like that, daylight rounding.
07:48
Auxiliary-- these ones here, we use
07:50
these to generate geometry that may not
07:52
be included in the subassembly.
07:55
So if we need to, say, if we've got a valley gutter
07:60
and we need to locate a point to use to apply a radius to that,
08:05
that's an example of an auxiliary point.
08:08
Workflow-- these are great.
08:10
So for example, if we have a decisional,
08:14
where we want to talk about cut and fill,
08:17
so if we have something that's in either a cut
08:20
scenario or a fill scenario, we can put a decision
08:24
in with some switches.
08:26
And then finally the miscellaneous one.
08:28
So these are parameters.
08:29
So think of if we had an assembly with multiple curb
08:34
types in it.
08:35
Those curb types have different variables in it.
08:37
And we can set up what we call a switch and sequences.
08:43
And then we can put those variables in there.
08:44
And I'll show that to you later.
08:47
Then from there, the flowchart, this
08:49
is where all the action happens.
08:51
It's what I call-- it's a straight line of logic.
08:57
So basically you start with the green dot,
08:59
shown as a big green circle.
09:01
And then you start adding your elements.
09:05
And so the program will then process that logic one step
09:09
at a time.
09:10
So as you'll find, when I model a particular object today,
09:15
you'll see that those--
09:16
how it's built. If the program--
09:20
if there's an error that you've put into the program
09:23
as you're working, there will be a small red circle
09:27
with an exclamation mark.
09:29
And that will be displayed in the upper right-hand corner
09:31
of that particular component.
09:33
So then from there we have our Preview panel.
09:37
What that allows us to do is view our subassembly model
09:41
as it's built. And up at the top there,
09:45
you've probably noticed that there are two different modes.
09:49
Depending on which one you have toggled will show how the--
09:57
what we call the different states of that subassembly.
09:60
So the roadway mode is really your typical mode.
10:03
It shows anything to do with--
10:04
so if you put targets for surfaces, and target offsets,
10:10
and things like that.
10:11
And then the other one is when it's only
10:14
built using Subassembly-- then built--
10:16
in built the parameters, so slightly different but very
10:20
important in that, when you're doing that.
10:24
The properties-- if, when we place an element
10:27
into our flowchart, we want to inspect that,
10:30
so in the Properties, we will have different information
10:34
there.
10:35
And so what you basically will be doing
10:37
is defining the subassembly's geometry in that panel.
10:43
Then the last panel, multiple tabs on this one.
10:47
Basically what it does is it's all the miscellaneous settings
10:53
that define your Subassembly.
10:55
So talk about packet settings, input/output parameters,
10:58
target parameters, super, cant, and those sort of things.
11:01
They're all stored in there, and that's
11:04
what defines Subassembly.
11:05
So if we look at the different parameters,
11:10
I'll just quickly flick through that.
11:13
So in the Packet Settings, this is where you actually
11:17
assign the name of the subassembly,
11:20
give it a description.
11:21
Also, this gives you the opportunity
11:23
to define some help documentation.
11:25
So when you're in the product, it
11:29
gives the users an opportunity to review that documentation
11:32
and also an image of that.
11:36
Your input and output parameters,
11:38
these include our subassemblies and parametric,
11:44
we need to have these parameters built.
11:46
And we'll go through and talk about this.
11:49
Different values obviously have different types.
11:53
So think integer, double string, those sorts of things,
11:58
and then also whether they're inputs or outputs, how
12:01
they're controlled, and things like that.
12:04
Then from there, at Target Parameters, so obvious ones--
12:08
horizontal, vertical, surfaces, those sort of things.
12:11
Now, one little tip is that as you go through it, if I just
12:16
step back one slide, you'll notice that there are
12:21
no spaces in these parameters.
12:24
So very important little tip there
12:25
that as you go through and develop these,
12:28
there's no spaces available in those.
12:31
But yet in the preview values and the display names,
12:35
spaces are allowed.
12:36
So interesting one there.
12:38
Then from there, these are just if you're
12:40
using superelevation, cant for the rail and then, of course,
12:44
the Event Viewer.
12:45
So Event Viewer enables the users
12:47
to view the messages, to describe problems and things
12:50
like that as we go along.
12:52
What we're going to do now is we're
12:54
going to just talk about how to develop a custom subassembly.
12:58
Like anything, you need to spend the time
13:03
to do some planning, gets them organized.
13:05
And when you do that, it pays dividends,
13:07
and it saves you a lot of rework down the line.
13:09
So let's look at this process.
13:11
So what I've done here is just drawn a basic sketch.
13:16
So when I do that, I've got a valley gutter here.
13:21
I've shown basically what dimensions
13:25
that I may need to apply to this particular object.
13:29
So from here, you can see I've got
13:31
my width of the curb itself, what the depth of the valley
13:38
is, overall height of the object, and things like that.
13:40
So these are the things that you need
13:41
to consider when doing that.
13:44
And then from there, once you've drawn your sketch,
13:46
I just jump into Civil 3D.
13:48
And I draw my object up.
13:50
And then I put some dimensions on it
13:51
to see how that actually works.
13:54
So that way when you do that, it allows
13:59
you to give you some more thought and detail and what
14:04
is required.
14:06
And then from there, you can just create something
14:09
like just a basic flowchart to map
14:11
out what it may look like in draft.
14:13
So for example, here, I've just used an older product that's
14:17
actually not available anymore.
14:18
But start-- you identify your origin.
14:22
So if I go back to the previous slide,
14:24
you can see here that I've identified my origin.
14:27
Every subassembly point has an origin point.
14:30
Generally that is the attachment point.
14:32
That is placed when it's placed on the subassembly.
14:36
Then from there, talk about target widths,
14:39
creating points, and things like that.
14:41
and then entering parameters.
14:43
Then from there, we go into the product.
14:46
And we start placing our points.
14:49
So in this example here, I've got some points, AP,
14:52
which is Auxiliary Points, and auxiliary lines.
14:55
And then I've got my P1s and P2s and Ls for Lines and things
14:59
like that.
15:01
Once we've completed it, we then import it into Civil 3D,
15:04
place it on our palette.
15:05
And then we test, test, test.
15:08
So when we're doing this, we want
15:14
to stretch it to its extents.
15:15
We want to try and break it and see
15:19
if there's any difficult scenarios that it may not
15:22
work in.
15:23
And then from there, we just go back, and we go and fix that.
15:27
But if there is some limitations--
15:30
and it will occur in a small percentage of scenarios--
15:34
maybe the best thing to do is sometimes maybe
15:37
not solve that problem.
15:38
Maybe if the subassembly works for 80%,
15:45
If there are any limitations, put it in the documentation.
15:48
So when you share it with the users in your team,
15:50
that they're aware of that limitation of the subassembly.
15:56
Once you've found any weaknesses in that subassembly.
15:60
You obviously go back, refine that, tweak it
16:04
based on that feedback.
16:05
And then obviously then we document that.
16:11
What you'll find is in the existing Civil 3D
16:14
documentation, there is an extensive help file
16:18
on all the subassemblies.
16:20
It gives you all the information about the attachment point,
16:22
or the origin, the input parameters,
16:25
what they do, dimensions, how it behaves, those sort of things.
16:30
It's all there in the help file.
16:34
So we're getting to our first demonstration.
16:37
So what I'll do here is I'll just exit out of my slides.
16:41
Actually, [INAUDIBLE] first one.
16:44
So in our example, we've talked about the valley gutter simple.
16:48
So what we'll do here is--
16:50
there are a number of points in here.
16:52
But I also want to demonstrate and draw
16:54
your attention to other units.
16:55
So I'll just be opening this one prebuilt.
16:59
And I'll just walk you through the process
17:02
that I did when I generated this.
17:06
And as you can see in my presentation,
17:09
I'm just using the default layout.
17:11
Up here we have our View.
17:12
We click on that.
17:13
And it will just go back to the parameters.
17:16
So what I'll do here is I'm just going to open--
17:19
let's go back to my recent files.
17:23
This is the one I want.
17:26
So as you can see, once I've opened up the assembly,
17:32
you can see the flowchart.
17:34
I have my green start button, and I also have my flowchart.
17:37
And it walks its way through a number of objects there.
17:41
So what we've got--
17:43
so I'll just show you how this is actually built.
17:48
So as you know before, that this particular valley gutter has
17:54
defined widths, concrete depths, a flow-line depth,
17:57
and those sort of things.
17:59
So the first thing we always do is
18:01
we go to our Packet Settings.
18:04
And on the first tab-- and we actually give it a name.
18:07
So we go through, give this subassembly a name.
18:10
So in this case, we got a symbol--
18:12
a description.
18:13
So these information will actually
18:16
show up in the properties palette
18:19
when you place the object inside Civil 3D.
18:22
So important that you do fill them out as you go.
18:25
Then from there-- because we've sketched out our subassembly
18:31
we then enter all our parameters.
18:34
So these will be the dimensions that we sketched up
18:37
in Civil 3D.
18:38
So in order for this to work, what I've done
18:41
is I've gone through and I've got all my different parameters
18:44
here.
18:44
So concrete width is the dimension from P2 to P3,
18:49
my flow line depth, which is this one here.
18:51
I have my width1 and width2, which is 0.1 to 0.5.
18:56
And then I've also got another one on the other side
18:58
here, 0.4 to 0.6.
19:01
If I zoom out a little bit further,
19:03
you can see that I've got my target off sets in there.
19:06
And also when I change my different modes,
19:09
you'll see that I just have the parameters only here.
19:13
And notice that when I go to word, my mode
19:17
it actually shows my targets as well.
19:21
So that's the difference in those different views.
19:24
So once we've set up-- so once you've gone through and set up
19:28
all your parameters, you also got
19:30
to make sure that you have your target parameters as well.
19:33
They're also entered in this point.
19:35
So once you've done that, you then pretty much ready to go.
19:40
I'm just checking my notes here.
19:43
These ones here.
19:45
These-- so when you create a new subassembly,
19:47
these some of these tabs will be populated by default.
19:52
So for example, the Super and the
19:54
can't, they're in there by default as you start.
19:57
So-- so once you've done your setup in this bottom right hand
20:02
panel, we then go up to the top here
20:06
and we start assembling all our components.
20:08
Now what I'll do here is I'll just quickly show you
20:11
what it looks like to drag and drop an object.
20:13
So if I want to add an additional object of this,
20:17
I can just drag and drop, and add my point.
20:20
And when I do that the properties appear down here.
20:25
I've got my point number, I can also assign a code.
20:29
So think of, you know, when you want to call it your top datum
20:34
width sub-surface, those, sort of, things.
20:37
So they're used in your corridor code sets
20:40
to generate your surfaces.
20:41
And from there you just go through
20:43
and enter different values as you go.
20:46
So I'll just remove that one.
20:48
But that's how you quickly, basically
20:50
just do the drag and drop.
20:52
So to build this assembly, what I've done
20:54
is I've started applying a series of points and links.
20:59
So I start with 0.1.
21:03
Just stretch this up here.
21:05
And what we do is we start entering
21:08
those details in there.
21:09
So for example, 0.1--
21:12
it's-- I should--
21:13
I should mention this.
21:14
When you're creating your subassembly,
21:18
keep to the standard syntax.
21:20
So don't be tempted to change points.
21:23
You know, keep the P, the IP, the Els, all those prefixes.
21:29
Make sure you keep them the same,
21:30
don't be tempted to change them.
21:31
Because I find sometimes if you do
21:37
introduce something that may be custom, it may break something.
21:40
So for myself, I always try to keep within the existing
21:44
constraints of the program and not--
21:45
try not to change things too much.
21:48
All right.
21:48
So to construct 0.1, we start with our origin,
21:53
which is 0 come 0.
21:55
And it's just a delta X and Y. So then from there,
22:01
I go across to the other side and I
22:03
want to create an auxiliary point over here.
22:07
So I've said, create an auxiliary point.
22:09
So I've just gone over to these here,
22:11
drag and drop auxiliary point.
22:14
I want to control that by a slope and a delta.
22:17
So here at 0%.
22:20
So I've gone to the right at 0% from 0.1
22:25
and my delta X is the concrete width.
22:28
So there is where I've entered my parameter.
22:31
And also I have an offset target as well.
22:35
So, therefore, if I want to control the position of that,
22:40
I can do that.
22:41
And then also I've got here add a link and then
22:44
what's that name.
22:46
And then that goes through and then constructs that point.
22:48
And then from there, I then have gone and started
22:53
creating my object.
22:55
So notice as I go through, I start
22:58
applying different codes to it.
22:59
So obviously because this is the underside of my code,
23:03
I want my datum surface to follow that underneath,
23:05
so I assign a datum code to that.
23:08
And from there as you place the different components,
23:11
just think about the geometry type.
23:13
So for example, this one here is just a straight delta XY.
23:17
So I'm going to set--
23:20
set delta.
23:21
So I'm staying, my X plain 0 and I'm
23:26
going across my concrete depth.
23:28
Now notice the parameter, I've got a negative in there.
23:33
Then from there, so the negative going down.
23:35
And also create a link as we go.
23:38
So it's important to know that when
23:40
you create a point, quite often you
23:42
want to make a link as well.
23:43
So just add that in there, you do not need to add separately.
23:47
And as we go, we just keep on building it and go down.
23:51
So just be mindful of time.
23:53
I'll go down to this one here, my auxiliary point,
23:56
which is just above the my valley in my gutter.
24:03
And I've just done the same thing here.
24:04
What I've done is I've performed a calculation.
24:07
So from before, add my auxiliary 0.1.
24:11
And I've said, I want to be half the distance
24:16
of auxiliary length1.
24:18
So auxiliary length1 is from 0.1 to AP1.
24:21
So I'll just say, AL1.Length divided by 2.
24:25
And what that'll do is whatever measurement I put into there
24:28
or what value, it then haves that and that then
24:32
generates that point.
24:34
And then from there I go through and I can then
24:36
calculate another point.
24:41
And likewise, like that.
24:43
Now once you've gone through and then developed your object.
24:49
So up to this point here when we get
24:51
to link7 all we've really got is just an outline of our object.
24:55
So when we-- when we apply the subassembly to our corridor,
24:59
all we really get will be just the points in the links.
25:01
If we want to start taking quantities out of that object,
25:04
we need to apply a shape object.
25:07
So here what we do is we just say, shape number--
25:13
it's prefixed with an S. We give it a name.
25:16
In this case, ValleyGutter.
25:17
And then we provide the instructions
25:20
and we say, what links make up that particular shape.
25:25
And then we go through and what it will do
25:27
is then go trace that object.
25:28
So from here, we've gone link1, link4.
25:33
So what I've got here, it's a little bit
25:38
of what I've added them in a bit of an odd order
25:40
but it has figured it out.
25:42
What it is, generally I usually do
25:44
it either clockwise, or anti-clockwise,
25:45
or anything like that.
25:46
But program is intelligent enough to figure that out.
25:50
OK.
25:50
So that's-- that's how that works.
25:54
So what I'm going to do here is I'm just going
25:57
to make a modification to this.
25:58
I'm going to drop out--
26:02
I'm going to drop out my shape code.
26:04
So this would be an example, if I developed my subassembly
26:07
and I may have made an error or it emitted something.
26:12
So from here I'll just do--
26:13
I'll just say, save this.
26:22
You can-- when it comes to file names,
26:24
it's probably good to choose nice logical file names.
26:29
And I'll cover that in the closing comments.
26:31
But for now I'll just use this name just
26:34
for the purpose of the demonstration.
26:36
OK.
26:36
So now that I've created my subassembly, what I need to do
26:40
is I really need to exit the program.
26:42
So that way, it's aware that I've finished with subassembly.
26:47
And then we go back to Civil 3D.
26:49
So today, I'm using 2021 version and have all the latest
26:55
service packs.
26:55
So if you're not using 2021, there
26:59
may be some things in here that may be unfamiliar to you.
27:02
So if I start a new drawing, there
27:05
will be this home tab here.
27:06
So just be aware that term.
27:08
This is available in 2020 onwards,
27:11
or I should say 2022 onwards.
27:14
All right.
27:14
So to import our subassembly, The first thing you need to do
27:20
is I'll just go to my Home tab.
27:23
If you remember, subassemblies a hosted on your tool palette.
27:28
So if you can't remember how to find those--
27:32
just having trouble with my cursor here.
27:33
There we go.
27:36
It's found here.
27:37
You can also hover over control3,
27:40
is the hot-- is the shortcut key for that.
27:44
I'm using the-- just the metric, it's
27:48
just the standard metric profile that's available in Civil 3D.
27:53
And when we open up this subassembly,
27:55
we've got all the different ones that we've got.
27:57
So I recommend that you go through these
27:60
and have-- and review them.
28:01
There's some really good ones in there.
28:03
There are others available that are not loaded in here.
28:06
And I'll show you how to access those later.
28:08
But let's get back to importing our subassembly.
28:12
So to do that, we go to the Insert tab of the ribbon
28:15
and it's located here.
28:18
From there we go and browse our source file.
28:28
It's going to just take a little while for that dialogue
28:30
to come up.
28:37
OK.
28:45
So here's-- here's our PKT file that we had from before.
28:48
So I'll open that up.
28:50
Now this is really-- this is a good-- little good tip here,
28:52
if you were not aware of this.
28:55
When you import your subassembly,
28:57
it can go to a tool palette.
28:59
Now by default, it will list everything, so including,
29:03
the AutoCAD ones, you see the 3D ones.
29:04
So you can see here that there are
29:06
a lot of ones that you probably are not interested in.
29:09
Down-- further down, we start getting to our assemblies.
29:12
What I recommend is when you testing,
29:14
maybe just create your own new palette.
29:17
So if you've forgotten to create it before you've come in,
29:20
don't sweat it, there's one here.
29:22
So you go create your palette.
29:23
And so you, kind of, call the subassembly co testing.
29:29
Go.
29:30
OK.
29:31
And then OK, to that.
29:33
And what that'll do is that will create a new tab on the fly
29:37
and also place it there.
29:39
Now you can see that what it's done
29:41
is the information that I've put into subassembly
29:46
is now shown in the tool palette.
29:48
So I've got the name and also the description from that.
29:52
Now what I can do is I can go right click on the object
29:56
and go to properties.
29:59
And in here any of the information
30:01
that I may have entered into the subassembly,
30:04
I can check that there.
30:05
So here are my parameters that I set up earlier.
30:10
There's also other information provided with that.
30:15
Now if I want to place it into my drawing-- so let's
30:18
just quickly place assembly marker.
30:24
Excuse.
30:24
The default is here.
30:28
Now the place is in the drawing, I just select the object.
30:31
And when I do that my assembly, I'm
30:35
going to call it my properties palette appears.
30:37
And then I can go through and then
30:39
change any of these parameters before I place it.
30:42
So if I want to make that--
30:44
so apologies.
30:45
I'm from Australia, so I'm using metric here, so meters.
30:48
So I can go two meters and then place the object.
30:52
And then I'll just close that one.
30:54
Free up some real estate.
30:55
And then from there we can see now we've got our assembly.
30:59
If I select the object and open up my parameters,
31:02
you can see it's now been placed, I have my two meters.
31:05
I can go through change that to one.
31:08
I can also-- when I look at my assemblies,
31:13
I can see the name of the object, and also
31:18
all the different parameters, and things like that.
31:21
As mentioned before, we got our codes.
31:24
So I put in a shape called ValleyGutter.
31:28
It's interesting that it's in there.
31:29
But I've also got some other shapes in there,
31:31
so my datum on the top.
31:32
And they're all supported by my code sets.
31:36
OK.
31:37
So-- so from here what I need to do is--
31:43
if you recall before, I emitted a code from my assembly.
31:49
So what I need to do here is this-- just save
31:51
this drawing like that.
31:57
Now to update it, I can leave my existing drawing
32:00
as is but the catch is I need to close a Civil 3D.
32:04
So let's do that.
32:06
The reason being is when you have
32:07
Civil 3D open and the drawing open,
32:09
Civil 3D is touching that particular component.
32:13
So what you'll find is when you're
32:15
doing your testing that you will be opening and closing
32:20
Civil 3D, and subassembly composer a couple of times.
32:24
So-- so if we go back to now our component that we had before--
32:33
scroll down for this one here.
32:34
So we've got our shape.
32:35
I don't know what I did before but it's still in there.
32:37
So maybe a mistake.
32:39
Let's just take that out and then save that.
32:45
And from there, we exit the program.
32:50
And now we go back to Civil 3D again.
33:02
Now, when you do this process, you know,
33:06
exiting Civil 3D, opening the PKT, and subassembly composer,
33:10
I made my modification.
33:12
Note that when I did that, I didn't change the file name
33:16
and I didn't change the internal subassembly name.
33:18
Very important.
33:20
If I go back to my drawing now, you
33:27
can see that it's still there.
33:29
So what we do is we just go back to our tool palette.
33:33
And we where is some--
33:37
I remember.
33:39
Just need to delete it.
33:42
And there, delete that.
33:46
And then we just repeat the process.
33:47
There we go.
33:48
Import browse to our updated component.
33:54
Re-add it back to our palette.
33:59
OK.
33:60
That's an interesting message.
34:01
So what to do there.
34:03
So let's go in back to that.
34:07
Now the reason this--
34:09
that was a new message--
34:10
I've never seen one before.
34:11
But basically what that's doing is it's prompting you to say,
34:15
when you add this--
34:16
when you update your component, you
34:18
need to close and reopen Civil 3D
34:21
so that change can take effect.
34:23
So let's do that again.
34:25
So like I said, you will be doing this a couple of times.
34:29
So--
34:40
OK.
34:41
So now that we've updated that component, when
34:43
we reopen our drawing, all those changes should come through.
34:47
So-- so now if I go back and open my subassembly file--
34:53
so this-- so you can see there it's
34:54
still on my palette, which is good.
34:56
I go back to my Start screen and here is
34:60
my drawing so I open it up.
35:03
Now if it's read the change correctly,
35:06
I should be able to look at my parameters.
35:10
So I can't see the shape code here.
35:11
So let's go into our assembly properties.
35:17
And now it should-- it should have been
35:21
going but it's still there.
35:22
So yeah, that's because it's in the code set.
35:24
So one moment.
35:30
Yeah.
35:31
You know, live demos, I sometimes make mistakes.
35:35
But that's the workflow that you go--
35:37
I assure you that that's the workflow you go through
35:39
to update that.
35:40
I think probably what I've done is
35:42
the fact that I had left it in there
35:43
and then tried to delete it out.
35:45
I should have just omitted it in the first place
35:47
and that would have worked fine.
35:48
So but that's the process you go through
35:51
for doing that particular workflow.
35:55
What I'll do now is I'll go back to subassembly composer
35:59
and show you a couple of more advanced examples.
36:11
All right.
36:11
So from here, I'll just go back to my recent files use.
36:17
Well, this one here will be a good one.
36:21
So what I've got here is one with looping geometry
36:27
as an example.
36:29
So what this does is-- this is just what I
36:32
would call you basic benching.
36:34
So we start with our origin point.
36:37
So here's our start.
36:39
We've got our point.
36:40
And then our first auxiliary point as well.
36:44
And then from here we've got our daylight.
36:47
So what it's basically doing is--
36:51
excuse me.
36:51
Is from here, it's performing a calculation.
36:56
So you can see our auxiliary point is up here.
36:58
So what it's trying to do is determining
37:01
what the depth of 0.1 is relative to that surface
37:05
target.
37:06
Once it's got that information, we put it into a decision.
37:10
So we say, what's the height value in relation
37:14
to the max day light height.
37:15
And then depending on what the decision is,
37:18
we'll then go through and then generate that.
37:20
So obviously, if-- if it meets a certain criteria,
37:26
then it will just do the basic daylighting.
37:29
Or if it's say, exceeding a particular value say, 2, 3,
37:38
Now what I wanted to show you about this particular one is,
37:41
it's intelligent in the fact that--
37:44
notice that the workflow goes from links.
37:48
So we've got point3, so point5 and point link4
37:52
of the last object.
37:54
So from this point here, what we're doing is
37:57
we're putting a loop in there.
37:59
So that way you don't have to then--
38:02
so it will make another decision at this particular point.
38:06
So if we go to our loop here, you
38:08
can see that we've got a loop condition which
38:11
is our surface target.
38:12
So once it gets to that particular point,
38:14
it will then look at the surface target again.
38:17
If it meets that particular criteria,
38:20
then it will then repeat that process.
38:22
And then once we get--
38:25
so once it's-- so once it gets to a point that it meets that
38:29
minimum depth, then it will then put its last link in.
38:33
So that's an example of just a basic benching.
38:36
There are more advanced ones in terms of that.
38:38
But you know I just thought I'd show you
38:40
this one in particular, because it has a decision and also
38:44
an a loop in it to make it-- make that work.
38:48
Now the other example, I wanted to show you was--
38:53
let me think of which one it was.
38:55
I think it's this one here.
38:58
Now this one here is, you know, say, for example,
39:03
taking our ValleyGutter and taking it to the next level.
39:06
Now in-- in my--
39:10
my flowchart here, there's a lot of action going on here.
39:13
But I'll explain exactly what's going on.
39:16
Now this one here is creating a number of different curd types.
39:21
You may recognize the codes there
39:25
of all the different curb types.
39:26
So what's happening is that when we go into here,
39:29
we have some variables.
39:31
And these variables will be constant through all
39:33
the different curbs.
39:34
And we can define those in there.
39:39
Once we've done that, we can basically then put a switch in.
39:43
And what this is-- when you're in the assembly itself--
39:47
so maybe I'll just jump across to Civil here and just show you
39:51
an example.
40:01
I actually I've got one here if not--
40:06
that's OK.
40:07
What am I doing here?
40:16
Ugh.
40:16
I'll just-- I won't go looking for it
40:19
because I know it won't find it.
40:21
But basically what happens is when--
40:24
when you place a subassembly--
40:27
so just an example when I select it on there.
40:30
What will happen is in your-- in your events parameters,
40:32
you can actually put like a dropdown in here.
40:35
So you can say rather than [INAUDIBLE] you know, instead
40:39
of the default code type.
40:40
I want to use a barrier code or another different top code.
40:44
And what you can do is you can actually
40:46
have 10 different code types built
40:48
into that assembly from there.
40:50
So if I go back to here, these are all those built in.
40:53
So this switch, what it enables the user to do
40:56
is when they're navigating the palette within Civil 3D,
41:01
they can have this switch.
41:02
And when they toggle that switch, it then--
41:06
then executes that particular flow according to that object.
41:10
So for example now if the user had chosen IB2,
41:16
these are the variables.
41:18
So the variables that were defined earlier,
41:20
they're actually defined in here.
41:22
So they're the ones that dif-- that
41:24
are put into that particular curb type,
41:26
then they're then passed down to this area here.
41:28
And this is where all the-- all the components are built.
41:32
So for example, if I just go through,
41:37
you can see we have height-height front.
41:39
So maybe the easiest thing is all these parameters
41:42
they're all in here and they're also being leveraged in there.
41:46
And so what happens is when you're inside Civil 3D,
41:51
the user selects the curb type.
41:55
It takes those parameters, then applies it, and then draws it.
41:58
There's nothing stopping you from overriding dose
42:01
in palettes, so you can still apply those
42:03
to the properties side as well.
42:05
So just sort of, just show that as an example.
42:07
So this is an example of a more complex one where you can add
42:11
a lot more information into it.
42:13
All right.
42:13
So what I've done here is some of them-- some
42:16
of the information that I've gone through today
42:20
about how to import the subassembly.
42:23
I've put these in the notes here.
42:24
So that way you can refer back to them later on.
42:27
So I'll just, sort of, just skip through this part here.
42:32
But what I've done here is just, you know,
42:35
I didn't actually talk about this one, the checklist
42:39
about importing the subassembly into Civil 3D.
42:42
You know, these--
42:44
I find the save a lot of heartache when doing that.
42:48
So verify your geometry.
42:50
So you know, have a look at all the elements,
42:52
verify the parameters.
42:53
Look in the properties panel.
42:54
Preview the-- the geometry, make sure it's doing everything OK.
42:60
Look at the settings and the parameters,
43:01
and then save your project.
43:03
And then from there, it's just a matter
43:04
of going through that process.
43:06
So what I've done here is I've just called this out,
43:10
the steps that I did before.
43:11
So I'll just keep on going through it.
43:14
This is-- I touched on this a little bit.
43:18
If you are creating a--
43:21
a new subassembly and it has some really good features
43:26
in it, consider maybe [INAUDIBLE]
43:28
If your existing corridor code set doesn't support that.
43:33
You maybe should think about creating a new one.
43:36
The reason for that is, you know,
43:38
this corridor code set it controls everything arou--
43:43
what that subassembly does.
43:44
So how it's displayed.
43:45
So think of the links of the points, whether you assign
43:49
pay items, all those sort of things.
43:51
Just take that into consideration
43:53
while you're doing that.
43:58
And then before steps for updating your subassembly--
44:03
I've just put some drop points here
44:05
just so that you can go back through those when
44:08
you go to experiment with--
44:10
in product.
44:11
So last thing I want to do is just go through and just talk
44:14
about some tips and tricks.
44:15
So share some knowledge that I've learnt while using
44:19
subassembly composer.
44:21
The most important one is be aware
44:23
that there are additional subassemblies
44:25
and know where to find them.
44:27
So what I've done here is all these here are all hyperlinked.
44:32
These detail all the new subassemblies
44:35
that were added by versions.
44:37
So basically what happens is if you're using 2019.3,
44:43
it includes, all the subassemblies
44:46
prior to that in that particular version.
44:49
So if you find anything in 2021.1,
44:52
obviously it won't be in
44:56
and have a look at that.
44:57
There's some real awesome ones.
44:59
I've put some examples here up on the screen
45:02
of ones that have been introduced
45:03
over a period of time.
45:05
So there's been some great ones, especially around road rehab.
45:09
There's also some specific ones for around DOTs as well.
45:13
So I've got here--
45:14
I've got some example of Caltrans.
45:17
I think there's--
45:19
I think there's a couple of others as well
45:22
but they're not coming to me.
45:24
OK.
45:24
Couple of more tips and tricks.
45:28
This is a question that I get asked a lot.
45:30
Can I take the stock subassemblies
45:32
that have provided with the product and reuse them?
45:35
And the answer is this.
45:36
Unfortunately, no.
45:38
And the reason for that is even though--
45:44
I've been told by the product team,
45:45
they've just been recoded.
45:47
They've been coded a totally different way
45:48
and they don't use the PKTs for some reason.
45:51
So all you can really do is the examples that we've given
45:57
are pretty good.
45:58
They do give you a lot of examples in how they work.
46:02
So if you want to take an existing one
46:04
and maybe rework it a little bit,
46:06
that's my recommendation on that.
46:08
Now this next one, I did not know this for--
46:11
until I started using it.
46:13
Is that subassemblies are either metric or imperial.
46:17
So just make sure you use a proper naming convention
46:21
to identify what they are.
46:24
The other one is put a parameter in your subassembly
46:27
to make sure that you can control the versions.
46:29
Because those particular parameters show up
46:32
when you're looking in the tool palettes and those sort of,
46:35
things allows you to track that.
46:37
The other one, know your prefixes.
46:39
So I talked about points auxiliary points, lines,
46:42
auxiliary line, those sort of, things.
46:45
Don't try and change them, they will result in an error.
46:49
And then most importantly, this is around content or managing
46:53
of content.
46:56
Give me a bit of thought to how you name them.
46:60
So you use unique names.
47:03
Also try not to reuse a name that may be already available.
47:08
The help files.
47:09
So here you got them on the left.
47:10
There is the subassemblies reference
47:13
you can always go through there, and have a look,
47:15
and see if the particular name has been used.
47:20
The other one here, you know, save all the information.
47:24
So documentation, those sort of, things.
47:26
Save that, so it keeps it all together.
47:29
Use a legend registers, those sort of, things.
47:33
You know, it's all about management
47:34
tracking that because as you update them
47:37
you need to understand who's using what
47:39
and how it's being distributed.
47:42
And then the last one.
47:44
Make-- you know, make-- have an image in help file is--
47:49
you know, don't have to do that, but it
47:52
does save the users a lot of time
47:54
and makes them more productive.
47:55
Because that way, they got that information
47:57
at their fingertips.
47:59
And then they can just refer to it really quickly,
48:02
understand how the component works,
48:03
and make sure they're using it effectively.
48:07
Next one here, this is all about subassemblies.
48:11
Couple of catches when it comes to parameters.
48:15
As I said earlier, can't use--
48:17
can't use spaces.
48:19
One thing I've discovered is if you
48:22
are going to delete a parameter, make
48:24
sure you save it before you do.
48:26
Because once it's gone--
48:27
once you've deleted it, it's gone, you can't get it back.
48:31
Then the other one, parameters.
48:33
Once you've added it into the list,
48:35
so if you like them to be in a specific order,
48:39
note that there are no tools to adjust the order of those.
48:43
So whatever order you create those parameters,
48:46
they are there forever in that order.
48:50
And then the other ones there, you
48:51
can see parameters they are inherited from higher
48:55
up in the hierarchy.
48:56
So just be aware of that one, and comments,
48:59
and those sort of, things.
49:02
Hopefully-- I think this is the last.
49:04
I think I have one or two more.
49:06
I'm just drawing attention to creating new palette
49:10
on the fly.
49:10
That one we covered earlier.
49:13
The other one here is--
49:16
Yeah.
49:16
This is important.
49:17
Sharing.
49:19
So once you've gone and done all your awesome work
49:22
and created your custom assembly,
49:23
you want to share it with your team
49:25
and then actually be able to use it.
49:27
So with subassemblies, you need to think about where
49:32
you're going to store it.
49:33
Now these-- because these assemblies
49:36
are going to be used every time you rebuild a corridor,
49:41
they really need to be in a location that has low latency.
49:45
So when I mean like that, I recommend that when
49:49
creating your tool palettes that they
49:51
go into your content that's generally
49:55
stored on your C drive.
49:57
And at the moment, probably all your custom content
49:60
is stored in C drive.
50:01
The reason for that is to make sure
50:04
that your Civil 3D remains responsive when
50:06
leveraging those components.
50:08
So if you are creating your custom subassemblies,
50:11
there will be a process for you to get
50:13
that added to the system, to get that distributed to the users.
50:17
So you want do reach out to your product champion
50:21
to know what that process is.
50:23
So you can distribute that to the team.
50:25
And they will also, as you guess,
50:27
there'll be an approval process to make sure
50:29
that it's all valid.
50:30
So-- so just talk about that.
50:33
The other thing is that if you do
50:35
share a drawing with another user that doesn't have access
50:40
to that subassembly, they will start getting error messages
50:44
in their event viewer.
50:46
And also the performance of the program
50:50
or that particular drawing will start being negatively impact.
50:54
So you'll find your drawing will start-- like, Civil 3D will
50:58
try and rebuild the corridor.
50:59
But obviously because it can't find that particular sub
51:02
assembly, you'll find that there'll be bits missing
51:05
from your corridor and the program won't
51:07
will run quite slow.
51:09
So just be aware of that.
51:11
Try a new tool palette.
51:12
I Just talk to that above.
51:15
And then the other one is don't use it across the network
51:19
that those ones are there.
51:20
So I was just going to say just before we close out,
51:24
what I've got here on the screen.
51:27
Autodesk has a custom success learning hub
51:31
and there are a couple of courses on that.
51:35
It's just a matter of just going to the site.
51:37
I'll just open this up.
51:39
This is the address here, customersuccess.autodesk.com.
51:43
You log in using your Autodesk ID
51:46
and you go to the learning tab.
51:50
And in here, there's a number of different disciplines.
51:54
So I'll just scroll down here to Civil engineering.
51:56
What I'm going to do is I'll just give you all,
51:59
so you can see some of the options here.
52:02
So if you're interested in doing a little bit
52:05
around subassembly composer, I think
52:08
it's this learning path here.
52:12
We've got this one here using subassembly composers.
52:16
So if you're interested in having a look or running
52:20
through a course, it's-- you know, of course,
52:23
it'll take about 20, 30 minutes of your time.
52:26
There's videos, it shows you how to place the links
52:29
and everything else like that.
52:30
So if you're interested in running through that, it's
52:34
free, it's no cost to you.
52:36
There's also a lot of other different courses
52:40
available in there as well.
52:42
So, you know, ProjectExplorer that
52:44
was a new one, that was added recently,
52:46
there's also a couple there for Dynamo, InfraWorks
52:49
and that's just like that.
52:51
So I just thought I'd just mentioned that.
52:53
So there's the customer success learning hub.
52:55
We also have what we call the infrastructure reimagined
52:59
website.
52:60
The product team always regularly post
53:02
there about new features that are coming in the software.
53:05
So think of Civil 3D InfraWorks, BIM tracking, Dynamo,
53:09
all those sorts of, things.
53:11
BIM 360 Design, you know, for the infrastructure space
53:15
and those sort of, things.
53:16
So just thought I mention those before we close out.
Video transcript
00:04
MORGAN SMITH: So if this is the first time you've met me,
00:08
I've been with Autodesk now for five years based
00:11
in Brisbane, Australia.
00:13
My background-- done a number of different roles over the years,
00:17
ranging from surveying, being a draftsman on the board,
00:21
through to CAD management senior technician,
00:24
so working on a lot of large complex infrastructure projects
00:27
here in Australia ranging from working with multiple road
00:32
transit authorities and joint ventures, airports, rail,
00:36
bus [INAUDIBLE],, roads and highways.
00:38
I've pretty much done most of it.
00:40
And then before I joined Autodesk,
00:43
I was a technical consultant for a couple of years,
00:45
doing a lot of technical support, software
00:47
implementation, training.
00:49
So you may have also seen me at Autodesk University
00:52
in the last couple of years.
00:55
So as the leading slide said, we're
00:57
going to be talking about Subassembly Composer, or really
01:00
an introduction to it.
01:02
So if you've never used such Subassembly Composer,
01:05
we're going to talk about why you would use it,
01:07
what the interface looks like, how to navigate it around,
01:11
and then also dig into how we actually
01:14
develop that subassembly.
01:16
Then, from there, I'll open up the product
01:19
and show you how to compose that subassembly.
01:22
And then once you've made your assembly,
01:24
we're going to take it into Civil 3D
01:26
and most importantly, show you how to update it.
01:30
If you made an error or something like that,
01:33
or it needs improvement, how do you actually
01:35
update that in your design?
01:36
And then from there, I'll just probably share some tips
01:39
and tricks that I've learned over a period of time
01:42
when using the software.
01:46
So being an Aussie, I love acronyms.
01:49
I love shortening everything.
01:50
So you'll find that sometimes there'll
01:52
be some acronyms in there.
01:54
So SAC stands for Subassembly Composer.
01:58
So let's focus on why we would use that.
02:01
So Subassembly is used to create your own
02:06
intelligent and interactive subassemblies
02:09
for a specific need.
02:11
So what happens is the computer used the computer's
02:15
intelligence to solve complex grading
02:17
problems with much less work that'd be required otherwise,
02:21
so basically creating something that has decisions in it.
02:25
And you're handing that over to the computer
02:26
to perform that task.
02:28
Now, the workflow, if you've used Dynamo or anything
02:31
like that, it's all about writing code.
02:35
But you don't require a large investment in time
02:38
to actually learn how to use it.
02:40
So that's about what the parallels
02:44
are when it comes to Dynamo.
02:45
Dynamo's the same.
02:46
It's a visual programming.
02:48
Same with Subassembly Composer, it's visual.
02:51
You drag and drop, you place things into things.
02:54
So when you're developing your subassemblies,
02:58
obviously the normal software development strategies
03:01
should be used.
03:03
And what I found is that like Dynamo, it
03:06
has a fairly shallow initial learning curve.
03:09
So it's fairly easy to pick it up once you've done that.
03:14
Now, most importantly, I believe that GHD
03:17
has deployed Subassembly Composer with Civil 3D.
03:21
If it hasn't, make sure you reach out to your IT help desk
03:26
to confirm that.
03:27
Now, what they'll do is they'll actually,
03:31
if it hasn't been deployed with the first time,
03:33
they'll just rerun the install and then add that back in.
03:37
But if you have admin rights and you're able to fix that,
03:40
you need a copy of the installer in order to fix that.
03:46
A couple of terms that you just need to be familiar with,
03:49
and I'll refer to these quite often during the presentation.
03:54
They're also terms that are used Civil 3D as well.
03:57
So if you're used to using assemblies and corridors
04:00
within Civil 3D, you will be familiar with points, links,
04:04
and shapes.
04:05
And then from also there, we have targets.
04:09
Then the last two, SAC, Subassembly,
04:12
so a bit of a mouthful, Autodesk Subassembly Composer
04:15
for Autodesk Civil 3D.
04:16
So you can understand why people quite often will shorten it.
04:21
Then the last one, PKT.
04:23
The PKT file is the file format that we use,
04:27
that the program uses.
04:29
And what it is, is basically a zip file.
04:31
And it contains all the necessary files
04:34
to make that custom assembly work.
04:36
And we'll talk about that later, about how to actually harvest
04:39
existing subassemblies so that you can have a look,
04:43
open them up in Subassembly Composer,
04:45
and see how they work.
04:46
So that way you can modify them to meet your needs.
04:52
So let's dive into the interface.
04:54
So if you've never seen it before,
04:56
this is what it looks like.
04:58
So it's really a simple interface.
05:00
What it's designed to do is to help you develop subassemblies
05:05
without the need to learn programming.
05:08
Now, underneath, Subassemblies.net.
05:11
And so this interface was created so that way
05:14
it would write the code for you.
05:16
So that way you didn't have to do that.
05:18
So it's a graphical interface.
05:19
It builds the components in the background
05:22
just by adding the bits and pieces.
05:24
So the basic interface is sort of what
05:28
you would call a drag and drop.
05:30
So I'll just get my laser pointer up.
05:32
So over here on the left-hand side, we have the toolbox.
05:35
So we basically will take a component.
05:36
We'll drag and drop it into the flowchart
05:39
in order to define the geometry.
05:41
Then, from there, you add basic building block of the assembly,
05:44
so think points, links, and shapes.
05:49
For a simple process, you can build something as simple
05:53
as a curb assembly.
05:55
Or you could go something more advanced,
05:57
where it's actually making decisions about grading
05:60
or even you can actually embed multiple shapes
06:05
into a subassembly.
06:06
And we'll show that a little bit later as well.
06:08
So depending on what your needs are,
06:11
this will probably do it for you.
06:12
But we'll also remind you that there
06:15
are a lot of components that are available with the product.
06:19
So you may be able to find that that meets your needs rather
06:22
than having to build a custom one.
06:26
So when you open the product, there's
06:28
the opportunity to rearrange the layout.
06:30
I personally, myself, have not done that.
06:33
But there is the opportunity to do that.
06:35
Up on the pulldown menu, if you go to the View tab,
06:38
there's a number of options there.
06:40
If you find that one of the panels is missing,
06:42
you can always go to Restore Default Layout
06:45
and that will restore its layout.
06:50
Then from there, we have the toolbox.
06:52
So this is where we're going to be doing a lot of the action.
06:56
So this is where all the elements
06:59
are stored for constructing your subassembly.
07:02
So the panel provides all the elements
07:05
that you'll use to build your flow chart.
07:08
At the simplest, we may just use two or three,
07:11
which is our points, links, and shape.
07:13
So if we want to build a curb, we'll drag those from there
07:16
into that flowchart.
07:17
And then to use any of those elements,
07:19
we just click and hold using a left mouse button
07:23
and drag and drop it into the Flowchart panel.
07:27
So as an example, we have the different elements,
07:30
so geometry, points, links, and shapes.
07:33
That's pretty straightforward.
07:35
Advanced geometry-- so this is where
07:36
we start getting into if we want to start calculating
07:39
points or generating curves.
07:41
So for example, you want to do a pipe or maybe
07:44
roof of a tunnel, things like that, daylight rounding.
07:48
Auxiliary-- these ones here, we use
07:50
these to generate geometry that may not
07:52
be included in the subassembly.
07:55
So if we need to, say, if we've got a valley gutter
07:60
and we need to locate a point to use to apply a radius to that,
08:05
that's an example of an auxiliary point.
08:08
Workflow-- these are great.
08:10
So for example, if we have a decisional,
08:14
where we want to talk about cut and fill,
08:17
so if we have something that's in either a cut
08:20
scenario or a fill scenario, we can put a decision
08:24
in with some switches.
08:26
And then finally the miscellaneous one.
08:28
So these are parameters.
08:29
So think of if we had an assembly with multiple curb
08:34
types in it.
08:35
Those curb types have different variables in it.
08:37
And we can set up what we call a switch and sequences.
08:43
And then we can put those variables in there.
08:44
And I'll show that to you later.
08:47
Then from there, the flowchart, this
08:49
is where all the action happens.
08:51
It's what I call-- it's a straight line of logic.
08:57
So basically you start with the green dot,
08:59
shown as a big green circle.
09:01
And then you start adding your elements.
09:05
And so the program will then process that logic one step
09:09
at a time.
09:10
So as you'll find, when I model a particular object today,
09:15
you'll see that those--
09:16
how it's built. If the program--
09:20
if there's an error that you've put into the program
09:23
as you're working, there will be a small red circle
09:27
with an exclamation mark.
09:29
And that will be displayed in the upper right-hand corner
09:31
of that particular component.
09:33
So then from there we have our Preview panel.
09:37
What that allows us to do is view our subassembly model
09:41
as it's built. And up at the top there,
09:45
you've probably noticed that there are two different modes.
09:49
Depending on which one you have toggled will show how the--
09:57
what we call the different states of that subassembly.
09:60
So the roadway mode is really your typical mode.
10:03
It shows anything to do with--
10:04
so if you put targets for surfaces, and target offsets,
10:10
and things like that.
10:11
And then the other one is when it's only
10:14
built using Subassembly-- then built--
10:16
in built the parameters, so slightly different but very
10:20
important in that, when you're doing that.
10:24
The properties-- if, when we place an element
10:27
into our flowchart, we want to inspect that,
10:30
so in the Properties, we will have different information
10:34
there.
10:35
And so what you basically will be doing
10:37
is defining the subassembly's geometry in that panel.
10:43
Then the last panel, multiple tabs on this one.
10:47
Basically what it does is it's all the miscellaneous settings
10:53
that define your Subassembly.
10:55
So talk about packet settings, input/output parameters,
10:58
target parameters, super, cant, and those sort of things.
11:01
They're all stored in there, and that's
11:04
what defines Subassembly.
11:05
So if we look at the different parameters,
11:10
I'll just quickly flick through that.
11:13
So in the Packet Settings, this is where you actually
11:17
assign the name of the subassembly,
11:20
give it a description.
11:21
Also, this gives you the opportunity
11:23
to define some help documentation.
11:25
So when you're in the product, it
11:29
gives the users an opportunity to review that documentation
11:32
and also an image of that.
11:36
Your input and output parameters,
11:38
these include our subassemblies and parametric,
11:44
we need to have these parameters built.
11:46
And we'll go through and talk about this.
11:49
Different values obviously have different types.
11:53
So think integer, double string, those sorts of things,
11:58
and then also whether they're inputs or outputs, how
12:01
they're controlled, and things like that.
12:04
Then from there, at Target Parameters, so obvious ones--
12:08
horizontal, vertical, surfaces, those sort of things.
12:11
Now, one little tip is that as you go through it, if I just
12:16
step back one slide, you'll notice that there are
12:21
no spaces in these parameters.
12:24
So very important little tip there
12:25
that as you go through and develop these,
12:28
there's no spaces available in those.
12:31
But yet in the preview values and the display names,
12:35
spaces are allowed.
12:36
So interesting one there.
12:38
Then from there, these are just if you're
12:40
using superelevation, cant for the rail and then, of course,
12:44
the Event Viewer.
12:45
So Event Viewer enables the users
12:47
to view the messages, to describe problems and things
12:50
like that as we go along.
12:52
What we're going to do now is we're
12:54
going to just talk about how to develop a custom subassembly.
12:58
Like anything, you need to spend the time
13:03
to do some planning, gets them organized.
13:05
And when you do that, it pays dividends,
13:07
and it saves you a lot of rework down the line.
13:09
So let's look at this process.
13:11
So what I've done here is just drawn a basic sketch.
13:16
So when I do that, I've got a valley gutter here.
13:21
I've shown basically what dimensions
13:25
that I may need to apply to this particular object.
13:29
So from here, you can see I've got
13:31
my width of the curb itself, what the depth of the valley
13:38
is, overall height of the object, and things like that.
13:40
So these are the things that you need
13:41
to consider when doing that.
13:44
And then from there, once you've drawn your sketch,
13:46
I just jump into Civil 3D.
13:48
And I draw my object up.
13:50
And then I put some dimensions on it
13:51
to see how that actually works.
13:54
So that way when you do that, it allows
13:59
you to give you some more thought and detail and what
14:04
is required.
14:06
And then from there, you can just create something
14:09
like just a basic flowchart to map
14:11
out what it may look like in draft.
14:13
So for example, here, I've just used an older product that's
14:17
actually not available anymore.
14:18
But start-- you identify your origin.
14:22
So if I go back to the previous slide,
14:24
you can see here that I've identified my origin.
14:27
Every subassembly point has an origin point.
14:30
Generally that is the attachment point.
14:32
That is placed when it's placed on the subassembly.
14:36
Then from there, talk about target widths,
14:39
creating points, and things like that.
14:41
and then entering parameters.
14:43
Then from there, we go into the product.
14:46
And we start placing our points.
14:49
So in this example here, I've got some points, AP,
14:52
which is Auxiliary Points, and auxiliary lines.
14:55
And then I've got my P1s and P2s and Ls for Lines and things
14:59
like that.
15:01
Once we've completed it, we then import it into Civil 3D,
15:04
place it on our palette.
15:05
And then we test, test, test.
15:08
So when we're doing this, we want
15:14
to stretch it to its extents.
15:15
We want to try and break it and see
15:19
if there's any difficult scenarios that it may not
15:22
work in.
15:23
And then from there, we just go back, and we go and fix that.
15:27
But if there is some limitations--
15:30
and it will occur in a small percentage of scenarios--
15:34
maybe the best thing to do is sometimes maybe
15:37
not solve that problem.
15:38
Maybe if the subassembly works for 80%,
15:45
If there are any limitations, put it in the documentation.
15:48
So when you share it with the users in your team,
15:50
that they're aware of that limitation of the subassembly.
15:56
Once you've found any weaknesses in that subassembly.
15:60
You obviously go back, refine that, tweak it
16:04
based on that feedback.
16:05
And then obviously then we document that.
16:11
What you'll find is in the existing Civil 3D
16:14
documentation, there is an extensive help file
16:18
on all the subassemblies.
16:20
It gives you all the information about the attachment point,
16:22
or the origin, the input parameters,
16:25
what they do, dimensions, how it behaves, those sort of things.
16:30
It's all there in the help file.
16:34
So we're getting to our first demonstration.
16:37
So what I'll do here is I'll just exit out of my slides.
16:41
Actually, [INAUDIBLE] first one.
16:44
So in our example, we've talked about the valley gutter simple.
16:48
So what we'll do here is--
16:50
there are a number of points in here.
16:52
But I also want to demonstrate and draw
16:54
your attention to other units.
16:55
So I'll just be opening this one prebuilt.
16:59
And I'll just walk you through the process
17:02
that I did when I generated this.
17:06
And as you can see in my presentation,
17:09
I'm just using the default layout.
17:11
Up here we have our View.
17:12
We click on that.
17:13
And it will just go back to the parameters.
17:16
So what I'll do here is I'm just going to open--
17:19
let's go back to my recent files.
17:23
This is the one I want.
17:26
So as you can see, once I've opened up the assembly,
17:32
you can see the flowchart.
17:34
I have my green start button, and I also have my flowchart.
17:37
And it walks its way through a number of objects there.
17:41
So what we've got--
17:43
so I'll just show you how this is actually built.
17:48
So as you know before, that this particular valley gutter has
17:54
defined widths, concrete depths, a flow-line depth,
17:57
and those sort of things.
17:59
So the first thing we always do is
18:01
we go to our Packet Settings.
18:04
And on the first tab-- and we actually give it a name.
18:07
So we go through, give this subassembly a name.
18:10
So in this case, we got a symbol--
18:12
a description.
18:13
So these information will actually
18:16
show up in the properties palette
18:19
when you place the object inside Civil 3D.
18:22
So important that you do fill them out as you go.
18:25
Then from there-- because we've sketched out our subassembly
18:31
we then enter all our parameters.
18:34
So these will be the dimensions that we sketched up
18:37
in Civil 3D.
18:38
So in order for this to work, what I've done
18:41
is I've gone through and I've got all my different parameters
18:44
here.
18:44
So concrete width is the dimension from P2 to P3,
18:49
my flow line depth, which is this one here.
18:51
I have my width1 and width2, which is 0.1 to 0.5.
18:56
And then I've also got another one on the other side
18:58
here, 0.4 to 0.6.
19:01
If I zoom out a little bit further,
19:03
you can see that I've got my target off sets in there.
19:06
And also when I change my different modes,
19:09
you'll see that I just have the parameters only here.
19:13
And notice that when I go to word, my mode
19:17
it actually shows my targets as well.
19:21
So that's the difference in those different views.
19:24
So once we've set up-- so once you've gone through and set up
19:28
all your parameters, you also got
19:30
to make sure that you have your target parameters as well.
19:33
They're also entered in this point.
19:35
So once you've done that, you then pretty much ready to go.
19:40
I'm just checking my notes here.
19:43
These ones here.
19:45
These-- so when you create a new subassembly,
19:47
these some of these tabs will be populated by default.
19:52
So for example, the Super and the
19:54
can't, they're in there by default as you start.
19:57
So-- so once you've done your setup in this bottom right hand
20:02
panel, we then go up to the top here
20:06
and we start assembling all our components.
20:08
Now what I'll do here is I'll just quickly show you
20:11
what it looks like to drag and drop an object.
20:13
So if I want to add an additional object of this,
20:17
I can just drag and drop, and add my point.
20:20
And when I do that the properties appear down here.
20:25
I've got my point number, I can also assign a code.
20:29
So think of, you know, when you want to call it your top datum
20:34
width sub-surface, those, sort of, things.
20:37
So they're used in your corridor code sets
20:40
to generate your surfaces.
20:41
And from there you just go through
20:43
and enter different values as you go.
20:46
So I'll just remove that one.
20:48
But that's how you quickly, basically
20:50
just do the drag and drop.
20:52
So to build this assembly, what I've done
20:54
is I've started applying a series of points and links.
20:59
So I start with 0.1.
21:03
Just stretch this up here.
21:05
And what we do is we start entering
21:08
those details in there.
21:09
So for example, 0.1--
21:12
it's-- I should--
21:13
I should mention this.
21:14
When you're creating your subassembly,
21:18
keep to the standard syntax.
21:20
So don't be tempted to change points.
21:23
You know, keep the P, the IP, the Els, all those prefixes.
21:29
Make sure you keep them the same,
21:30
don't be tempted to change them.
21:31
Because I find sometimes if you do
21:37
introduce something that may be custom, it may break something.
21:40
So for myself, I always try to keep within the existing
21:44
constraints of the program and not--
21:45
try not to change things too much.
21:48
All right.
21:48
So to construct 0.1, we start with our origin,
21:53
which is 0 come 0.
21:55
And it's just a delta X and Y. So then from there,
22:01
I go across to the other side and I
22:03
want to create an auxiliary point over here.
22:07
So I've said, create an auxiliary point.
22:09
So I've just gone over to these here,
22:11
drag and drop auxiliary point.
22:14
I want to control that by a slope and a delta.
22:17
So here at 0%.
22:20
So I've gone to the right at 0% from 0.1
22:25
and my delta X is the concrete width.
22:28
So there is where I've entered my parameter.
22:31
And also I have an offset target as well.
22:35
So, therefore, if I want to control the position of that,
22:40
I can do that.
22:41
And then also I've got here add a link and then
22:44
what's that name.
22:46
And then that goes through and then constructs that point.
22:48
And then from there, I then have gone and started
22:53
creating my object.
22:55
So notice as I go through, I start
22:58
applying different codes to it.
22:59
So obviously because this is the underside of my code,
23:03
I want my datum surface to follow that underneath,
23:05
so I assign a datum code to that.
23:08
And from there as you place the different components,
23:11
just think about the geometry type.
23:13
So for example, this one here is just a straight delta XY.
23:17
So I'm going to set--
23:20
set delta.
23:21
So I'm staying, my X plain 0 and I'm
23:26
going across my concrete depth.
23:28
Now notice the parameter, I've got a negative in there.
23:33
Then from there, so the negative going down.
23:35
And also create a link as we go.
23:38
So it's important to know that when
23:40
you create a point, quite often you
23:42
want to make a link as well.
23:43
So just add that in there, you do not need to add separately.
23:47
And as we go, we just keep on building it and go down.
23:51
So just be mindful of time.
23:53
I'll go down to this one here, my auxiliary point,
23:56
which is just above the my valley in my gutter.
24:03
And I've just done the same thing here.
24:04
What I've done is I've performed a calculation.
24:07
So from before, add my auxiliary 0.1.
24:11
And I've said, I want to be half the distance
24:16
of auxiliary length1.
24:18
So auxiliary length1 is from 0.1 to AP1.
24:21
So I'll just say, AL1.Length divided by 2.
24:25
And what that'll do is whatever measurement I put into there
24:28
or what value, it then haves that and that then
24:32
generates that point.
24:34
And then from there I go through and I can then
24:36
calculate another point.
24:41
And likewise, like that.
24:43
Now once you've gone through and then developed your object.
24:49
So up to this point here when we get
24:51
to link7 all we've really got is just an outline of our object.
24:55
So when we-- when we apply the subassembly to our corridor,
24:59
all we really get will be just the points in the links.
25:01
If we want to start taking quantities out of that object,
25:04
we need to apply a shape object.
25:07
So here what we do is we just say, shape number--
25:13
it's prefixed with an S. We give it a name.
25:16
In this case, ValleyGutter.
25:17
And then we provide the instructions
25:20
and we say, what links make up that particular shape.
25:25
And then we go through and what it will do
25:27
is then go trace that object.
25:28
So from here, we've gone link1, link4.
25:33
So what I've got here, it's a little bit
25:38
of what I've added them in a bit of an odd order
25:40
but it has figured it out.
25:42
What it is, generally I usually do
25:44
it either clockwise, or anti-clockwise,
25:45
or anything like that.
25:46
But program is intelligent enough to figure that out.
25:50
OK.
25:50
So that's-- that's how that works.
25:54
So what I'm going to do here is I'm just going
25:57
to make a modification to this.
25:58
I'm going to drop out--
26:02
I'm going to drop out my shape code.
26:04
So this would be an example, if I developed my subassembly
26:07
and I may have made an error or it emitted something.
26:12
So from here I'll just do--
26:13
I'll just say, save this.
26:22
You can-- when it comes to file names,
26:24
it's probably good to choose nice logical file names.
26:29
And I'll cover that in the closing comments.
26:31
But for now I'll just use this name just
26:34
for the purpose of the demonstration.
26:36
OK.
26:36
So now that I've created my subassembly, what I need to do
26:40
is I really need to exit the program.
26:42
So that way, it's aware that I've finished with subassembly.
26:47
And then we go back to Civil 3D.
26:49
So today, I'm using 2021 version and have all the latest
26:55
service packs.
26:55
So if you're not using 2021, there
26:59
may be some things in here that may be unfamiliar to you.
27:02
So if I start a new drawing, there
27:05
will be this home tab here.
27:06
So just be aware that term.
27:08
This is available in 2020 onwards,
27:11
or I should say 2022 onwards.
27:14
All right.
27:14
So to import our subassembly, The first thing you need to do
27:20
is I'll just go to my Home tab.
27:23
If you remember, subassemblies a hosted on your tool palette.
27:28
So if you can't remember how to find those--
27:32
just having trouble with my cursor here.
27:33
There we go.
27:36
It's found here.
27:37
You can also hover over control3,
27:40
is the hot-- is the shortcut key for that.
27:44
I'm using the-- just the metric, it's
27:48
just the standard metric profile that's available in Civil 3D.
27:53
And when we open up this subassembly,
27:55
we've got all the different ones that we've got.
27:57
So I recommend that you go through these
27:60
and have-- and review them.
28:01
There's some really good ones in there.
28:03
There are others available that are not loaded in here.
28:06
And I'll show you how to access those later.
28:08
But let's get back to importing our subassembly.
28:12
So to do that, we go to the Insert tab of the ribbon
28:15
and it's located here.
28:18
From there we go and browse our source file.
28:28
It's going to just take a little while for that dialogue
28:30
to come up.
28:37
OK.
28:45
So here's-- here's our PKT file that we had from before.
28:48
So I'll open that up.
28:50
Now this is really-- this is a good-- little good tip here,
28:52
if you were not aware of this.
28:55
When you import your subassembly,
28:57
it can go to a tool palette.
28:59
Now by default, it will list everything, so including,
29:03
the AutoCAD ones, you see the 3D ones.
29:04
So you can see here that there are
29:06
a lot of ones that you probably are not interested in.
29:09
Down-- further down, we start getting to our assemblies.
29:12
What I recommend is when you testing,
29:14
maybe just create your own new palette.
29:17
So if you've forgotten to create it before you've come in,
29:20
don't sweat it, there's one here.
29:22
So you go create your palette.
29:23
And so you, kind of, call the subassembly co testing.
29:29
Go.
29:30
OK.
29:31
And then OK, to that.
29:33
And what that'll do is that will create a new tab on the fly
29:37
and also place it there.
29:39
Now you can see that what it's done
29:41
is the information that I've put into subassembly
29:46
is now shown in the tool palette.
29:48
So I've got the name and also the description from that.
29:52
Now what I can do is I can go right click on the object
29:56
and go to properties.
29:59
And in here any of the information
30:01
that I may have entered into the subassembly,
30:04
I can check that there.
30:05
So here are my parameters that I set up earlier.
30:10
There's also other information provided with that.
30:15
Now if I want to place it into my drawing-- so let's
30:18
just quickly place assembly marker.
30:24
Excuse.
30:24
The default is here.
30:28
Now the place is in the drawing, I just select the object.
30:31
And when I do that my assembly, I'm
30:35
going to call it my properties palette appears.
30:37
And then I can go through and then
30:39
change any of these parameters before I place it.
30:42
So if I want to make that--
30:44
so apologies.
30:45
I'm from Australia, so I'm using metric here, so meters.
30:48
So I can go two meters and then place the object.
30:52
And then I'll just close that one.
30:54
Free up some real estate.
30:55
And then from there we can see now we've got our assembly.
30:59
If I select the object and open up my parameters,
31:02
you can see it's now been placed, I have my two meters.
31:05
I can go through change that to one.
31:08
I can also-- when I look at my assemblies,
31:13
I can see the name of the object, and also
31:18
all the different parameters, and things like that.
31:21
As mentioned before, we got our codes.
31:24
So I put in a shape called ValleyGutter.
31:28
It's interesting that it's in there.
31:29
But I've also got some other shapes in there,
31:31
so my datum on the top.
31:32
And they're all supported by my code sets.
31:36
OK.
31:37
So-- so from here what I need to do is--
31:43
if you recall before, I emitted a code from my assembly.
31:49
So what I need to do here is this-- just save
31:51
this drawing like that.
31:57
Now to update it, I can leave my existing drawing
32:00
as is but the catch is I need to close a Civil 3D.
32:04
So let's do that.
32:06
The reason being is when you have
32:07
Civil 3D open and the drawing open,
32:09
Civil 3D is touching that particular component.
32:13
So what you'll find is when you're
32:15
doing your testing that you will be opening and closing
32:20
Civil 3D, and subassembly composer a couple of times.
32:24
So-- so if we go back to now our component that we had before--
32:33
scroll down for this one here.
32:34
So we've got our shape.
32:35
I don't know what I did before but it's still in there.
32:37
So maybe a mistake.
32:39
Let's just take that out and then save that.
32:45
And from there, we exit the program.
32:50
And now we go back to Civil 3D again.
33:02
Now, when you do this process, you know,
33:06
exiting Civil 3D, opening the PKT, and subassembly composer,
33:10
I made my modification.
33:12
Note that when I did that, I didn't change the file name
33:16
and I didn't change the internal subassembly name.
33:18
Very important.
33:20
If I go back to my drawing now, you
33:27
can see that it's still there.
33:29
So what we do is we just go back to our tool palette.
33:33
And we where is some--
33:37
I remember.
33:39
Just need to delete it.
33:42
And there, delete that.
33:46
And then we just repeat the process.
33:47
There we go.
33:48
Import browse to our updated component.
33:54
Re-add it back to our palette.
33:59
OK.
33:60
That's an interesting message.
34:01
So what to do there.
34:03
So let's go in back to that.
34:07
Now the reason this--
34:09
that was a new message--
34:10
I've never seen one before.
34:11
But basically what that's doing is it's prompting you to say,
34:15
when you add this--
34:16
when you update your component, you
34:18
need to close and reopen Civil 3D
34:21
so that change can take effect.
34:23
So let's do that again.
34:25
So like I said, you will be doing this a couple of times.
34:29
So--
34:40
OK.
34:41
So now that we've updated that component, when
34:43
we reopen our drawing, all those changes should come through.
34:47
So-- so now if I go back and open my subassembly file--
34:53
so this-- so you can see there it's
34:54
still on my palette, which is good.
34:56
I go back to my Start screen and here is
34:60
my drawing so I open it up.
35:03
Now if it's read the change correctly,
35:06
I should be able to look at my parameters.
35:10
So I can't see the shape code here.
35:11
So let's go into our assembly properties.
35:17
And now it should-- it should have been
35:21
going but it's still there.
35:22
So yeah, that's because it's in the code set.
35:24
So one moment.
35:30
Yeah.
35:31
You know, live demos, I sometimes make mistakes.
35:35
But that's the workflow that you go--
35:37
I assure you that that's the workflow you go through
35:39
to update that.
35:40
I think probably what I've done is
35:42
the fact that I had left it in there
35:43
and then tried to delete it out.
35:45
I should have just omitted it in the first place
35:47
and that would have worked fine.
35:48
So but that's the process you go through
35:51
for doing that particular workflow.
35:55
What I'll do now is I'll go back to subassembly composer
35:59
and show you a couple of more advanced examples.
36:11
All right.
36:11
So from here, I'll just go back to my recent files use.
36:17
Well, this one here will be a good one.
36:21
So what I've got here is one with looping geometry
36:27
as an example.
36:29
So what this does is-- this is just what I
36:32
would call you basic benching.
36:34
So we start with our origin point.
36:37
So here's our start.
36:39
We've got our point.
36:40
And then our first auxiliary point as well.
36:44
And then from here we've got our daylight.
36:47
So what it's basically doing is--
36:51
excuse me.
36:51
Is from here, it's performing a calculation.
36:56
So you can see our auxiliary point is up here.
36:58
So what it's trying to do is determining
37:01
what the depth of 0.1 is relative to that surface
37:05
target.
37:06
Once it's got that information, we put it into a decision.
37:10
So we say, what's the height value in relation
37:14
to the max day light height.
37:15
And then depending on what the decision is,
37:18
we'll then go through and then generate that.
37:20
So obviously, if-- if it meets a certain criteria,
37:26
then it will just do the basic daylighting.
37:29
Or if it's say, exceeding a particular value say, 2, 3,
37:38
Now what I wanted to show you about this particular one is,
37:41
it's intelligent in the fact that--
37:44
notice that the workflow goes from links.
37:48
So we've got point3, so point5 and point link4
37:52
of the last object.
37:54
So from this point here, what we're doing is
37:57
we're putting a loop in there.
37:59
So that way you don't have to then--
38:02
so it will make another decision at this particular point.
38:06
So if we go to our loop here, you
38:08
can see that we've got a loop condition which
38:11
is our surface target.
38:12
So once it gets to that particular point,
38:14
it will then look at the surface target again.
38:17
If it meets that particular criteria,
38:20
then it will then repeat that process.
38:22
And then once we get--
38:25
so once it's-- so once it gets to a point that it meets that
38:29
minimum depth, then it will then put its last link in.
38:33
So that's an example of just a basic benching.
38:36
There are more advanced ones in terms of that.
38:38
But you know I just thought I'd show you
38:40
this one in particular, because it has a decision and also
38:44
an a loop in it to make it-- make that work.
38:48
Now the other example, I wanted to show you was--
38:53
let me think of which one it was.
38:55
I think it's this one here.
38:58
Now this one here is, you know, say, for example,
39:03
taking our ValleyGutter and taking it to the next level.
39:06
Now in-- in my--
39:10
my flowchart here, there's a lot of action going on here.
39:13
But I'll explain exactly what's going on.
39:16
Now this one here is creating a number of different curd types.
39:21
You may recognize the codes there
39:25
of all the different curb types.
39:26
So what's happening is that when we go into here,
39:29
we have some variables.
39:31
And these variables will be constant through all
39:33
the different curbs.
39:34
And we can define those in there.
39:39
Once we've done that, we can basically then put a switch in.
39:43
And what this is-- when you're in the assembly itself--
39:47
so maybe I'll just jump across to Civil here and just show you
39:51
an example.
40:01
I actually I've got one here if not--
40:06
that's OK.
40:07
What am I doing here?
40:16
Ugh.
40:16
I'll just-- I won't go looking for it
40:19
because I know it won't find it.
40:21
But basically what happens is when--
40:24
when you place a subassembly--
40:27
so just an example when I select it on there.
40:30
What will happen is in your-- in your events parameters,
40:32
you can actually put like a dropdown in here.
40:35
So you can say rather than [INAUDIBLE] you know, instead
40:39
of the default code type.
40:40
I want to use a barrier code or another different top code.
40:44
And what you can do is you can actually
40:46
have 10 different code types built
40:48
into that assembly from there.
40:50
So if I go back to here, these are all those built in.
40:53
So this switch, what it enables the user to do
40:56
is when they're navigating the palette within Civil 3D,
41:01
they can have this switch.
41:02
And when they toggle that switch, it then--
41:06
then executes that particular flow according to that object.
41:10
So for example now if the user had chosen IB2,
41:16
these are the variables.
41:18
So the variables that were defined earlier,
41:20
they're actually defined in here.
41:22
So they're the ones that dif-- that
41:24
are put into that particular curb type,
41:26
then they're then passed down to this area here.
41:28
And this is where all the-- all the components are built.
41:32
So for example, if I just go through,
41:37
you can see we have height-height front.
41:39
So maybe the easiest thing is all these parameters
41:42
they're all in here and they're also being leveraged in there.
41:46
And so what happens is when you're inside Civil 3D,
41:51
the user selects the curb type.
41:55
It takes those parameters, then applies it, and then draws it.
41:58
There's nothing stopping you from overriding dose
42:01
in palettes, so you can still apply those
42:03
to the properties side as well.
42:05
So just sort of, just show that as an example.
42:07
So this is an example of a more complex one where you can add
42:11
a lot more information into it.
42:13
All right.
42:13
So what I've done here is some of them-- some
42:16
of the information that I've gone through today
42:20
about how to import the subassembly.
42:23
I've put these in the notes here.
42:24
So that way you can refer back to them later on.
42:27
So I'll just, sort of, just skip through this part here.
42:32
But what I've done here is just, you know,
42:35
I didn't actually talk about this one, the checklist
42:39
about importing the subassembly into Civil 3D.
42:42
You know, these--
42:44
I find the save a lot of heartache when doing that.
42:48
So verify your geometry.
42:50
So you know, have a look at all the elements,
42:52
verify the parameters.
42:53
Look in the properties panel.
42:54
Preview the-- the geometry, make sure it's doing everything OK.
42:60
Look at the settings and the parameters,
43:01
and then save your project.
43:03
And then from there, it's just a matter
43:04
of going through that process.
43:06
So what I've done here is I've just called this out,
43:10
the steps that I did before.
43:11
So I'll just keep on going through it.
43:14
This is-- I touched on this a little bit.
43:18
If you are creating a--
43:21
a new subassembly and it has some really good features
43:26
in it, consider maybe [INAUDIBLE]
43:28
If your existing corridor code set doesn't support that.
43:33
You maybe should think about creating a new one.
43:36
The reason for that is, you know,
43:38
this corridor code set it controls everything arou--
43:43
what that subassembly does.
43:44
So how it's displayed.
43:45
So think of the links of the points, whether you assign
43:49
pay items, all those sort of things.
43:51
Just take that into consideration
43:53
while you're doing that.
43:58
And then before steps for updating your subassembly--
44:03
I've just put some drop points here
44:05
just so that you can go back through those when
44:08
you go to experiment with--
44:10
in product.
44:11
So last thing I want to do is just go through and just talk
44:14
about some tips and tricks.
44:15
So share some knowledge that I've learnt while using
44:19
subassembly composer.
44:21
The most important one is be aware
44:23
that there are additional subassemblies
44:25
and know where to find them.
44:27
So what I've done here is all these here are all hyperlinked.
44:32
These detail all the new subassemblies
44:35
that were added by versions.
44:37
So basically what happens is if you're using 2019.3,
44:43
it includes, all the subassemblies
44:46
prior to that in that particular version.
44:49
So if you find anything in 2021.1,
44:52
obviously it won't be in
44:56
and have a look at that.
44:57
There's some real awesome ones.
44:59
I've put some examples here up on the screen
45:02
of ones that have been introduced
45:03
over a period of time.
45:05
So there's been some great ones, especially around road rehab.
45:09
There's also some specific ones for around DOTs as well.
45:13
So I've got here--
45:14
I've got some example of Caltrans.
45:17
I think there's--
45:19
I think there's a couple of others as well
45:22
but they're not coming to me.
45:24
OK.
45:24
Couple of more tips and tricks.
45:28
This is a question that I get asked a lot.
45:30
Can I take the stock subassemblies
45:32
that have provided with the product and reuse them?
45:35
And the answer is this.
45:36
Unfortunately, no.
45:38
And the reason for that is even though--
45:44
I've been told by the product team,
45:45
they've just been recoded.
45:47
They've been coded a totally different way
45:48
and they don't use the PKTs for some reason.
45:51
So all you can really do is the examples that we've given
45:57
are pretty good.
45:58
They do give you a lot of examples in how they work.
46:02
So if you want to take an existing one
46:04
and maybe rework it a little bit,
46:06
that's my recommendation on that.
46:08
Now this next one, I did not know this for--
46:11
until I started using it.
46:13
Is that subassemblies are either metric or imperial.
46:17
So just make sure you use a proper naming convention
46:21
to identify what they are.
46:24
The other one is put a parameter in your subassembly
46:27
to make sure that you can control the versions.
46:29
Because those particular parameters show up
46:32
when you're looking in the tool palettes and those sort of,
46:35
things allows you to track that.
46:37
The other one, know your prefixes.
46:39
So I talked about points auxiliary points, lines,
46:42
auxiliary line, those sort of, things.
46:45
Don't try and change them, they will result in an error.
46:49
And then most importantly, this is around content or managing
46:53
of content.
46:56
Give me a bit of thought to how you name them.
46:60
So you use unique names.
47:03
Also try not to reuse a name that may be already available.
47:08
The help files.
47:09
So here you got them on the left.
47:10
There is the subassemblies reference
47:13
you can always go through there, and have a look,
47:15
and see if the particular name has been used.
47:20
The other one here, you know, save all the information.
47:24
So documentation, those sort of, things.
47:26
Save that, so it keeps it all together.
47:29
Use a legend registers, those sort of, things.
47:33
You know, it's all about management
47:34
tracking that because as you update them
47:37
you need to understand who's using what
47:39
and how it's being distributed.
47:42
And then the last one.
47:44
Make-- you know, make-- have an image in help file is--
47:49
you know, don't have to do that, but it
47:52
does save the users a lot of time
47:54
and makes them more productive.
47:55
Because that way, they got that information
47:57
at their fingertips.
47:59
And then they can just refer to it really quickly,
48:02
understand how the component works,
48:03
and make sure they're using it effectively.
48:07
Next one here, this is all about subassemblies.
48:11
Couple of catches when it comes to parameters.
48:15
As I said earlier, can't use--
48:17
can't use spaces.
48:19
One thing I've discovered is if you
48:22
are going to delete a parameter, make
48:24
sure you save it before you do.
48:26
Because once it's gone--
48:27
once you've deleted it, it's gone, you can't get it back.
48:31
Then the other one, parameters.
48:33
Once you've added it into the list,
48:35
so if you like them to be in a specific order,
48:39
note that there are no tools to adjust the order of those.
48:43
So whatever order you create those parameters,
48:46
they are there forever in that order.
48:50
And then the other ones there, you
48:51
can see parameters they are inherited from higher
48:55
up in the hierarchy.
48:56
So just be aware of that one, and comments,
48:59
and those sort of, things.
49:02
Hopefully-- I think this is the last.
49:04
I think I have one or two more.
49:06
I'm just drawing attention to creating new palette
49:10
on the fly.
49:10
That one we covered earlier.
49:13
The other one here is--
49:16
Yeah.
49:16
This is important.
49:17
Sharing.
49:19
So once you've gone and done all your awesome work
49:22
and created your custom assembly,
49:23
you want to share it with your team
49:25
and then actually be able to use it.
49:27
So with subassemblies, you need to think about where
49:32
you're going to store it.
49:33
Now these-- because these assemblies
49:36
are going to be used every time you rebuild a corridor,
49:41
they really need to be in a location that has low latency.
49:45
So when I mean like that, I recommend that when
49:49
creating your tool palettes that they
49:51
go into your content that's generally
49:55
stored on your C drive.
49:57
And at the moment, probably all your custom content
49:60
is stored in C drive.
50:01
The reason for that is to make sure
50:04
that your Civil 3D remains responsive when
50:06
leveraging those components.
50:08
So if you are creating your custom subassemblies,
50:11
there will be a process for you to get
50:13
that added to the system, to get that distributed to the users.
50:17
So you want do reach out to your product champion
50:21
to know what that process is.
50:23
So you can distribute that to the team.
50:25
And they will also, as you guess,
50:27
there'll be an approval process to make sure
50:29
that it's all valid.
50:30
So-- so just talk about that.
50:33
The other thing is that if you do
50:35
share a drawing with another user that doesn't have access
50:40
to that subassembly, they will start getting error messages
50:44
in their event viewer.
50:46
And also the performance of the program
50:50
or that particular drawing will start being negatively impact.
50:54
So you'll find your drawing will start-- like, Civil 3D will
50:58
try and rebuild the corridor.
50:59
But obviously because it can't find that particular sub
51:02
assembly, you'll find that there'll be bits missing
51:05
from your corridor and the program won't
51:07
will run quite slow.
51:09
So just be aware of that.
51:11
Try a new tool palette.
51:12
I Just talk to that above.
51:15
And then the other one is don't use it across the network
51:19
that those ones are there.
51:20
So I was just going to say just before we close out,
51:24
what I've got here on the screen.
51:27
Autodesk has a custom success learning hub
51:31
and there are a couple of courses on that.
51:35
It's just a matter of just going to the site.
51:37
I'll just open this up.
51:39
This is the address here, customersuccess.autodesk.com.
51:43
You log in using your Autodesk ID
51:46
and you go to the learning tab.
51:50
And in here, there's a number of different disciplines.
51:54
So I'll just scroll down here to Civil engineering.
51:56
What I'm going to do is I'll just give you all,
51:59
so you can see some of the options here.
52:02
So if you're interested in doing a little bit
52:05
around subassembly composer, I think
52:08
it's this learning path here.
52:12
We've got this one here using subassembly composers.
52:16
So if you're interested in having a look or running
52:20
through a course, it's-- you know, of course,
52:23
it'll take about 20, 30 minutes of your time.
52:26
There's videos, it shows you how to place the links
52:29
and everything else like that.
52:30
So if you're interested in running through that, it's
52:34
free, it's no cost to you.
52:36
There's also a lot of other different courses
52:40
available in there as well.
52:42
So, you know, ProjectExplorer that
52:44
was a new one, that was added recently,
52:46
there's also a couple there for Dynamo, InfraWorks
52:49
and that's just like that.
52:51
So I just thought I'd just mentioned that.
52:53
So there's the customer success learning hub.
52:55
We also have what we call the infrastructure reimagined
52:59
website.
52:60
The product team always regularly post
53:02
there about new features that are coming in the software.
53:05
So think of Civil 3D InfraWorks, BIM tracking, Dynamo,
53:09
all those sorts of, things.
53:11
BIM 360 Design, you know, for the infrastructure space
53:15
and those sort of, things.
53:16
So just thought I mention those before we close out.
How to buy
Privacy | Do not sell or share my personal information | Cookie preferences | Report noncompliance | Terms of use | Legal | © 2025 Autodesk Inc. All rights reserved
Sign in to start learning
Sign in for unlimited free access to all learning content.Save your progress
Take assessments
Receive personalized recommendations
May we collect and use your data?
Learn more about the Third Party Services we use and our Privacy Statement.May we collect and use your data to tailor your experience?
Explore the benefits of a customized experience by managing your privacy settings for this site or visit our Privacy Statement to learn more about your options.