CADsite forum

AutoCAD => AutoCAD probleem => Topic gestart door: jo-king op ma 10 03 2008, 16:22:06

Titel: attribute omkaderd
Bericht door: jo-king op ma 10 03 2008, 16:22:06
om even verder te gaan op dit topic
http://www.cadsite.be/smf/index.php/topic,1262.0.html
van twee jaar geleden...


is er een mogelijkheid om een kadertje rond een attribute te krijgen?


ik ben bezig met "standaard" blockjes, waaronder een deurtje, dat bomvol dynamic-interfaces & attributes zit; (een block dat zowat op alle manieren aan te passen is :)


maar ik wil een kadertje rond de attribute "deurnummer"
(liefst zelf afgeronde rectangle)
waarbij pas na het intypen van de attribute-value het kadertje gegenereerd wordt rond de text.
(zoals bij dimensions: "draw frame around text" zoek ik dit voor attributes...)

iemand?
Titel: Re: attribute omkaderd
Bericht door: julien op wo 12 03 2008, 10:46:16
Dit zou ik ook wel willen weten, maar ik vrees dat er hiervoor een lisp nodig zal zijn.
Voorlopig heb ik een rectangle met round getekend en deze een stretch functie gegeven.
Als de kader wat te groot of te klein is kan je die nu heel eenvoudig vergroten of verkleinen.
Voorbeeld in bijlage
Titel: Re: attribute omkaderd
Bericht door: hulpje op wo 12 03 2008, 11:47:31
Julien,

Je hebt niet alle blocken uit de tekening gehaald.
Ik zou je tekening even purge en dan weer opnieuw plaatsen!

Richard
Titel: Re: attribute omkaderd
Bericht door: jo-king op wo 12 03 2008, 12:20:53
Citaat van: julien op wo 12 03 2008, 10:46:16
Dit zou ik ook wel willen weten, maar ik vrees dat er hiervoor een lisp nodig zal zijn.
Voorlopig heb ik een rectangle met round getekend en deze een stretch functie gegeven.
Als de kader wat te groot of te klein is kan je die nu heel eenvoudig vergroten of verkleinen.
Voorbeeld in bijlage

zoals hulpje zegt, purge je tekening mss best even ;)



de strech dynamic commando in de block steken is idd een optie, maar dat is eerder een "handeling meer", dan minder.
een zonde aan de kunst van de luiheid. Joop? :)
Titel: Re: attribute omkaderd
Bericht door: julien op wo 12 03 2008, 13:22:06
Inderdaad niet ideaal, maar aangezien ik normaal gezien niet aan de kader moet komen omdat deze een juiste breedte heeft maakt het voor mij niet zo veel uit.
Titel: Re: attribute omkaderd
Bericht door: julien op di 22 04 2008, 14:50:59
Op lisp.nl kwam ik dit tegen:
(defun c:txtbox ( / textent ang sinrot cosrot t1 t2 p0 p1 p2 p3 p4)
  (setq textent (entget (car (entsel "\nSelecteer tekst: "))))
  (setq p0 (cdr (assoc 10 textent))
        ang (cdr (assoc 50 textent))
        sinrot (sin ang)
        cosrot (cos ang)
        t1 (car (textbox textent))  ;; JB_070598 textbox is een intern AutoCAD-commando
        t2 (cadr (textbox textent))
        p1 (list (+ (car p0)
                    (- (* (car t1) cosrot) (* (cadr t1) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t1) sinrot) (* (cadr t1) cosrot))))
        p2 (list (+ (car p0)
                    (- (* (car t2) cosrot) (* (cadr t1) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t2) sinrot) (* (cadr t1) cosrot))))
        p3 (list (+ (car p0)
                    (- (* (car t2) cosrot) (* (cadr t2) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t2) sinrot) (* (cadr t2) cosrot))))
        p4 (list (+ (car p0)
                    (- (* (car t1) cosrot) (* (cadr t2) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t1) sinrot) (* (cadr t2) cosrot))))
  ) ; end setq
  (command "pline" p1 p2 p3 p4 "c")
  (princ)
) ; end defun
CiteerTxtBox: tekent een rechthoek (polyline) om een text.
Misschien dat je dit kan ombouwen voor een attribute?
Titel: Re: attribute omkaderd
Bericht door: jo-king op di 29 04 2008, 13:46:44
Citaat van: julien op di 22 04 2008, 14:50:59
Op lisp.nl kwam ik dit tegen:
(defun c:txtbox ( / textent ang sinrot cosrot t1 t2 p0 p1 p2 p3 p4)
  (setq textent (entget (car (entsel "\nSelecteer tekst: "))))
  (setq p0 (cdr (assoc 10 textent))
        ang (cdr (assoc 50 textent))
        sinrot (sin ang)
        cosrot (cos ang)
        t1 (car (textbox textent))  ;; JB_070598 textbox is een intern AutoCAD-commando
        t2 (cadr (textbox textent))
        p1 (list (+ (car p0)
                    (- (* (car t1) cosrot) (* (cadr t1) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t1) sinrot) (* (cadr t1) cosrot))))
        p2 (list (+ (car p0)
                    (- (* (car t2) cosrot) (* (cadr t1) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t2) sinrot) (* (cadr t1) cosrot))))
        p3 (list (+ (car p0)
                    (- (* (car t2) cosrot) (* (cadr t2) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t2) sinrot) (* (cadr t2) cosrot))))
        p4 (list (+ (car p0)
                    (- (* (car t1) cosrot) (* (cadr t2) sinrot)))
                 (+ (cadr p0)
                    (+ (* (car t1) sinrot) (* (cadr t2) cosrot))))
  ) ; end setq
  (command "pline" p1 p2 p3 p4 "c")
  (princ)
) ; end defun
CiteerTxtBox: tekent een rechthoek (polyline) om een text.
Misschien dat je dit kan ombouwen voor een attribute?


misschien analyseer ik de lisp fout (heb hem nog niet getest) maar doet dit niet identiek hetzelfde als het express commando "TCIRCLE" ?