Monday, 17 December 2012

Loading .Net dll from network location

Reminder to myself if you want to load a .dll you have made that is stored in a network location you will get the error


unless to get around the error you have edited the acad.exe.config text file in the autocad installation directory and added the following line in orange.

Thanks Alfred for the suggestion in the Civil3d

Monday, 10 December 2012

Exporting and Importing Acroplot Registry Settings

Reminder to my self once you have set up Acroplot as per the following instructions to save common settings on a network location

You can export the settings from the registry from one machine as follows to import on another machine.

Wednesday, 14 November 2012

Sheetset Manager Reminder

Yesterday I had to add some extra drawings to an existing job by putting extra layouts in the middle of some existing ones in one dwg.

Once you have added the new layouts to the drawing and Sheetset Manager (SSM).You can not just start renumbering drawings in SSM.

Say for example you have the layouts numbered 200,201,202,203 and then copy 201 and make a new layout so you have 200,201,201(1),202,203. If you go to SSM and renumber 201(1) to 202 things start to go to custard in SSM as a layout 202 already exists in the drawing.

To add a new 201 drawing to SSM and have everything in sync you have to renumber 203 to 204 , 202 to 203 and 201 and then renumber the layout  201(1) to 202.

Someone may know of the correct way of doing this but this is how I worked around it for now.

Thursday, 1 November 2012

Custom Civil3d Pipe Rules for New Zealand Structure Drop Requirements

The New Zealand Land development and subdivision infrastructure Standard NZS 4404:201 requires that
the drop though a manhole structure should be changed depending on the angle of turn between pipes as follows and for stormwater pipes that pipe soffits should be matched to achieve the drop when pipes change in size.


Back in 2008 I wrote some custom rules to achieve this and how I have finally got round to updating them to 2012 and I have updated the rule to use the difference in incoming and outgoing pipe diameter for the drop if it is greater than the minimum drop calculated from the angle difference between pipes.

If you are interested you can download a copy of the project and rules here .If you are running 2012 they should run ok but if not you will have to recompile the rules for whatever version of Civil3d you are using.

1. First we can check if they work by chance with the 2012 build attached.
2. Go to the path C:\ProgramData\Autodesk\C3D 2011\enu on your machine and rename the shipped xml point file C3DPiperules.xml to say C3DPiperulesShipped.xml.
3. Copy the two files attached C3DPiperules.xml and C3DCustomPipeRules.dll to the folder.
4. Close and open Civil3d and setup a new rules set you will see some extra rules in the rule dropdown list.


. Try and create a pipe network with the new rules. I suspect an error will happen at this stage if you are not using 2012 as the compiled .dll program is looking for 2012 files.

To re compile the .dll code
1. Download and install Visual Basic Express 2010 from here
. Unzip the project code file attached to your c drive as compiling code from network drives does not work.
3. Now open Visual Basic Express and open the project file and change the references as per this video

Wednesday, 24 October 2012

River Rock Void Ratio Confirmation

Been really busy at the moment so have not been posting as much as i like. Anyway this is a non Civil3d post that maybe of interest to some. I was designing a detention pit/chamber the other day and had no idea of what the likely void ratio of the rock material available would be. So I looked into it theoretically for spherical stones here and then once on site measured the actual void volume of some sample rock.

Sample Rock available was 40mm and above Clean River Run sourced from a local river


Test Procedure


To calculate the percentage void volume in the sample rock fill to be used in the proposed detention pit a 14litre bucket was filled with a sample of the 40mm and above Clean River Run and water was poured into the bucket to fill the voids from another bucket of known volume the percentage of voids filled with water was then calculated as follows

Round Bucket Volume

Pi(0.25)^2/4 * 0.28 = 13.7 litres

Volume of Water from Square Bucket

0.23*0.23*0.13 = 6.877 Litres

Percentage Void Ratio =6.877/13.7 =49%

Thursday, 11 October 2012

Adding Additional Properties to Pipes and Structures

About a month I go I was playing around with partbuilder trying to add additional properties to pipes in my catalogue to improve our pipe labels and did not have much luck.

However Kevin posted an interesting couple of articles the other day with a link to a BeingCivil post on how to do it.

So I have revisited the problem with this new knowledge  and have been able to add a Stiffness Class as well as Material type to our PVC pipes and labels. I was able to get it to work following the Being Civil instructions with a couple of extra bits of information.

1. If you pipe catalogue is in a common network location the .xml file you adjust is in that location not on your local drive.
2. If you are in Civil3d while you are changing the xml file you will have to shut down and restart to have the new xml file loaded into Civil3d.



Tuesday, 9 October 2012

Tuesday, 25 September 2012

Civil3d versus 12D

