Edward-James Surveying banner

Sincpac-C3D Extensions for Civil 3D

Sincpac-C3D

This is a collection of routines for extending Civil 3D.  It is similar to the original Sincpac for Land Desktop, except these routines are written to work in Civil 3D.  Since the two programs operate differently, some of the routines from Land Desktop version of the Sincpac are no longer here, while a number of new routines have been added to address specific Civil 3D needs.

Note: the downloads provided here are old, intended for Civil 3D 2007 users only.  Civil 3D 2008, 2009, and 2010 users should download the latest version from Quux Software.  In addition to the latest-and-greatest download of the Sincpac C3D Free Edition (currently v2.8), you can also find the source code to the Sincpac C3D v1.0 Free Edition for Civil 3D 2008-2010.

Also, the complete set of help files for the Full Version of the Sincpac-C3D may be viewed at the Quux Software website, so you may head there and see a complete description of all the available commands.  Some of these commands are available in the Sincpac-C3D 2007 found on this page, but the Sincpac-C3D is much more powerful for the later versions of Civil 3D.

Licensing and Terms of Use

These routines are made freely-available to the general public.  In the interests of serving the community, we also release complete source code, so that you can see how the routines were written, and learn to create your own custom routines.  You may take this code and freely modify and expand it for your own use, for any purpose.  However, if you create something particularly useful, it would be appreciated if you would consider sharing it with the community at large, either by posting it on your own web site, or by sending it to us here at info@ejsurveying.com so we can include it in the Free Edition of the Sincpac-C3D, or by posting it to a public newsgroup such as The Swamp.

Download

The following files contain the compiled DLL, complete C# source code, and a copy of this web page:

SincpacC3D-2007.zip (v0.7.2667.33225, dated April 21, 2007)
SincpacC3D_SourceCode.zip
        Change Log

Note: the downloads provided here are old, intended for Civil 3D 2007 users only.  Civil 3D 2008, 2009, and 2010 users should download the latest version from Quux Software.  In addition to the latest-and-greatest download of the Sincpac C3D Free Edition (currently v2.8), you can also find the source code to the Sincpac C3D v1.0 Free Edition for Civil 3D 2008-2010.

IMPORTANT NOTE FOR 2007 USERS:  The 2007 version posted here is the last version I created before we received Civil 3D 2008.  Unfortunately for Civil 3D 2007 users (but fortunately for developers), Autodesk added functionality to the 2008 API, and it is now possible to do things that were impossible in earlier versions.  Therefore, the 2007 version of the SincpacC3D posted here is an old version, and does not contain the full functionality of the later versions.  Essentially, all improvements listed in the Change Log after April 21, 2007, are not included in the 2007 version.

Installation Instructions

There are a number of ways to install the DLL.  The easiest is to download the appropriate version and place it in a convenient location.  Then include the following line in your ACAD.LSP file (if you don't have an ACAD.LSP file, simply create one in a text editor and put it in a directory in your support path):

(command "netload" "C:/My DLL Directory/SincpacC3D.dll" "FIXSCALES")

Or, if you don't want to enable the FIXSCALES support at startup, use this line in your ACAD.LSP file, which omits the call to FIXSCALES:

(command "netload" "C:/My DLL Directory/SincpacC3D.dll")

If you place the .DLL on the network, you may have to adjust permissions to allow it to run.  One way is to open a Command Prompt window, navigate to the .NET 2.0 installation directory on each user's machine (usually located at "c:\windows\microsoft.net\framework\version\") , and type the following command:

caspol.exe -machine -quiet -addgroup 1 -url "file://MyServer/My DLL Directory/*" FullTrust

Instead of changing permissions with CASPOL, you can also write a script (i.e., a Windows Logon script) that copies the DLL from the network to the local user's machine.  This has the benefit that you can update the DLL on the network drive whenever you wish.  Then, each time a user logs on to their machine, the script copies the DLL from the network to the user's local machine, ensuring the user has the latest copy of the DLL.  If you let each user mount the DLL from the network drive, you may find that you cannot overwrite the existing DLL if any of your users are using Civil 3D.  However, if the DLL is being used by someone, you should still be able to rename the existing DLL to something like "SincpacC3D-old.dll", and then place the new DLL in the directory.  Then the next time the user shuts down and restarts Civil 3D, the new version of the DLL will be loaded.

Source Code Details

This library of routines is compiled into a single DLL file, compiled for C3D 2007 or C3D 2008.  The Source Code is one Solution that contains two projects, one with the 2007 version and one with the 2008 version.  If you have only one version of C3D, you can simply remove the other version from the Solution.  Note that more-recent versions of the source code for Civil 3D 2008 and 2009 are available from Quux Software.

Initial versions of this library were developed using SharpDevelop.  However, the project has now been converted to MS Visual Studio 2005 Express Edition.  It should still be relatively easy to import the project into SharpDevelop if you wish.  To compile the library on your own system, download the IDE of your choice.  You also need to download and install the .NET 2.0 SDK and the ObjectARX SDK documentation.  If you have any problems, the folk at The Swamp are very knowledgeable and helpful.