Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  Lisp
  Z-Koordinate von Text übernehmen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Z-Koordinate von Text übernehmen (3014 mal gelesen)
Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 19. Jul. 2006 22:38    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,ich suche,ein Programm mit dem man einen dummen Text als Z-Koordinatenwert übergeben kann und somit 3D Koordinaten vom Fußpunkt des Textes hat, wer kann helfen-
habe hier aus der HB-LSp etwas rausgezogen was eventuell gehen müßte, bekomme es aber nicht zum laufen
wer kann sich das mal ansehen, vermute das beide Programme irgenwie zusammen gehören und aufgerufen werden müssen!
am besten der verfasser würde sich melden, die lsp Hb ist große klasse
und rechnet mit dummen texten,
die lsp mit der man textfußpunkte auslesen kann ist nicht das richtige da Z=0 ausgelesen wird,

;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
; Funktion fragt vom Benutzer ein Textelement als Representant für eine
; Koordinate und Höhe ab. Bei Abbruch durch den Benutzer brincht die
; Funktion über HB_Abort die Bearbeitung ab
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

(defun C:HB_F_Getpoint (msg / p_tmp z_tmp enx_tmp ent_tmp)
    (if (not (setq enx_tmp (nentsel msg)))
  (HB_F_Abort "\nNichts ausgewählt")
  (progn (setq ent_tmp (entget (car enx_tmp)))
(if (member (cdr (assoc 0 ent_tmp))
    '("TEXT" "ATTRIB" "MTEXT" "DTEXT" "RTEXT")
    ) ;_ Ende von member
      (setq p_tmp (cdr (assoc 10 ent_tmp))
    z_tmp (distof (cdr (assoc 1 ent_tmp)) 2)
      ) ;_ Ende von setq
      (HB_F_Abort
  "\nGewähltes Element enthält keinen Text"
      ) ;_ Ende von HB_F_Abort
) ;_ Ende von if
  ) ;_ Ende von progn
    ) ;_ Ende von if
 
    (setq HB_Container (append HB_Container (list (car enx_tmp))))
    (redraw (car enx_tmp) 3)
    (princ (rtos z_tmp 2 hb_genau))
 
    (HB_F_Koord p_tmp z_tmp)
) ;defun HB_F_Getpoint

;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
; Funktion liefert eine 3D-Koordinate mit den X/Y-Werten aus P und dem
; Z-Wert aus Z zurück. Der Z-Wert wird entsprechend den Einstellungen von
; HB_Schwellwert/HB_ZWert geprüft und ggf. verändert
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

(defun c:HB_F_Koord (p z / tmp)
    (append (reverse (cdr (reverse p)))
    (if (>= z HB_Schwellwert)
  (list (+ z hb_zwert))
  (list z)
    ) ;_ Ende von if
    ) ;_ Ende von append
) ;defun HB_F_Koord


wäre für hinweise oder hilfe dankbar

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

tunnelbauer
Ehrenmitglied V.I.P. h.c.
Bauingenieur



Sehen Sie sich das Profil von tunnelbauer an!   Senden Sie eine Private Message an tunnelbauer  Schreiben Sie einen Gästebucheintrag für tunnelbauer

Beiträge: 7085
Registriert: 13.01.2004

ich hab eh keine Probleme damit...

erstellt am: 19. Jul. 2006 22:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Kannst du bitte mal dazu Stellung nehmen ?
http://ww3.cad.de/foren/ubb/Forum54/HTML/014369.shtml#000003

Oder glaubst du es macht Spaß ignoriert zu werden ?
(Bei meinem Tool erhält man Punkte welche einen Z-Wert besitzen...)

Oder du erklärst mal was das Ergebnis sein soll; 3D Koordinaten vom Fußpunkt des Textes hat - in welcher Art und Weise ? Punkte ? Texte ? Linien ? Oder was ?

------------------
Grüsse

Thomas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

erstellt am: 20. Jul. 2006 07:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo Bauvermesser,