It seems that 12d is taking over the civil software market in New Zealand at the moment particularly with the recent Christchurch earthquake and the fact most rebuild teams seem to be using 12D, Autodesk seem to have missed the boat completely here.

I keep joking with my reseller on a bad day with Civil3d that perhaps I should be moving to 12d as well, so I asked a colleague who used to work exclusively with Civil3d before moving company to use 12d, what his thoughts were on which package was best and have posted his reply below as it maybe of interest to others

In regards to your question about which is best, well…….each has its own strengths & weaknesses really.

From my own perspective:

  • I am using V9.0. V10 is due to hit soon, which has a lot of improvements apparently.
  • First off, 12d is a PAIN to learn. The menu system is very counter-intuitive and the help system is a DOG. That aside…
  • 12d handles large datasets better (e.g. LiDAR), but no point cloud handling capability. It can pare down the data in a clearer fashion better than Civil3D seems to.
  • Not that I have done field-to-finish work with 12d but from what I’ve seen they do here with it, I would give Civil3D the advantage here. The description key work that can go through to labels and how point groups works is a clear winner, PLUS manipulating and displaying (i.e. swapping triangles, changing surface styles) a surface is by far easier.
  • Stability – 12d far excels C3D here. The only time 12d seems to futz out on the odd occasion is when is changing large amounts of data at a time or pad grading (a rudimentary version of C3D’s feature line + grading).
  • Working with CAD – obviously C3D is a vertical of AutoCAD, so no guesses who wins here. In 12d you have export EVERYTHING to CAD. And then if you spot a mistake, you have to fix it in 12d and then export it all again.
  • In addition to that, there is no real dynamism to 12d of the labels. If something changes (elevation/slope etc.), 95% of the time you have to clean the model (layer) and get them re-calced.
  • In terms of design, it fairly even here – apples and oranges really. No such thing as sub-assemblies, only templates (which aren’t really visually-driven; more by figures/numbers). Alignments and profiles are combined into a single ‘SuperAlignment’ which is nice. The basic mechanics of it are the same though. 12d has a nice thing called computators, which come in handy for kerb returns as they act dependent on the incoming/outgoing roads, almost like a live intersection wizard, and can be used for other functions too. 12d seems to be able to do transitioning (crossfall/width/height) better though.
  • Also 12d has a better recording system. It’s somewhere between the Action Recorder and a macro. Makes re-calcing a lot of instructions at once a breeze.
  • Civil3D’s feature lines and the FL editor win hands down. Better calculation of grading along it and between objects.

That’s just off the top of my head really. There are a lot of other differences that I haven’t mentioned, but to explain them would take more time than I have.

Sunday, 23 September 2012

Constructing Kerb Return Profiles based on quarter points

When building Intersections Civil3d gives you only one option for the shape of the kerb return profile a straight line or grade.

Rob Gadbaw who use to to be located in New Zealand and still provides support to us remotely has teamed up with the guys at CGSplus and have made a small app to create better create return profiles here. base on quarter points.

If you are not into purchasing third party apps then are some notes on what you have to do manually to achieve the same result.0p35ljtk_thumb1
New profile in white with incoming and out coming grade projected to quarter points.


New Vertical Curves Added at the quarter points
A couple of things to remember are that.

1. You should hold off to the end before making the final manual kerb return profiles encase the road intersections get moved.
2. Do not extend your kerb return profile to far past the PT just to the first end point snap next along the profile from the PT as this is the end of the triangle in the surface. If you do make the profile to long it starts to play around with your surface to much and does not match offset profile levels exactly
3. To check that the surface coming into and out of the kerb return is correct use the isolate region command on the ribbon just to see the bit of the surface made by the region before and after the kerb return section and compare that to your hand drawn profile.

Monday, 17 September 2012

Printer Settings reminder

Reminder to myself if pdf’s are not plotting to scale make sure page scaling is set to none 

and that in the printer driver have orientation set to landscape or the bottom of the page will be cropped off.

Sunday, 16 September 2012

Adding a Subgrade Profile to a Profile View

There are a couple of ways I know of how to add the subgrade levels of a road to a ProfileView.
One of them is dynamic and will update with changes and the other is not.

Depending on what data you want in the ProfileView bands Subgrade or Finished levels will dictate the method you choose and if it is dynamic or not.

This is where the business case for a Dynamic Offset Profiles to be built into Civil3d comes into play as these could be used to create a road Subgrade Profile and they would live update. 

For now we have to use one of the following to methods

Method One (Dynamic but no grade and curve data in profile bands just surface levels & grades)
Create a subgrade surface from the corridor model bottom links and then create a surface profile of the subgrade surface.


Method Two (Not Dynamic)
Copy the Finished level profile and then raise and lower the new profile the depth of offset you want as follows.



Seeing this method is not dynamic it could be a good idea to add a profile of the subgrade surface with a noplot style to the ProfileView to compare against so any manual updates are picked up in the future.

Thursday, 13 September 2012

xref’s and Layer 0 and Depoints

There are a couple of special layers in Autocad 0 and Depoints that are common to all drawings. So when you have something on either it always comes thru as turned on in the xref so it is good practice to put objects on there correct layer for whoever is going to xref your drawing.


Some labels not appearing in ProfileView Bands

A question from one of our team today was

“I have put the subgrade surface in all the profiles. It doesn’t seem to be providing points for all the chainages though, for example at CH0, 40 & 50 in the attached picture.”
This is usually because the profile in the profile 1 column for the bands is different as this is the profile Civil3d determines the spacing of the label points form unless the match vertical grid spacing is ticked. Check that the settings are correct for the bands as highlighted below.
Note : Sometimes additional tick and labels appear in the band only at horizontal and Vertical Geometry points this is because these are turned on in the Band style under the display tab.

Dealing with Locked Profile IP’s on side roads Profiles

When you use the intersection wizard you can lock the profile of the side roads to the crossfall of the through road. If the grip symbol is a paddlock it will be locked and you will not be able to move it therefore. to grade the side roads I normally to the following

If you really want to unlock the IP you can. Do the following. Select the profile right click->edit geometry->Profile Grid View->Scroll to the end and click the padlock in the lock column.




Tuesday, 11 September 2012

Multiple ProfileViews and Dimension line Curve Labels

An issue came up today with an old style I developed (I think in 2007-08) when working with multiple Profileviews in that the dimension line was not showing when the end of a curve was not in the Profileview.

I was not really thinking about multiple Profileviews when I made this style to fix it, I had to change a couple of setting in the “A-TP to TP” grade and “A-Curve Length Crest and Sag” styles as per the image below

Monday, 10 September 2012

First real snow fall in town

It’s early spring in Queenstown and we are getting our first real snow down to town level. Glad I have the snow chains in the car from the weekend skiing.

Adding Profile Curve Labels


Adding Crossing Pipe to Profileview

Just a reminder on how to add a crossing pipe to ProfileView
1. Select the pipe to be shown in the Profileview (aka Long section) right click and select “Draw parts in Profile View”
2. Follow the instructions at the command line i.e select the profile view.
3. Some line work for the pipe will appear in the profile view. This linework needs to be updated to show correctly with an override pipe style.
4. Select the ProfileView and right click select “ProfileView Properties”
5. Goto the Pipe Network Tab and change the override style as shown below
6.Exit and the pipe will be updated to show correctly

Sunday, 9 September 2012

Tips for working with Corridors

Being a Jack of all trades I tend to be to some grading one minute, piping the next and corridors the next month. Last week i as doing some more corridors again for the first time in a while so jotted down some tips below to remember for next time.

1. To stop the event view from coming up each time the corridor rebuilds turnoff the event view in the drawing settings.

2. Once you can get alot of regions in a complex corridor from within the corridors properties box use the select region button to find the region you want.

3. Have not gotten my work flow down yet for footpaths but at this stage i am using the urban side walk assembly and have polylines as targets on two separate layers one for the inside berm and one for the sidewalk width. This made it quicker to set the targets by layer not individual objects. Two issues came up

a.  If you get a lot of extra frequency lines as below

this is because you are targeting the polyline and the arcs in a polyline get tessellated into small straights. Make sure under frequencies “Offset Target Geometry Points” is set to no.

b. I though it would be nice and tidy to join it the polylines to together for the path edges this created another issue of the targets extending to the next road over. Best to keep the lines in pieces.
4. I inherited the model  to finish and it had all these steps in the contours after the intersections. After searching for a target profile issue for a hour or so I identified the issue as being the main road having 4% crossfall and the intersection assemblies being brought in as having only 3% therefore giving the step.


5. Use the Match Properties button on the ribbon, but remember to type settings each time at the commandline as the settings are not remembered and you do not want to swap assemblies in most cases just match frequencies.


6. For Bus stops use lane widening's these will update your offset alignment geometry to include your busstop. After selecting the offset alignment choose add widening on the ribbon. Here what all the settings relate too.

Acroplot Junior ignoring Lineweights

Just had an issue with lineweights and Acroplot so thought I would post it for others.

When I was doing a plot from Autocad Civil3d 2012 and choosing Acroplot pro as the printer my line weights were come out correctly. But when I was printing from Acroplot junior from within Autocad the line weights were all the same. I checked setting ctb, scaling , etc they all appear to be the same.

I posted a support request with Cadzation and they suggested setting Object lineweights to “saved” and that did the trick.


Monday, 3 September 2012

Civil3d 2012 64 bit download not working

