The Developer Reference Help in BricsCAD V14 has improved dramatically. It is nice to see help topics for all APIs arranged in one single panel inside the CHM file. In earlier versions or BricsCAD, I have seen many developers (including myself) refer to the AutoCAD API help while developing apps for BricsCAD.
This is no longer required and, perhaps the reverse is imminent - AutoCAD developers may now find it more convenient to use API docs provided by BricsCAD.
The documentation of the V14 developer reference can be found at this link or from the main Help of BricsCAD.
The help is online and not contained inside the CHM file. When you click on the developer help, it offers to connect to the internet and display the help.
Let me walk through some of the items in the developer reference.
The Lisp Help:
This is the most comprehensive documentation you can even find for Lisp.
Expanded Lisp documentation now includes even all the goodies from the Lisp Developer Support Package announced earlier. The complete set of VL, VLA, VLAX, VLE, VLR, AI, ACET and SafeArray functions are documented now.
SafeArray is a category of functions relating to SafeArray variant datatype manipulation in Lisp.
The VL??? family of functions provide access to all the extended Visual Lisp functions.
The ACET functions provide access to all the Lisp functions defined as part of Express Tools. You can now access the same using BricsCAD. This includes some great work done by Martin Drese of CAD Wiesel, Germany, and of course, Torsten Moses.
The last section includes complete documentation about the DESCoder Lisp encryption tool, developed by Torsten Moses.
The DCL help
The DCL help documents every single DCL tile definition, callbacks and the structure of the DCL.
DIESEL stands for Directly Interpreted and Evaluated Structured Expression Language, and is popular with many senior citizens of the CAD programming world. It is used for menu macro programming. It has not been forgotten and finds a mention (and a detailed function description) in the BricsCAD Lisp help.
COM and VBA Help
The BricsCAD Automation Object Model can be viewed in a tree-structure through which you can browse, and shows the hierarchies and the dependencies between the objects. Methods and Properties of each object is clearly explained. Needless to say, the same object model applies in AutoCAD also, and serves as a help for AutoCAD developers as well.
BRX, .NET and SDS
In the last three API items, you have BRX (the C++ interface of BricsCAD, and 100% source-code compatible with AutoCAD's ObjectARX), .NET and the deprecated SDS programming system (remember the ADS interface of AutoCAD).
BricsCAD may strive for compatibility with AutoCAD but its origins in IntelliCAD and the underlying ODA libraries are not forgotten. The Teigha eXtension (TX) is another development API for BricsCAD, coming from the IntelliCAD times, about which little is known. The TX development platform was earlier known as .DRX. This is no longer a popular development environment. However, for the benefit of CAD trivia afficionados, here is a full discussion on Teigha.
Documentation for the BRX programming interface is not contained in the developer reference. It is part of the BRX SDK, which consists of:
- a set of code compatible C++ headers
- the necessary lib files to link against.
- documentation (reference guide, porting manual, change log)
The BRX SDK is not installed with BricsCAD itself, but is distributed through a separate download source. You can get free access to the BRX SDK, simply by registering yourself as an application developer on the Bricsys website (www.bricsys.com). During registration, mark the check box for "ARX/BRX/TX", and you will receive the necessary information to get started.
The .NET documentation is complete and available in the Developer Reference.
This was a quick summary of what you can expect to see in the Developer Reference. The purpose of this writing is to ask you to open this valuable resource and take a peek. There are tons of useful information and examples here to help you with your development tasks in BricsCAD (and AutoCAD as well).
Follow us on Twitter: https://www.twitter.com/rakesh_rao