Since V23, BricsCAD LISP
provides a dedicated interface for the Mechanical functionality
(requires "Professional" resp.
"Mechanical" license).
This new API part is designed for simplicity,
flexibility and following the usual AutoLISP logic in naming,
arguments, behaviour and results.
As Mechanical functionality requires the
BricsCAD Professional ("PRO") resp. Mechanical license level, using
a lower-level license (or when disabled i.e. by RunAsLevel=0), the
API module is not active, and all Mechanical LISP API functions
will not be available.
As Mechanical development constantly
continues, the BRX and LISP APIs will also expand, providing more
functionality and also incorporate the ideas and feedback from
third party developers.
The Mechanical LISP API has 2 parts
:
a) the Rhino-Import/Export
and Component Instance
and Component Definition
functionality : these require the
"Professional" license level
b) the Mechanical Components,
3D
Constraints Groups, 3D Constraints
and 3D Constraints Parameters
Functions functionality : these require
the "Mechanical" license level
How to verify the License Level ?
There are 2 Lisp functions
available : (bcad$LicenseLevels) and (vle-licenselevel),
which both use identical implementation.
If Mechanical is available, the returned list
will contain the string "Professional" resp.
"Mechanical".
"RunAsLevel" setting is also respected in
result list.
How to activate the Mechanical LISP API ?
As the LISP function set for
Mechanical functionality is implemented using the BRX core system,
it is required to explicitly load / activate the Mechanical LISP
interface functions (somewhat similar to required (vl-load-com)
under AutoCAD AutoLISP) using :
If the context conditions
(Professional resp. Mechanical licenses) are met, it will load the
extension and return 1 (Pro functionality is available) or 2
(Mechanical functionality is available) or NIL if neither Pro nor
Mechanical license is available; in latter case, the specific LISP
functions are not available.
Some general hints & rules
"entity name"
usage : in all cases, when a functions
requires an "entity name", both "classic ename" and "vla object"
are always valid and supported.
The Mechanical API covers the following
functional areas :
|
|
||
|
|||
|
|
|
|
|
|
|
|
|
|
|
© Bricsys NV. All rights reserved. |