Currently trying to update my home laptop to 64 Bit to work on a project at night to meet a deadline. However after 3 days of trying to download Civil3d 2012 from the subscription website I am still having no luck. Hopefully Autodesk will get the issue fixed soon as I am sure I am not the only one experiencing the issue.

Lesson learnt download and burn a copy for when you need it in advance.

Wednesday, 29 August 2012

Code to Name Parcels after selected discharging Structure

Last week I wanted some code to quickly add a user property to a Parcel label to display what structure its flow was discharging too. I tried accessing user defined properties from the API but had no luck and requested an example form the ADN team which Partha posted here.

Seeing the job had to out the door, I wrote this code in the interim to use the Parcel Name and just add a counter on the end to avoid having Parcel name double ups which are not allowed.

Imports Autodesk.AutoCAD.Runtime
Imports Autodesk.AutoCAD.ApplicationServices
Imports Autodesk.AutoCAD.DatabaseServices
Imports Autodesk.AutoCAD.Geometry
Imports Autodesk.AutoCAD.EditorInput

'Civil3d Com Imports
Imports AeccLandLib = Autodesk.AECC.Interop.Land

'Civil3d Imports
Imports Autodesk.Civil.ApplicationServices
Imports Autodesk.AECC.Interop.Land
Imports Autodesk.AutoCAD.Interop

Public Class ConnectParceltoStructure

<CommandMethod("xpConnectParceltoStructure")> _
Public Sub ConnectParceltoStructure()
Dim document As Document = Application.DocumentManager.MdiActiveDocument
Dim ed As Editor = document.Editor
Dim db As Database = document.Database

Dim peo1 As New PromptEntityOptions(vbLf & "Select Catchment Parcel : ")

peo1.SetRejectMessage(vbLf & "Invalid selection...")
peo1.AddAllowedClass(GetType(Autodesk.Civil.Land.DatabaseServices.Parcel), True)

Dim pEntrs As PromptEntityResult = ed.GetEntity(peo1)
If PromptStatus.OK <> pEntrs.Status Then
End If

ParcelId As ObjectId = pEntrs.ObjectId

Dim peo2 As New PromptEntityOptions(vbLf & "Select Structure to Link to : ")

peo2.SetRejectMessage(vbLf & "Invalid selection...")
peo2.AddAllowedClass(GetType(Autodesk.Civil.PipeNetwork.DatabaseServices.Structure), True)

pEntrs = ed.GetEntity(peo2)
If PromptStatus.OK <> pEntrs.Status Then
End If

StructureId As ObjectId = pEntrs.ObjectId

trans As Transaction = db.TransactionManager.StartTransaction()
Dim oParcel As Autodesk.Civil.Land.DatabaseServices.Parcel = TryCast(trans.GetObject(ParcelId, OpenMode.ForRead), Entity)
Dim oStructure As Autodesk.Civil.PipeNetwork.DatabaseServices.Structure = TryCast(trans.GetObject(StructureId, OpenMode.ForRead), Entity)


Dim StructureName As String = oStructure.Name

Dim ParcelDischargeStructure As String = oParcel.Name

'Check the all the Parcel Names in the site to see if name already exists
'if it does add counter to the end of name

Dim Count As Integer = 1
Dim x As String = "Writing"
Dim NewParcelName As String = StructureName

'Change the Parcel Name to the Structure Name
Do Until IsNothing(x)
oParcel.Name = NewParcelName

'We have gotten to this line without firing an exception
' therefore written the structure name to the Parcel name set x to nothing to exit loop
x = Nothing

ex As System.Exception
'MsgBox("Error " & Err.Description & " - " & Err.Number & Convert.ToChar(10))
NewParcelName = StructureName & ("-(" & Count & ")")
Count = Count + 1
End Try


End Using
ex As System.Exception
End Try
End Sub

End Class

Tuesday, 28 August 2012

Sheet Set Manager – Updating Existing Title block Fields

Just had to change a number of fields in an existing title block to be sheet specific instead sheetset specific to allow different Draught people and Designer initials per sheet for a large project.

The process of creating the custom fields in your sheetset file is cover here but in summary :-



Once you have the new custom fields you have to use the enhanced Block editor with the EATTEDIT command and remap to the new fields to the correct location.


Now in Sheetset manager under each sheet you have a place to enter the Designer and Drawer. The way Sheet Manger is setup to access this data is a dog so an investment in a 3rd party app like JTB World’s SSMPropEditor is worth while


The major issue you have with this process is it does not update already existing blocks so you have to do each one manually.There is some more discussion here on the issue and Shane at Between the line suggests a method here of exploding the existing block, which I was not able to get to update existing blocks either.

If anyone knows a better method I would be interested to hear about it as I am sure this will not be the last time I have to do this.

Related Posts Plugin for WordPress, Blogger...