das sieht mir mal schwer nach Doppel-Posting aus :-(

Zitat:
wer kann sich das mal ansehen, vermute das beide Programme irgenwie zusammen gehören und aufgerufen werden müssen!

Richtig! Die erste Funktion "C:HB_F_Getpoint" ruft in ihrer vorletzten Zeile die zweite Funktion "c:HB_F_Koord" auf - mit den von Funktion 2 notwendigen Parametern.
Zitat:
die lsp mit der man textfußpunkte auslesen kann ist nicht das richtige da Z=0 ausgelesen wird,
Da wird sich der Autor aber freuen. Die Funktion ist sicherlich richtig, nur nicht für Deinen Zweck. Hast Du schon mal überlegt, warum Z=0 ausgelesen wird? Habe das nicht geprüft, aber vielleicht ist Z ja gleich Null? Hast Du Dich mit "HB_F_Abort" befasst?
Frederik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 20. Jul. 2006 21:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo, habe diese lsp probiert danke für den hinweis aber wir reden hier am problem vorbei oder ich kann es nicht richtig verständlich machen-
also: ein einfacher dummer text (bsp.: 325.250) steht als höhenbeschriftung im file(kein block eben nur ein dummer text), der text hat einen fußpunkt auf den man eine punkt setzten könnte, nun soll der text (325.250) auf die z-koordinate des punktes umgesetzt werden;
über eigenschaften kann man das mal für 2,3punkte machen indem man den text kopiert und als Z-wert einfügt, aber bei größeren mengen ist das 
mühsam, ich hoffe ich habe mich jetzt besser ausgedrückt, das auslesen der textfußkoordinaten mit dem logischen z-wert 0 nützt also nichts, es müßte über das kopieren des textes und einfügen abgearbeitet werden.

zum anderen beitrag
(das sieht mir mal schwer nach Doppel-Posting aus :-()
richtig, aber wie man es macht ist es verkehrt, habe schon mehrere
antworten in anderen beiträgen bekommen mit dem wortlaut 'du bist hier im falschen forum '; nachdem die probleme jetzt meiner meinung nach was für experten sind, habe ich es eben hier reingestellt, auch wieder falsch oder?
zum dritten:
(Da wird sich der Autor aber freuen. Die Funktion ist sicherlich richtig, nur nicht für Deinen Zweck. Hast Du schon mal überlegt, warum Z=0 ausgelesen wird? Habe das nicht geprüft, aber vielleicht ist Z ja gleich Null?)
richtig, darum ist es ja für meine zwecke nicht geignet, für andere sicherlich eine feine sache!
 
zum vierten:
(Hast Du Dich mit "HB_F_Abort" befasst?)
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
; Abbruchfunktion für ein geordnetes Beenden des Programmes. Über A_MSG
; kann durch die Routine, aus der der Abbruch veranlaßt wird, eine Text-
; meldung übergeben werden
;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

(defun HB_F_Abort (a_msg)
    (if a_msg
  (princ a_msg)
    ) ;_ Ende von if
    (print)
    (quit)
) ;_ Ende von defun

komme mit solchen speziellen lsp als leihe nicht klar, man muss doch sicherlich hier drei lsp verbinden (A_msg)in einem aufruf, davon gabe ich keine ahnung und bitte um hilfe

allen die es sich leisten können einen schönen urlaub und den anderen schöne zeit auf dem balkon

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


Sehen Sie sich das Profil von joern bosse an!   Senden Sie eine Private Message an joern bosse  Schreiben Sie einen Gästebucheintrag für joern bosse

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 21. Jul. 2006 07:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo Bauvermesser,

in dem LISP vom Tunnelbauer habe ich zwei Zeilen geändert, so daß keine Punkte eingefügt werden, sondern der z-Wert der Texte an den Textwert angepasst wird.

Code:

(defun C:text2z ()
  (if(setq as(ssget "_X" '((0 . "TEXT"))))
    (progn
      (repeat (sslength as)
        (setq wert (atof(cdr (assoc 1 (entget(ssname as 0))))))
(entmod (subst (cons 10 (append(reverse(cdr (reverse(cdr(assoc 10 (entget(ssname as 0)))))))(list wert)))
      (assoc 10 (entget (ssname as 0)))(entget (ssname as 0))))
        (setq as (ssdel(ssname as 0)as))
      )
    )
  )
)

------------------
viele Grüße

Jörn

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

erstellt am: 21. Jul. 2006 07:55    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo Bauvermesser,

was bitte ist "Urlaub"? :-) Zu einer Deiner obigen Fragen:

Zitat:
(defun HB_F_Abort (a_msg)
    (if a_msg
  (princ a_msg)
    ) ;_ Ende von if
    (print)
    (quit)
) ;_ Ende von defun

komme mit solchen speziellen lsp als leihe nicht klar, man muss doch sicherlich hier drei lsp verbinden (A_msg)in einem aufruf, davon gabe ich keine ahnung und bitte um hilfe



"a_msg" ist eine Variable, die Du dem Funktionsaufruf mitgeben mußt, sonst kommt eine Fehlermeldung - "zu wenig Argumente" oder so ähnlich. Also das lisp laden, Aufruf aus der Acad-Befehlszeile so:
Code:
(HB_F_Abort "Dies ist eine Nachricht")
Probier´s mal aus. Also weniger kompliziert, also Du denkst! Keine drei lsp, nur eine.
Bei der Sache mit dem Wochenende stimme ich Dir zu.
Frederik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 25. Jul. 2006 23:54    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo, Jörn

große klasse deine lsp, genau das was ich suche;

warum im forum schweifen , sie das gute liegt so nah!

danke, könnte man da noch eine auswahlabfrage einbauen
damit nicht alle texte auf dem layer erfasst werden,
danke an alle die mir geholfen haben

übrigens 'im urlaub' ist ein zustand bei dem man körperlich alles hintersich läst, aber in gedanken schon wieder am schreibtisch sitzt

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

mkl-cad
Mitglied
Technischer Zeichner


Sehen Sie sich das Profil von mkl-cad an!   Senden Sie eine Private Message an mkl-cad  Schreiben Sie einen Gästebucheintrag für mkl-cad

Beiträge: 378
Registriert: 23.07.2003

ACAD 2002
Express Tools 1-9
Architektural Desktop
Windows XP
Server Windows 2003
3 GHz Rechner
1 GB RAM
80 GB Festplatte
ATI FireGL V3100
2 17" Flachbildschirme

erstellt am: 26. Jul. 2006 13:53    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo bauvermesser

(defun C:text2z ()
  (if(setq as(ssget '((0 . "TEXT"))))
    (progn
      (repeat (sslength as)
        (setq wert (atof(cdr (assoc 1 (entget(ssname as 0))))))
(entmod (subst (cons 10 (append(reverse(cdr (reverse(cdr(assoc 10 (entget(ssname as 0)))))))(list wert)))
      (assoc 10 (entget (ssname as 0)))(entget (ssname as 0))))
        (setq as (ssdel(ssname as 0)as))
      )
    )
  )
)


So OK?

------------------
  Martin 

Viele Grüße aus dem schönen Münsterland!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 06. Aug. 2006 21:12    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

noch eine anfrage zu dieser lsp,
kann man mit einem anhang an diese lsp einen befehl
ergänzen mit dem man den z-wert des texteinfügepunktes (welcher jetzt praktisch in 3d vorliegt) auf einen punkt übergibt;
sicherlich stelle ich mir das einfacher vor wie es ist, da ja der Z-wert des textpunktes kopiert und auf einen noch zu wählenden punkt kopiert  werden muss, oder kann man generell den Z-Wert eines punktes aufnehmen und diesen an eine frei wählbaren punkt übergeben
-wer vorschläge hat bitte melden

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Paulchen
Mitglied
Bauing./SW-Entwickler


Sehen Sie sich das Profil von Paulchen an!   Senden Sie eine Private Message an Paulchen  Schreiben Sie einen Gästebucheintrag für Paulchen

Beiträge: 1227
Registriert: 19.08.2004

erstellt am: 07. Aug. 2006 07:58    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo Bauvermesser,
zu Deiner (ersten?) Frage:
Zitat:
kann man [wer ist "man"?] mit einem anhang an diese lsp einen befehl
ergänzen mit dem man den z-wert des texteinfügepunktes (welcher jetzt praktisch in 3d vorliegt) auf einen punkt übergibt
Ich denke schon... Zur zweiten:
Zitat:
kann man generell den Z-Wert eines punktes aufnehmen und diesen an eine frei wählbaren punkt übergeben
Ja - entspricht Frage 1, nur anders formuliert.
Frederik

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 07. Aug. 2006 21:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

HALLO PAULCHEN,
danke für deine ausführliche Hilfe, wenn jemand noch mehr beitragen möchte, ich bitte darum, vielleicht kennt wer eine vorhandene lsp
die sich dafür eignet
Gruß Bauvermesser

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 07. Aug. 2006 22:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Rückfrage:
Du willst alle Texte "scannen", von denen , welche als numerischer Wert interpretierbar sind, den Einfügepunkt hinsichtlich X und y - Koordinate auswerten, den Textwert als Z-Koordinate interpretieren und an Stelle dieses Textes einen Punkt (_point) mit eben diesen Koordinaten setzen ?

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 08. Aug. 2006 23:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
in autocad sprache muss das wohl so formuliert werden, ich habe eben keine ahnung,nur

"und an Stelle dieses Textes einen Punkt"

fasse ich so auf das der text dann verschwindet?; nein

"und an die Stelle die Textfußpunktes ein Punkt eingefügt wird"
wäre besser, vielleicht hast du das auch so gemeint

-so nun wäre das auch in fachsprache ausgedrückt, wieder was gelernt

danke und gruß
bauvermesser

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 09. Aug. 2006 21:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

was auf die ganz schnelle:

(defun C:text2z (/ AS OBJ DATA)
  (if(setq as(ssget '((0 . "TEXT"))))
    (progn
      (repeat (sslength as)
        (setq OBJ (ssname as 0))
        (setq DATA (entget OBJ))
        (if(and(setq Z(distof (cdr (assoc 1 DATA))2))
              (setq X(car (cdr(assoc 10 DATA))))
              (setq Y(cadr(cdr(assoc 10 DATA))))
          )                         
          (command "_point" (list X Y Z))
        )               
        (setq as (ssdel OBJ as))
      )
    )
  )
)

HTH

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 11. Aug. 2006 09:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,Thomas
habe lsp ausprobiert aber um es fachmannisch auszudrücken
der Textwert wird nicht als Z-Koordinate interpretiert,der punkt mit den richtigen koordinaten wird gesetz:
was passiert wenn ich beide lsp zusammensetze wie hier, kann sich da was verhaken oder geht das so nicht?
(defun C:z-txt ()
(if(setq as(ssget '((0 . "TEXT"))))  ; mit auswahl des textes
    (progn
      (repeat (sslength as)
        (setq wert (atof(cdr (assoc 1 (entget(ssname as 0))))))
(entmod (subst (cons 10 (append(reverse(cdr (reverse(cdr(assoc 10 entget(ssname as 0)))))))(list wert)))
      (assoc 10 (entget (ssname as 0)))(entget (ssname as 0))))
        (setq as (ssdel(ssname as 0)as))
(defun text2z (/ AS OBJ DATA)
  (if(setq as(ssget '((0 . "TEXT"))))
    (progn
      (repeat (sslength as)
        (setq OBJ (ssname as 0))
        (setq DATA (entget OBJ))
        (if(and(setq Z(distof (cdr (assoc 1 DATA))2))
              (setq X(car (cdr(assoc 10 DATA))))
              (setq Y(cadr(cdr(assoc 10 DATA))))
          )                       
          (command "_point" (list X Y Z))
        )             
        (setq as (ssdel OBJ as))
      )
    )
  )
)

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 11. Aug. 2006 09:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

was heißt, Text wird nicht als Z-Koordinate interpretiert ??
guck dir mal

(distof "Blabla" 2) -> nil
(distof "7.85"  2)  -> 7.85
(distof "1e2"  2)  -> 100
und
(atof "Blabla") -> 0.0
(atof "7.85")  -> 7.85
(atof "1e2")    -> 100

an.

Wenn ich das Prog auf einen Text mit x=12 Y=30  und Inhalt "45" anwende, wird bei mir ein Punkt (12,30,45) generiert.


------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 15. Aug. 2006 21:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


TEXT-KOO.zip

 
Hallo Thomas,
bin mir nicht ganz sicher ob wir von gleichen Gedanken zum Problem ausgehen, darum anbei mein dxf um es dir besser darzustellen, wenn du es dir bitte mal anschauen könntes!
Ich hoffe ich habe da nichts falsches formuliert zum problem, aber es geht bei mir nicht
bis dann
Bauvermesser

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 15. Aug. 2006 21:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Sorry, ich weiß nicht , was du meinst...

ich rufe das Prog auf, selektiere die auszuwertenden Texte und es wird am Einfügepunkt jeden Textes ein Punkt mit dem als Z-Wert interpretierten Text gesetzt ( BKS auf WELT, sonst muß noch (trans ..) aufgerufen werden...)

Das klappt auch in deiner DXF! ..

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 19. Aug. 2006 18:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo Thomas,
ich muss passen, bringe die lsp nicht vollständig zum laufen;
frage: kann es sein das die lsp einen befehl vorraus setzt der erst
vorgegeben werden muss, mir ging es zuletzt mit dem befehl "präfix"
so; habe auch keine E-Tools geladen!
wäre schön wenn ich es doch noch anwenden könnte, wer hat eine idee

gruß bauvermesser

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 20. Aug. 2006 19:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich


entweder guck dir das lsp im integrierten Debugger des VLIDE an ode probiers mal Zeilenweise durch, um zu sehen, wo es hakt...
z.B.so

(setq as(ssget '((0 . "TEXT"))))

(setq OBJ (ssname as 0))

(setq DATA (entget OBJ))

(setq Z(distof (cdr (assoc 1 DATA))2))

(setq X(car (cdr(assoc 10 DATA))))

(setq Y(cadr(cdr(assoc 10 DATA))))

(command "_point" (list X Y Z))

Expresstools ofer andere Sachen brauchst du jeden falls nich intalliert zu haben

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 31. Aug. 2006 10:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

hallo thomas,
habe versucht den fehler einzukreisen mit auswahl einzelner befehle

folgender fehler wird angezeigt:
Befehl: (setq DATA (entget OBJ))
; Fehler: Fehlerhafter Argumenttyp: lentityp nil

------------------
Gruß vom Bauvermesser;
übrigens-
ein Vermesser kennt seine Grenzen!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CADmium
Moderator
Maschinenbaukonstrukteur




Sehen Sie sich das Profil von CADmium an!   Senden Sie eine Private Message an CADmium  Schreiben Sie einen Gästebucheintrag für CADmium

Beiträge: 13508
Registriert: 30.11.2003

.

erstellt am: 31. Aug. 2006 10:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

na dann hast du in OBJ kein Objekt gespeichert mit ssname weil dein Auswahlsatz vielleicht keine Texte enthielt ??

------------------
  - Thomas -
"Bei 99% aller Probleme ist die umfassende Beschreibung des Problems bereits mehr als die Hälfte der Lösung desselben."

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 05. Sep. 2006 22:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

fehler gefunden!
die lsp reagiert allergisch auf OSMODE Einstellung, wenn ich OSMODE auf 0 setze läuft die lsp, sobald ich aber vor programmstart ( was eigentlich richtig wäre) OSMODE 64 setze geht es nicht auch wenn ich es vor punktwahl auf nur 'PUNKT' setze,
habe den befehle
(setvar "OSMODE" 0) eingefügt, ich müsste jetzt nur noch wissen um unnötige stellerei zu vermeiden
wo ich
(setvar "osmode" fang_old) am schluss einfügen muss,einfach vor der ersten klammer?
gruß vom bauvermesser

------------------
Gruß vom Bauvermesser;

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

joern bosse
Ehrenmitglied
Dipl.-Ing. Vermessung


Sehen Sie sich das Profil von joern bosse an!   Senden Sie eine Private Message an joern bosse  Schreiben Sie einen Gästebucheintrag für joern bosse

Beiträge: 1734
Registriert: 11.10.2004

Window 10
ACAD 2021
CIVIL 2021
BricsCAD V14-V22
Intel(R) Core(TM)i5-8250U CPU @ 1.60GHz 1.80 GHz
16.0GB RAM
NVIDIA GeForce GTX 1050<P>

erstellt am: 06. Sep. 2006 07:28    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Bauvermesser 10 Unities + Antwort hilfreich

Hallo Bauvermesser,
ohne Errorhandler könnte es so ungefähr aussehen:
Code:

(defun C:Testfunktion ( / fang_old)
  (setq fang_old (getvar "OSMODE"))
  (setvar "OSMODE" 64)
  ....Programmablauf Beginn

  ....Programmablauf Ende 
  (setvar "OSMODE" fang_old)
);;;end defun


------------------
viele Grüße

Jörn

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Bauvermesser
Mitglied
Vermesser


Sehen Sie sich das Profil von Bauvermesser an!   Senden Sie eine Private Message an Bauvermesser  Schreiben Sie einen Gästebucheintrag für Bauvermesser

Beiträge: 460
Registriert: 18.03.2006

AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner,

erstellt am: 17. Sep. 2006 07:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
lsp läuft jetzt ohne fehler,
danke an alle mitkämpfer,
beende hiermit diesen beitrag
gruß bauvermesser

------------------
Gruß vom Bauvermesser;

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz