Area2Field LISP doesn't work

Any idea why this LISP doesn't work in Bricscad? I am evaluating Bricscad and this is a LISP I use often. Any idea how it can be adapted? Thank you for any help!

Comments

  • Hello.

    Currently, in Bricscad there is an issue with the (getobjectidstring) function which works differently compared to Autocad.
    The issue is being investigated.

    For now, with this case, a small adjustment of the (LM:ObjectID) function could help.

    <pre>
    ;; ObjectID - Lee Mac
    ;; Returns a string containing the ObjectID of a supplied VLA-Object
    ;; Compatible with 32-bit & 64-bit systems

    (defun LM:ObjectID ( obj )
    (eval
    (list 'defun 'LM:ObjectID '( obj )
    (if (= "BRICSCAD" (strcase (getvar 'program)))
    '(itoa (vla-get-objectid obj))
    (if
    (and
    (vl-string-search "64" (getenv "PROCESSOR_ARCHITECTURE"))
    (vlax-method-applicable-p (vla-get-utility (LM:acdoc)) 'getobjectidstring)
    )
    (list 'vla-getobjectidstring (vla-get-utility (LM:acdoc)) 'obj ':vlax-false)
    '(itoa (vla-get-objectid obj))
    )
    )
    )
    )
    (LM:ObjectID obj)
    )
    </pre>