visual basic programming


DWGraphics specializes in developing custom programs for architectural, engineering, and manufacturing firms who use Autodesk CAD products to do their design work. The types of programs we write fall into four basic categories – Design Automation, System Integration, Batch Processing, or AutoLISP to Visual Basic Conversion.

Our development language of choice is Visual Basic (including VBA and VB.NET) because it is compatible with so many mainstream applications on the market, such as those shown in the table below:

Publisher Applications
Autodesk AutoCAD, Civil 3D, Inventor, Revit, Vault
Microsoft Access, Excel, Word, Outlook, Windows
Adobe Ilustrator, Photoshop

Typically, the software we develop tends to involve the exchange of information between two or more of the applications listed above. Examples of this might be using an Excel spreadsheet to drive the creation of AutoCAD geometry or extracting information from a set of drawing files and writing that data to an Access database. The possibilities are endless.


Design Automation

The design automation tools we develop allow you to accomplish tasks that are repetitive and/or tedious in dramatically less time and with far greater accuracy than they can be done manually. Examples of this type of application would be:

  • Parametric part generators that construct parts or assemblies based in inputs from a dialog box, spreadsheet, or database
  • Standards implementation routines that automate and control how entities are inserted into drawings (layers, scales, etc.)
  • Drawing translation utilities to facilitate exchanging data with co-workers, clients, and vendors you work with on a regular basis 

Portfolio for this category:
Batch Drawing Formatter
, BomTools, Inventor Description Generator,


System Integration

The system integration applications we write revolve around exchanging CAD data with the likes of Excel, Access, or other specialized business or manufacturing software so you take maximum advantage of the work you’ve already done and get it to the people who need it in a timely manner. Examples of this type of application would be:

  • Material take-offs for estimating purposes
  • Importing and formatting raw coordinate data from spreadsheets, databases, or text files

Portofolio for this category:
, Inventor RevTracker, SheetSet2Excel, VaultPlot


Batch File Processing

We can also create batch processing utilities that allow you to update drawings, generate plots, extract data, or perform file conversion operations on entire folder trees of drawings. These types of applications are useful when

  • Drawing standards are being adopted or changed
  • Your company name, address, or logo are being updated
  • Large numbers of drawings are being added to your CAD environment
  • Files need to be converted to non-CAD applications for use in websites or printed publications

Portfolio for this category:
Batch Drawing Formatter
, DWG2DGN, PCX2TIF, Inventor RevTracker


AutoLISP to VB Conversions

Rewriting your AutoLISP routines in Visual Basic can yield a number of benefits. VB applications run faster, allow for a richer user interface, are vastly easier to maintain & extend, and make it possible for the application to communicate with other VB-enabled applications. If you have Lisp routines that no longer work correctly in your current version of AutoCAD or that you would like to make significant enhancements to, we urge you to have a conversation with us about the pros and cons of converting your application to Visual Basic.


Portfolio for this Category:

  Programming Portfolio