Jump to content

Recommended Posts

Posted (edited)

hi guys

i have a FIELD expression working fine in AC2007 old 32bit desktop 
LINE's delta properties= x,y  multiply scale factor


eg: 0.03,-0.04 x 1000, then entmake MTEXT should display 

dX=30
dY=-40

 

but it's weird, Bricscad/v19/win7 x64 (sorry as i'm newbie)
dX %<cExpr (1000 * %<cObjProp Object(%<\_ObjId 1889532720>%).Delta

after double click to edit it became
dX %<\_FldIdx 0a
(if ACAD double click to edit FIELD, a dialog pops up, you can check formula 1000 * 0.030 & preview)

 

can you replicate this bug?? 

(defun foo (obj x)
  (apply 'strcat
     (mapcar '(lambda (a b)
            (strcat a
                "%<\\AcExpr ("
                (rtos (float x) 2 0)
                " * %<\\AcObjProp Object(%<\\_ObjId "
                (itoa (vla-get-objectid obj))
                ">%).Delta \\f \"%lu2%pt"
                b
                "%pr8\">%"
                ") \\f \"%lu2%pt"
                b
                "%qf1%pr0\">%"
                " \n"
            )
          )
         '("dX " "dY ")
         '("1" "2")
     )
  )
)


 


test delta x=0.03 y=-0.04
 

(and 
(setq pt (getpoint "\nSpecify point.. "))
        (setq    en (entmakex (cons '(0 . "LINE")
               (mapcar 
                                    '(lambda (a b) 
                                           (cons a (mapcar '+ pt b))
                                        )
                          '(10 11)
                              '((0. 0.) (0.03 -0.04))
                 )
             )
         )
  )
 
  (entmakex 
   (list '(0 . "MTEXT") 
          '(100 . "AcDbEntity")
          '(100 . "AcDbMText")
           (cons 40 (getvar 'textsize))
           (cons 10 pt)
           (cons 1 (foo (vlax-ename->vla-object en) 1000.) ))
    )
  )

 

need some comparison 

 

eg: xxxcad/20xx/winxx
dX ? ? ? ?
dY ? ? ? ?

or something else?


if there's bug, any solution?

thanks

Edited by hanhphuc
Posted (edited)

Not sure but 

dX %<cExpr (1000 * %<cObjProp Object(%<\_ObjId 1889532720>%).Delta

2 x ((

only 1 )

Edited by BIGAL
Posted
On 4/6/2020 at 9:08 AM, BIGAL said:

Not sure but 

dX %<cExpr (1000 * %<cObjProp Object(%<\_ObjId 1889532720>%).Delta

2 x ((

only 1 )

 

 

@BIGAL further discussions, here..

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...