Pagina 1 van 1

Meerdere text converten naar aparte Mtexten

Geplaatst: di 14 apr 2015, 08:50
door tomhofstee
Hallo,

Weer eens een praktische vraag waar ik tegen aan loop. Voor een oud plan dat weer gaat lopen heb ik al eens een hoogteplan gemaakt met destijds losse text hoogtes. Deze hoogtes wil ik allemaal omzetten naar Mtext (voor de background mask). Met het commando TXT2MTXT gooit hij alle geselecteerde hoogtes in 1 Mtext... Er staat 461 hoogtes in het bestand en ik heb geen zin om ze allemaal stuk voor stuk aan te klikken om eerlijk te zijn! :)

Ik heb wel wat gegoogled en een LSP gevonden die zou moeten werken maar ik heb hier geen verstand van. Daarnaast stond deze LSP op een forum mbt Acad 2010. Ik werk met Civil 2015 dus misschien is deze LSP inmiddels al wel standaard opgenomen in Acad?

Iemand een idee?

Re: Meerdere text converten naar aparte Mtexten

Geplaatst: di 14 apr 2015, 14:08
door Storm
Ik denk dat dat niet buiten een lisp om kan.
Liggend aan hoe je de lisp gevonden hebt is het waarschijnlijk een stukje code.

Deze moet je in een .lsp (of ander type, maar dat staat er dan hopelijk bij) bestand opslaan. Gewoon de code plakken in het windows kladblok of vergelijkbare teksteditor. Vervolgens het bestand opslaan als een .lsp bestand (let wel dat het met kladblok niet .lsp.txt wordt)

Het commando wat je dan moet uitvoeren staat meestal achter "defun c:COMMANDO"

Een andere optie is wellicht het TEXTMASK commando, het is een iets rommeliger commando (maakt groepen van je texten), maar doet in principe hetzelfde en laat je teksten heel :). WEllicht een passend alternatief.
De borders en de ruimte van de textmask zijn overigens aan te passen, maar vraag me niet hoe dat precies gaat :P.

Re: Meerdere text converten naar aparte Mtexten

Geplaatst: do 27 aug 2015, 16:50
door martingonzalo
Beste Tom,
met deze lisp zou het kunnen werken:
Je maakt een nieuwe lisp file (een nieuw txt met als extensie lsp) aan "T2M.lsp" en laad deze in autocad/civil
commando wordt dan: t2m
======================================================================
maak een kopie van de code hieronder en zet in een lisp bestand
======================================================================
(princ "\nType T2M to start")
(defun c:t2m ()
(setq Tset (ssget '((0 . "*TEXT")))) ;filter text in selection set
(setq Setlen (sslength Tset) ;setq number of entties in selection set, setq count(er) to 0
Count 0
) ;setq
(repeat SetLen ;repeat setlen times
(setq Ename (ssname Tset Count)) ;setq ename to be the "0..." entity in selection set Tset
(command "_txt2mtxt" Ename "")
(setq Count (+ 1 Count)) ; add 1 to Count(er)
) ; Repeat
(princ)
)