FastFiber

tekst isometrisch plaatsen

Gestart door Gene, ma 11 07 2005, 19:41:39

Vorige topic - Volgende topic

Gene

Wanneer je een isometrische tekening maakt (isometric snap aan) waar tekst inkomt kan ik de tekst niet in het actieve vlak plaatsen. deze wordt gewoon recht geplaatst. Is daar een instelling voor of kan het gewoon niet?

Bedankt

(AutoCAD versie 2006)

HofCAD

Citaat van: GeneWanneer je een isometrische tekening maakt (isometric snap aan) waar tekst inkomt kan ik de tekst niet in het actieve vlak plaatsen. deze wordt gewoon recht geplaatst. Is daar een instelling voor of kan het gewoon niet?

Bedankt

(AutoCAD versie 2006)

Beste Gene,

Als je netjes teksten en bematingen wil tekenen in een isometrische
tekening, dan heb je daar drie tekststijlen voor nodig.
Namelijk tekststijlen die respectievelijk een  oblique angle hebben van
0, 30 en -30 graden (met bijv. de resp. namen ISO, ISO30 en ISO-30).
De tekstrichting van de tekst, wordt bepaald bij de vraag
'Specify rotation angle of text <0>:' van het DTEXT commando (bijv.
0, 30 of 330).
De stand van de letters kan men bepalen, door vooraf de juiste tekststijl
lopend te maken (bij 'Specify start point of text or [Justify/Style]:' optie Style)
of achteraf met het commando PROPERTIES de tekststijl te veranderen.

Dus via vooraf:

Command STYLE => aanmaken van 3 tekststijlen ISO, ISO30 en ISO-30

Command DTEXT
Specify start point of text or [Justify/Style]:S
Enter style name or [?] <Standard>: ISO, ISO30 of ISO-30
Specify start point of text or [Justify/Style]: Startpunt of J voor plaatsing
Specify height <2.5000>: Teksthoogte bijv. 5
Specify rotation angle of text <0>: Tekstrichting bijv. 0, 30 of 330

Dus via achteraf:

Command STYLE => aanmaken van 3 tekststijlen ISO, ISO30 en ISO-30

Command DTEXT
Specify start point of text or [Justify/Style]: Startpunt of J voor plaatsing
Specify height <2.5000>: Teksthoogte bijv. 5
Specify rotation angle of text <0>: Tekstrichting bijv. 0, 30 of 330

Command PROPERTIES => Tekststijl wijzigen in ISO, ISO30 of ISO-30



Groetjes HofCAD CSI
ACADcadabra

Gene

Bedankt HofCAD :P ik ga dit zeker is proberen. Ik weet het niet zeker maar werd de tekst in vorige versies niet automatisch isometrisch geplaatst? Ik gebruik dit niet veel daarom dat ik het niet zeker weet.

HofCAD

Citaat van: GeneBedankt HofCAD :P ik ga dit zeker is proberen. Ik weet het niet zeker maar werd de tekst in vorige versies niet automatisch isometrisch geplaatst? Ik gebruik dit niet veel daarom dat ik het niet zeker weet.

Beste Gene,

Hoe U in AutoCAD op het automatisch isometrisch plaatsen van teksten
komt, weet ik niet!!!
Er is wel een LISP-programma, dat objecten zoals lijnen en cirkels in
rechte projectie getekend omzet naar een isometrische projectie.
Of dit ook geldt voor teksten, dat weet ik ook niet. :oops:
Als dit zou zijn, dan betwijfel ik of de stand van de letters automatisch
aangepast worden.

Groetjes HofCAD CSI

PS Ik zal eens zoeken, of ik dat programma terug kan vinden.

Dit bedoel ik niet
http://www.arqcom.com.mx/isotools.html
want dat is een professionele versie.:roll:

Volgens mij, bedoel ik ISOTOOLS.zip van
http://www.cadresource.com/library/utilities.html
(maar daar krijg ik bij :oops: : Error: bad argument type: stringp nil
Deze versie is volgens mij alleen geschikt voor release 12 en 13, en
moet men na decrypt aanpassen.)

Deze ISOTOOLS.zip bevat wel een goede:
http://www.freecadapps.com/swdetails.php?page=category&value=ACG-VS2000&orgvalue=ACG&review=3717&rowcolor=fce08d

