Alfatech Vietnam Co., Ltd

Customizing BricsCAD

BricsCAD allows you to customize your own system.

Proposal of development for BricsCAD

Not only reading and writing DWG files by means of BricsCAD, you can also customize your system by creating own commands to enhance your CAD environment.

With our know-how of developing applications on AutoCAD/BricsCAD, we are able to solve your problems with a minimum cost.

Development languages of BricsCAD commands.

BricsCAD provides various APIs (Application Programming Interfaces) for developing applications which run on BricsCAD.
These APIs are subjects to the ones provided by AutoCAD; therefore, if you have development experience in AutoCAD, you can easily understand them.

The major languages for development are as follows:

Lisp SDS VBA BRX .NET API

You can choose suitable API for you considering their advantages and disadvantages.

Lisp (List Processing)

This API is equivalent to AutoLISP and VisualLISP for AutoCAD with LISP (List Processing) programming language. The Lisp interpreter runs programs applying shape data to lists. This is the oldest API for CAD with low extensibility; however, it does not require much programming experience nor knowledge. Therefore, it is easy for the users to create Lisp programs. The purpose of Lisp command is usually to enhance the drawing function to manipulate shapes in a CAD drawing.

(* BricsCAD Classic/Pro/Platinum)

Advantages

  Compatibility with AutoCAD will be kept in the future. You don't even need to know you use Unicode characters. It is not necessary to rebuild the program when updating BricsCAD.

Disadvantages

  The basic idea is to enhance usability by selecting shapes and combining commands; therefore, there are constrains if you seek for advanced processing.

SDS (Solution Development System)

This API is equivalent to ADS for AutoCAD  with C/C++ languages. The same expressions and functions written in LISP can be used for programming. You can create an executable module by using Visual C++8.0 (SP1). The library modules to be linked are provided in the installation folder.

Extensibility of the programs are high because you can use standard C/C++ functions; however, the number of functions is less than Lisp as it does not support all functions of Lisp as for contact points of CAD.

This API is only for compatibility with legacy resources. It is not recommended as Lisp and BRX are more common.  This API is supposed to be used to load or call external functions from a  Lisp program.
(* Supported in BricsCAD Classic/Pro/Platinum)

Advantages

For C language developers

Disadvantages

When migrating old ADS source, you need to consider Unicode characters.

In some cases, you need to rebuild the program when updating the version of BricsCAD.

VBA (Visual Basic for Applications)

This API is equivalent to VBA for AutoCAD with VBA (Visual Basic for Applications). VBA has development environment as well as runtime environment in the application. It is easier to make a program and strong to link to another application.
(* Supported in BricsCAD Pro and Platinum)

Advantages

Development language of VB is easier. You don't need to consider Unicode characters.

Disadvantages

Since both Microsoft and Autodesk do not recommend VBA and recommend .Net, it may have constrains in the future.

BRX (BricsCAD Runtime eXtension)

This API is equivalent to ObjectARX for AutoCAD with C++. A part of class libraries which consist of CAD is provided. Customization from the inside of CAD is possible.

You can obtain the libraries when you register as developer.
(* Supported in BricsCAD Pro and Platinum)

Advantages

It is possible to implement advanced command using reactors, etc. same as AutoCAD.

Disadvantages

Knowledge of C++ is indispensable. Also, you need to know how to handle Unicode characters.
In some cases, you need to rebuild the program when updating the version of BricsCAD.

.NET API

The .Net languages such as VB .Net and C# .Net are available in the Microsoft .Net Framework.
(* Supported in BricsCAD Pro and Platinum)

Advantages

You can choose development language such as VB .Net, C# .Net, etc. It is possible to implement advanced function as same as by BRX. Since it has compatibility with .Net API for AutoCAD, it is easy to merge into one. You don't need to rebuild the program when updating the version.

Disadvantages

Since it is a new technology, documents and skipped developers are less.