Ich habe von meinem Kollegen inzwischen eine "Neutrale"-Datei bekommen die ich hier teilen darf (siehe Anhang "BoeschungsTest_Neutral.dwg").
In der neu angehängten Variante des Tool ist nun auch ein Command zum direkten Aufruf definiert: (siehe Anhnag "TestBoeschung_Command.lsp")
Code:
(defun c:TestBoeschung ( / )(L-Boeschung "0" "0" nil))
In der DWG-Datei befinden sich zwei Linienpaare (3dp) mit jeweils einer TopLine (blau) und einer LowLine (grün).
Nach Ausführen des Befehls muss erst die Obere- und dann die Untere Linie ausgewählt werden (geht auch anders herum, die Berechnung ist dann einfach auf dem Kopf).
Bei beiden Linienpaaren bricht das Tool bei mir ab einem gewissen Punkt ab, da beim Aufruf der vlax-curve-getClosestPointToProjection Funktion nil zurückgegeben wird.
Dieser Fehler tritt bei mir nur in ACAD 25 auf, in 23 & 24 nicht. All unsere ACADs sind mit Map 3D installiert.
Wichtig für Leute die es Testen wollen!:
Der im Tool verwendete DCL-Dialog wird on the Fly als Temporäre .dcl-Datei im entsprechenden Temp-Ordner erstellt (siehe (getvar 'TEMPPREFIX)).
Bei einem Absturz kann die Datei voraussichtlich nicht korrekt gelöscht werden.
Ich hatte damals leider keinen entsprechenden Errorhandelr integriert...
Am Schluss muss also manuell aufgeräumt werden.
@VMichel
>> aber Ihre DWG könnte große Koordinaten verwenden, die an der Grenze der numerischen Stabilität von AutoCAD liegen - versuchen Sie, Ihre Geometrie näher an 0,0,0 zu verschieben
Wir arbeiten mit Koordinaten im siebenstelligen Bereich.
Wenn wir die Linien näher an (0 0 0) schieben, scheint das Problem zu verschwinden.
Allerdings sind unsere GeoDaten an das Koordinatensystem unseres Landes gebunden und können/dürfen nicht verschoben werden.
Unsere älteren Versionen hatten mit den gleichen Koordinaten keine Probleme.
@cadffm
>> Tolles Ding, gefällt mir sehr.
Danke, aber bei der Fehler-/Absturz-Absicherung muss ich wohl nochmals nachbessern.
>> irgendwann hat es dann "funktioniert" JUHUU
Sorry für die Bastelei, bei mir im System sind die Befehle schon vordefiniert, das habe ich gestern verschlafen...
>> aber fertige DWG Beispiel / Eingabe-Werte, das würde ich schaffen
Mit den neuen Anhängen sollten alle Eingaben gegeben sein.
>> Ich denke das Problem würde man auch problemlos in 2023 erhalten können, auch wenn es nicht bei derselben Punkt/Poly Kombination vorkommt.
Mehrere Dienststellen der Archäologie in verschiedenen Kantonen nutzen mein Tool in unterschiedlichen ACAD Versionen und es ist das erste mal das ich von diesem Problem höre oder es selbst erlebe.
>> Rundungsproblem sind eine Pest
Absolut, allerdings sollte vlax-curve-getClosestPointToProjection noch kein Rundungsproblem haben, bzw. dennoch eine Koordinate ausspucken.
Das vlax-curve-getDistAtPoint Rundungsprobleme hat ist verständlicher und wäre mit einem zuverlässigem, extra ClosetPoint abzufangen.
------------------
Bubi spiele, Bubi glücklich!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP