Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  BricsCAD
  Chelev Höhenlinien

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 BricsCAD
Autor Thema:  Chelev Höhenlinien (1383 mal gelesen)
bergaus
Mitglied


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

Beiträge: 4
Registriert: 14.06.2018

erstellt am: 14. Jun. 2018 12:06    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


Hohenschichten_Problem.dwg

 
Hallo,

ich habe eine Projektdatei mit Höhenlinien und bekannten Höhen. Die Datei beschreibt eine Senke mit umliegenden Steigungen.
Die Höhenlinien beschreiben eine Höhendifferenz von 0,625m.
Wenn ich mit chelev in der Senke den ersten Punkt setze und am Höchsten Punkt (eine Kuppel) und die Starthöhe, erhalte ich zwei Gruppen von Höhenschichtlinien. Der höchste Punkt der unteren Gruppe (Gelb) beginnt am untersten Punkt der oberen Gruppe (Cyan).

Setze ich das Tool falsch ein?

Danke

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

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



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

Beiträge: 2624
Registriert: 02.05.2006

BricsCAD V11 - V22 Pro
Visual Basic

erstellt am: 14. Jun. 2018 14:06    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 bergaus 10 Unities + Antwort hilfreich

Hallo bergaus,
Willkommen im Forum 

Hm, vermutlich hast Du ein anderes chelev.lsp wie ich, ich habe mir das gerade von hier geholt. Damit bekommt man zwar keine zwei Gruppen aber die Reihenfolge passt.

Was mir in Deiner rechten Zeichnung auffiel: Du befindest Dich mit Deinen Höhenwerten im Weltall ( 468125.00 m). Hast Du evtl. ein Komma anstelle des Dezimalpunktes eingegeben? Außerdem liegen die gelben Linien 30000 m tiefer als die daneben liegenden cyanfarbenen

Grüße
Klaus 


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

bergaus
Mitglied


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

Beiträge: 4
Registriert: 14.06.2018

erstellt am: 14. Jun. 2018 14:45    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 Klaus,

es ist der selbe Link/ die selbe lsp-Datei die ich verwende. Die hohen Werte können daher kommen, dass ich die Geometrie per Copy'n'Paste in eine neue Zeichnung eingefügt habe und die Skalierung eine andere ist.
Bei mir ist die vorletzte Polylinie auf 461.875m, auch in der hochgeladenen Datei.
Ich habe immer den "." für die Zahlenwerte verwendet.

EDIT:
Ich habe, um mein Problem zu verdeutlichen, die tieferliegenden Linien Gelb eingefärbt. Meine Frage ist ja, warum liegen diese Linien tiefer als die anderen? Der Abstand innerhalb der jeweiligen Farbgruppe beträgt genau den Abstand den ich bei "interval" eingegeben habe.

EDIT 2:
Ich habe jetzt die unteren Linien auf die richtige Höhe geschoben/gesetzt (Erhebung) und die Cyan-Linien dann immer um 10 Meter nach unten verschoben. Ich hoffte genau das nicht per Hand erledigen zu müssen...
Die gelben Linien haben jeweils einen höhen Abstand von 2.5m und die vier Höhenlinien dazwischen jeweils 0.5m.


[Diese Nachricht wurde von bergaus am 14. Jun. 2018 editiert.]

[Diese Nachricht wurde von bergaus am 14. Jun. 2018 editiert.]

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

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



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

Beiträge: 2624
Registriert: 02.05.2006

BricsCAD V11 - V22 Pro
Visual Basic

erstellt am: 14. Jun. 2018 16:45    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 bergaus 10 Unities + Antwort hilfreich

Hallo bergaus,

Jetzt habe ich verstanden was Du meinst und ja, Du hast Recht, mit Deinen Zeichnungselementen erreiche ich das gleiche Ergebnis wie Du, die Reihenfolge der Höhenlinien stimmt nicht. Bei näherer Betrachtung der Lisp ist das auch verständlich, das Programm kann eigentlich nur funktionieren wenn die Höhenlinien in einer bestimmten Reihenfolge erzeugt wurden. Vermutlich wurden in Deiner Zeichnung zunächst die Haupthöhenlinien kopiert und anschließend die Nebenhöhenlinien, damit ergäbe sich die Reihenfolge in der ZeichnungsDB die dann auch in den SelectionSet übernommen wird. Für ein richtiges Ergebnis hätte man das Programm ganz anders aufbauen müssen ...

Grüße
Klaus 

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

bergaus
Mitglied


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

Beiträge: 4
Registriert: 14.06.2018

erstellt am: 15. Jun. 2018 07:41    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 Klaus,

