CADsite forum

AutoCAD => Autolisp => Topic gestart door: Rudy op zo 03 06 2012, 13:14:06

Titel: Aanpassen bestaande lisp (OPGELOST)
Bericht door: Rudy op zo 03 06 2012, 13:14:06
In bijlage een lisp om de lengte van een polyline weer te geven.
Wie kan deze lisp aanpassen zodat de waarde naast de polyline in te tekening geplaatst wordt.
Titel: Re: Aanpassen bestaande lisp
Bericht door: HofCAD op ma 04 06 2012, 11:43:03
Beste Rudy,

Echte tekst of een field?
(defun c:LEN ( / doc spc ent obj pt )
  (vl-load-com)
  (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))
        spc (vlax-get doc (if (= 1 (getvar 'CVPORT)) 'PaperSpace 'ModelSpace)))

  (while (setq ent (car (entsel "\nSelect Object <Exit> : ")))

    (if (vlax-property-available-p (setq obj (vlax-ename->vla-object ent)) 'Length)

      (if (setq pt (getpoint "\nSpecify Point for Field: "))
        (vla-put-ScaleFactor
          (vla-AddText spc
            (strcat "%<\\AcObjProp Object(%<\\_ObjId " (itoa (vla-get-ObjectID obj)) ">%).Length \\f \"%lu2%pr2\">%")
            (vlax-3D-point (trans pt 1 0))
            (* (getvar "DIMSCALE") 2.5)
          )
          0.8
        )
      )
     
      (princ "\n** Object Must have an Length Property **")
    )
  )
  (princ)
)


Met vriendelijke groet, HofCAD CSI.

PS De field teksthoogte is afhankelijk van de AutoCAD variabele Dimscale.
Titel: Re: Aanpassen bestaande lisp
Bericht door: Rudy op ma 04 06 2012, 12:41:30
Citaat van: HofCAD op ma 04 06 2012, 11:43:03

Echte tekst of een field?


Beste HofCAD,

Dank u :vreegoe: :vreegoe:
Gewone tekst was voldoende geweest, het is de bedoeling dat ik dan nog een leader toevoeg die verwijst naar de lijn.
In ieder geval zo zal het ook lukken.

Met vriendelijke groet,

Rudy
Titel: Re: Aanpassen bestaande lisp
Bericht door: HofCAD op ma 04 06 2012, 12:59:57
Beste Rudy,

Het kan ook met: AdLen2.lsp

Met vriendelijke groet, HofCAD CSI.
Titel: Re: Aanpassen bestaande lisp
Bericht door: Rudy op ma 04 06 2012, 13:37:04
Beste HofCAD,

Gewoon  :vreegoe: :vreegoe: :vreegoe: :vreegoe: :vreegoe: :vreegoe: :vreegoe:
Dit is meer dan ik had verwacht :D :D :D
Dank u !

Groetjes,

Rudy