Op http://www.cadresource.com/library/lispdk.html vindt men
ook een paar leuke.
ACADcadabra

Gene

Ben er zo goed als zeker van dat het met de versie 2004 moet kunnen ik ga dat is nazien


Groeten

Gene

Citaat van: GeneBen er zo goed als zeker van dat het met de versie 2004 moet kunnen ik ga dat is nazien


Groeten

nee dus

HofCAD

Citaat van: Gene
Citaat van: GeneBen er zo goed als zeker van dat het met de versie 2004 moet kunnen ik ga dat is nazien

Groeten

nee dus

Beste Gene,

Bij de Expresstool van AutoCAD 2004 zit  TORIENT (Rotate Text),
waarmee je achteraf de tekst hunt verdraaien; natuurlijk is dat ook mogelijk met PROPERTIES.
Misschien dacht je daarom dat het kon!

1)Is het overigens gelukt, met de drie tekststijlen en het roteren van de tekst?
2)Heb je applicatie ISOTOOLS al uitgeprobeert, waarmee je achteraf
een rechthoekig aanzicht met daarin LINE, POINT, CIRCLE, ARC, TRACE, SOLID, TEXT, INSERT, ATTRIBUTE
DEFINITION, POLYLINE, DIMENSION, 3DFACE, MLINE, MTEXT, XLINE,
RAY en REGION kunt omzetten naar een isometrisch vlak.
{Je moet voor mooie teksten, met de letters in de juiste stand, dan nog wel de juiste tekststijlen(ISO, ISO30 en ISO-30) gebruiken.}
Zo ja, wat vond je er van?

Groetjes HofCAD CSI
ACADcadabra

Gene

Beste HofCAD

Ik ben op zoek gegaan naar de lisproutine die je mij had voorgesteld. Deze werkt perfect :) . Om deze reden heb ik de andere oplossingen die je mij had voorgesteld nog niet getest :oops: . ik ben een regelmatige bezoeker hier en heb van Joop iets onthouden. nl: een gelovig volger van "de Sacrale Kunst van Luiheid", zijn leider "Lisp en acoliet "Script".

Bedankt HofCAD

Joop

Gen schrijft:
Citeerik ben een regelmatige bezoeker hier en heb van Joop iets onthouden. nl: een gelovig volger van "de Sacrale Kunst van Luiheid", zijn leider "Lisp en acoliet "Script".

:!:  HALLELISPJA  :!:

Alweer een volger
Een gelovig volger van
"de Sacrale Kunst van Luiheid",
zijn leider "Lisp" en acoliet "Script".

Joop

Hier is een klein en grof programma om tekst isometrisch in de tekening te plaatsen.
Ik heb het uitgetest met vier verschillende text styles (NIET zijnde Iso text).
Oorspronkelijk gemaakt voor een ISO-menu, omdat ik me ergerde aan het constant veranderen van de rotation en obliquing van de tekst en/of wisselen van text style.
Met "grof" bedoel ik recht-toe recht-aan, geprogrammeerd zonder verfijningenen/of commentaar.
Zou ik het programma wel gaan verfijnen dan wordt het misschien wat korter en duidelijker.
Ah wel, misschien doe ik dat nog wel eens.

;;; ;
;;; Placing Isometric text with automatic Justification and rotation ;
;;; ;
;;; Initiated for ISO menu : 12-06-2005 ;
;;; ;
;;; Constructed by :Joop F. Moelee E.D. ;
;;; ;
;;; ;
;;; ;

(defun c:it ()
 (setq Startpoint (getpoint "\nSpecify startpoint of text: "))
 (setq TextDirection (getangle Startpoint "\nSpecify direction: "))
 (setq TextDirection (* 180.0 (/ TextDirection pi)))
 (setq TextDirection (fix (+ 0.5 TextDirection)))
 (setq TextHeight (getreal (strcat "\nSpecify height <" (rtos (getvar "TEXTSIZE")) ">: ")))
 (if (/= TextHeight nil)
   (setvar "TEXTSIZE" TextHeight)
   (setq TextHeight (getvar "TEXTSIZE"))
 ) ;_ end of if
 (setq IsoText (getstring "\nEnter ISO-string: "))
 (setq CrosshairOrientation (getvar "snapisopair"))
;;; if IsoPlain = Left
 (if (and (= CrosshairOrientation 0) (= TextDirection 330))
   (progn
     (setq TextRotation      (* 180.0 (/ 5.75959 pi))
   TextObliquing     5.75959
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 0) (= TextDirection 150))
   (progn
     (setq TextRotation      (* 180.0 (/ 5.75959 pi))
   TextObliquing     5.75959
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 0) (= TextDirection 90))
   (progn
     (setq TextRotation      (* 180.0 (/ 1.5708 pi))
   TextObliquing     0.523599
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 0) (= TextDirection 270))
   (progn
     (setq TextRotation      (* 180.0 (/ 1.5708 pi))
   TextObliquing     0.523599
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
;;; if IsoPlain = Top
 (if (and (= CrosshairOrientation 1) (= TextDirection 330))
   (progn
     (setq TextRotation      (* 180.0 (/ 5.75959 pi))
   TextObliquing     0.523599
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 1) (= TextDirection 150))
   (progn
     (setq TextRotation      (* 180.0 (/ 5.75959 pi))
   TextObliquing     0.523599
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 1) (= TextDirection 30))
   (progn
     (setq TextRotation      (* 180.0 (/ 0.523599 pi))
   TextObliquing     5.75959
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 1) (= TextDirection 210))
   (progn
     (setq TextRotation      (* 180.0 (/ 0.523599 pi))
   TextObliquing     5.75959
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
;;; if IsoPlain = Right
 (if (and (= CrosshairOrientation 2) (= TextDirection 30))
   (progn
     (setq TextRotation      (* 180.0 (/ 0.523599 pi))
   TextObliquing     0.523599
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 2) (= TextDirection 210))
   (progn
     (setq TextRotation      (* 180.0 (/ 0.523599 pi))
   TextObliquing     0.523599
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 2) (= TextDirection 90))
   (progn
     (setq TextRotation      (* 180.0 (/ 1.5708 pi))
   TextObliquing     5.75959
   TextJustification "Left"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (and (= CrosshairOrientation 2) (= TextDirection 270))
   (progn
     (setq TextRotation      (* 180.0 (/ 1.5708 pi))
   TextObliquing     5.75959
   TextJustification "Right"
     ) ;_ end of setq
   ) ;_ end of progn
 ) ;_ end of if
 (if (= TextJustification "Left")
   (command "Text" Startpoint TextHeight TextRotation IsoText "")
   (command "Text" "J" TextJustification Startpoint TextHeight TextRotation IsoText "") ;_ end of command
;_ end of command
 ) ;_ end of if

 (setq NewText (entlast))
 (setq NewTextData (entget NewText))
 (setq NewTextObliquing (cons 51 TextObliquing))
 (if (= TextJustification "Left")
   (setq NewTextData (subst NewTextObliquing (assoc 51 NewTextData) NewTextData))
   (setq NewTextData (subst (cons 51 TextObliquing) (assoc 51 NewTextData) NewTextData))
 ) ;_ end of if
 (entmod NewTextData)
 (entupd NewText)
) ;_ end of defun

;|«Visual LISP© Format Options»
(100 2 40 2 T "end of " 80 9 0 0 2 T T nil T)
;*** DO NOT add text below the comment! ***|;



Een gelovig volger van
"de Sacrale Kunst van Luiheid",
zijn leider "Lisp" en acoliet "Script".

Joop

Toch nog even een kleine toelichting voor het gebruik.
Er wordt gevraagd voor het startpunt van de text en daarna voor de richting.
De richting bepaalt de justification van de tekst. Dus Left of Right.
dan wordt gevraagd voor de teksthoogte. Deze blijft bewaard (net als bij het text commando).
De rotatie en de helling van de tekst wordt nu automatisch bepaald aan de hand van de orientatie van de kruisdraden en van de gekozen richting.
Bij de linkse en rechtse kruisdraden "staat" de tekst en bij de top "ligt" de tekst.

Veel plezier ermee.

(Luiheid is en blijft een sacrale kunst)
Een gelovig volger van
"de Sacrale Kunst van Luiheid",
zijn leider "Lisp" en acoliet "Script".