also müsste ich einfach 2 Durchgänge durchführen um mein gewünschtes Resultat zu erhalten.

Danke

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

KlaK
Ehrenmitglied V.I.P. h.c.
Dipl. Ing. Vermessung, CAD- und Netz-Admin



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

Beiträge: 2624
Registriert: 02.05.2006

BricsCAD V11 - V22 Pro
Visual Basic

erstellt am: 15. Jun. 2018 12: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 bergaus 10 Unities + Antwort hilfreich

Jein
Für die Haupthöhenlinien könnte das funktionieren aber bei den Nebenhöhenlinien hast Du ja unterschiedliche Intervalle da die Haupthöhenlinie dort in der Reihenfolge nicht enthalten ist

Grüße
Klaus 

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

Grebe
Mitglied



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

Beiträge: 536
Registriert: 16.12.2002

erstellt am: 18. Jun. 2018 08: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 Nur für bergaus 10 Unities + Antwort hilfreich

Ich vermute, dass die geschnittenen Polylinien in AutoCad in aufsteigender Entfernung vom Startpunkt der Schnittlinie aufgelistet werden und in BricsCAD nach ihrer Zeichenreihenfolge.
Hab's mir daher so umgeschrieben, dass die Schnittlinie ab dem Startpunkt in vielen kleinen Abschnitten untersucht wird, sodass jeweils nur max. 1 Element gefunden wird.
Damit klappt's bisher fehlerfrei:

(defun _getPoints (/ lst pt)
(if (car (setq lst (list (getpoint "\nErster Punkt: "))))
(progn
(while
(setq pt
(if (> (length lst) 1)
(progn
(initget "Undo")
(getpoint (car lst) "\nNaechster Punkt [Undo]: ")
)
(getpoint (car lst) "\nNaechster Punkt: ")
)
)
(redraw)
(mapcar '(lambda (a b) (grdraw a b 1 1))
(setq lst
(if (eq pt "Undo")
(cdr lst)
(cons pt lst)
)
)
(cdr lst)
)
)
(cond ((> (length lst) 1) lst))
)
)
)

(defun c:chelevBrx (/ ss1 elev interval a plst pt1 pt2 ename x1 x2 dx y1 y2 dy aktx akty)
(princ "\nLiniezug vom Fusspunkt bis zum Hochpunkt angeben:")
(setq plst (reverse (_getPoints)))
(setq elev (getreal "\nStart-Höhe : "))
(setq interval (getreal "\nSchrittweite : "))
(command "regen")
(setq x1 (car (nth 0 plst)))
(setq y1 (cadr (nth 0 plst)))
(setq plst (cdr plst))
(while plst
(setq x2 (car (nth 0 plst)))
(setq y2 (cadr (nth 0 plst)))
(setq dx (/ (- x2 x1) 100.0))
(setq dy (/ (- y2 y1) 100.0))
(if (or (equal dx 0 0.01) (equal dy 0 0.01))(progn
(alert "Keine horizontalen oder vertikalen Linien verwenden")
))
(setq aktx1 x1)
(setq akty1 y1)
(setq aktx2 (+ x1 dx))
(setq akty2 (+ y1 dy))
(while (and (not (equal aktx1 x2 0.01)) (not (equal akty1 y2 0.01)))
; (command "_point" (list aktx1 akty1))
(if (setq ss1 (ssget "_F" (list (list aktx1 akty1) (list aktx2 akty2))))(progn
(setq alen (sslength ss1))
(if (= alen 1)(progn
(setq ename (ssname ss1 0))
(command "_CHANGE" ename "" "_P" "_E" elev "")
(setq elev (+ elev interval))
))
(if (> alen 1)(progn
(command "_point" (list aktx1 akty1))
(command "_point" (list aktx2 akty2))
(alert (strcat (itoa alen) " Linien gefunden (siehe eingefügte Punkte)"))
(exit)
))
))
(setq aktx1 aktx2)
(setq akty1 akty2)
(setq aktx2 (+ aktx2 dx))
(setq akty2 (+ akty2 dy))
)
(setq plst (cdr plst))
(setq x1 x2)
(setq y1 y2)
)
(princ)
)

Mathias

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

bergaus
Mitglied


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

Beiträge: 4
Registriert: 14.06.2018

Windows 7 Professional
BricsCAD Pro 17.2.08 (x64) Rev 48934
VESTRA Infravision

erstellt am: 18. Jun. 2018 10:52    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 Grebe,

herzlichen Dank. Ich kann das leider erst Ende der Woche bei mir testen. Gebe auf jeden Fall Bescheid wie mein Stand ist.

bergaus

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