Hallo,
ich habe ein Makro erstellt das Türen mit DIN Links bzw. DIN Rechts beschriftet. Das Macro ist "mit der heißen Nadel gestrickt" aber ich würde es schon einmal zur Verfügung stellen um dann gern eure (konstruktive) Kritik zu hören. Im beiliegenden Video habe ich alle Schritte zum Einrichten des Macros erklärt. Macro und Beispiel DGN mit Darstellungsregel sind beigefügt.
PS: vielen Dank an Artur Goldsweer der mir erklären konnte wo der Unterschied in der Zelle zu finden ist.
DINLR.dgnDIN_LR.mvba
Uns scheint Matrix3dIsXRotationYRotationZRotationScale nicht die richtige Auswertung zu geben. Da werden ja 'nur' Drehungen abgefragt.
Wir haben mit Matrix3dIsXYRotationSkewAndScale mehr Erfolg: Da wird auch eine Spiegelung geliefert.
Dim rot2 As Matrix3d rot2 = door.Rotation Dim xRot2 As Double, yRot2 As Double, xScale As Double, yScale As Double, zScale As Double Matrix3dIsXYRotationSkewAndScale rot2, xRot2, yRot2, xScale, yScale, zScale If yScale < 0 Then din_lr = "DIN Rechts" din_lr = "R" Else din_lr = "DIN Links" din_lr = "L" End If
Ich bekomme mit der X_Rotation eigentlich immer die richtigen Ergebnisse Die Türen in der Beispieldatei sind gedreht und der Anschlag mit dem üblichen Werkzeug gespiegelt. Andere Werte ändern sich auch, aber der Xwert reicht für eine Beurteilung. Wie gesagt, ich habe nur PAZ Zellen geprüft. Der Anschlag der mitgelieferten Türen war zu Beginn immer links. evtl liegt es daran. Ich könnte das Makro so umbauen das zunächst ein Wert manuel eingetragen wird, der das Objekt im Originalzustand beschreibt und dann den Wert entsprechend ändert.
Eine Konfigurationsdatei werde ich auch noch hinzufügen so das der Parameter als auch der Wert (zur Zeit Door/Door/DINLR , DIN Rechts) frei gewählt werden kann.
Feature Solids in der Datei führen zu Fehlern. Muss man noch abfangen.