yoin

jo-king

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?
CAD/BIM consultant
Autodesk Reseller
Revit Certified professional

julien

#1
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

hulpje

Julien,

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

Richard
HELAAS BESTAAT CADToppers.com niet meer
ACP-er (AutoDesk Certified Professional)

jo-king

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? :)
CAD/BIM consultant
Autodesk Reseller
Revit Certified professional

julien

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.

julien

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?

jo-king

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" ?
CAD/BIM consultant
Autodesk Reseller
Revit Certified professional

FastFiber