| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Zahl in Z-Koordinate wandeln (2255 mal gelesen)
|
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner, keine Adminrecht
|
erstellt am: 11. Jul. 2006 23:10 <-- editieren / zitieren --> Unities abgeben:
hallo, kann mir jemand einen tipp geben ob und wo es vielleicht ein programm oder befehl gibt mit dem ich einen dummen text wie Höhenbeschriftung (322.025) im Fußpunkt als Z-Koordinate umwandeln kann, ich wende die LSP Hb Höhenberechnung an (ist übrigens große klasse)und brauche die berechneten punkte mit höhe beim auslesen in einem anderen programm - muss die Z-Koordinatenwerte aber immer manuell in eine textedatei schreiben sicher kann mir jemand weiterhelfen ------------------ Gruß vom Bauvermesser; übrigens- ein Vermesser kennt seine Grenzen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TheWalrus Mitglied Ingenieur
Beiträge: 436 Registriert: 28.02.2006 ThinkPad P51 mit 32GB und 2x32"UHD an Quadro M1200; HP Z1; Pixelstation mit 128GB HS, Doppel-Xeon mit je 6 Kernen für Photogrammetrie; InfraStructure Design Suite Premium 2020 und Vorgänger
|
erstellt am: 12. Jul. 2006 06:54 <-- editieren / zitieren --> Unities abgeben: Nur für Bauvermesser
|
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner, keine Adminrecht
|
erstellt am: 19. Jul. 2006 09:30 <-- editieren / zitieren --> Unities abgeben:
Hallo,danke füt die Antwort ist aber nicht das was ich suche, gibt es denn kein 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 erwähnten 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! ;-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ; 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 ------------------ 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
Beiträge: 7085 Registriert: 13.01.2004 Sie nannten ihn google.
|
erstellt am: 19. Jul. 2006 09:41 <-- editieren / zitieren --> Unities abgeben: Nur für Bauvermesser
Also ich hab' ein Tool in Verwendung, welches 'nen Punkt auf den Fußpunkt des (D)Textes setzt: 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)))))) (command "_Point" (append(reverse(cdr (reverse(cdr(assoc 10 (entget(ssname as 0)))))))(list wert))) (setq as (ssdel(ssname as 0)as)) ) ) ) )
Fragt mich bitte nicht woher ich es habe - ich weis es echt nicht mehr - habe aber CADmium unter Verdacht... (sollte es wer anderer gewesen - bitte melden (und mir auf die Finger klopfen )) ------------------ Grüsse Thomas Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
TheWalrus Mitglied Ingenieur
Beiträge: 436 Registriert: 28.02.2006 ThinkPad P51 mit 32GB und 2x32"UHD an Quadro M1200; HP Z1; Pixelstation mit 128GB HS, Doppel-Xeon mit je 6 Kernen für Photogrammetrie; InfraStructure Design Suite Premium 2020 und Vorgänger
|
erstellt am: 19. Jul. 2006 18:54 <-- editieren / zitieren --> Unities abgeben: Nur für Bauvermesser
Hallo Bauvermesser, Anlass für KORDXF war die Tatsache, dass die benötigten geometrischen Informationen aus einer übernommenen Zeichnung in den unterschiedlichsten Ausprägungen enthalten sind. U.a. die z-Koordinate als Text und die Lage als Referenzpunkt dieses Textes. Es kann aber auch der 3D-Mittelpunkt eines Kreises oder der 3D-Einfügepunkt eines Blockes oder der 2D-Einfügepunkt eines Blockes und ein Attribut als z oder die 3d-Stützpunkte einer Polylinie sein ... Deshalb gibt das Programm alle verfügbaren Informationen in einer tabellarischen Form aus, so dass man mit einem Text-Editor oder mit Excel die Daten so zusammen stricken kann, dass man sie in AutoCAD weiter verarbeiten kann (z.B. mit einem Script für _point oder _3dpline). Sicher kann man für einen Spezialfall auch eine Spezialanwendung schreiben, ist dann aber bei Variationen wieder aufgeschmissen. Damit ist DXFKOR zwar nicht das komfortabelste Programm, aber man kommt mit fast allen geometrischen Konstrukten der Planer zum Ziel. Gruß Bruno Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner, keine Adminrecht
|
erstellt am: 27. Jul. 2006 09:35 <-- editieren / zitieren --> Unities abgeben:
danke für die nachricht, habe programm getestet geht soweit ganz gut ist aber für meine zwecke nicht so das richtige da nur für dxf einsetzbar, habe mitlerweile lösung erhalten danke bauvermesser Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Theodor Schoenwald Ehrenmitglied
Beiträge: 1672 Registriert: 16.04.2002
|
erstellt am: 27. Jul. 2006 13:50 <-- editieren / zitieren --> Unities abgeben: Nur für Bauvermesser
|
Bauvermesser Mitglied Vermesser
Beiträge: 460 Registriert: 18.03.2006 AMD 2600, 2024RAM ,WIN XP PROF-SP3, ACAD 2005, Firmenrechner, keine Adminrecht
|
erstellt am: 29. Jul. 2006 10:34 <-- editieren / zitieren --> Unities abgeben:
hallo, anbei lsp (nicht von mir) geht gut , habe im lsp forum nochmal beitrag erstellt weil ich noch weitere lsp-spezielle fragen dazu habe, bitte dort wenn interesse weiterverfolgen, - suche für den Koordinatenimport noch was passendens ohne blöcke und symbole, nur eine einfache lsp mit der man punkte mit punktnummer einlesen kann- auf einen layer seiner wahl, lsp setzt dummen text auf z-wert am textfußpunkt (defun C:ztxt () (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)) ) ) ) )
------------------ Gruß vom Bauvermesser; übrigens- ein Vermesser kennt seine Grenzen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |