Donnerstag, 27. Juni 2013

AutoCAD, WPF und "Could not load file or assembly" im Designer

Beim Versuch, eine WPF Form innerhalb eines AutoCAD (Map) Plugins zu erzeugen erschien im Designer von VS Express 2010 immer die Meldung, dass eine der referenzierten AutoCAD DLLs nicht geladen werden konnte.

Das Problem lässt sich beheben indem man nicht die DLLs aus dem AutoCAD Map Installationsordner referenziert ( C:\Program Files\Autodesk\AutoCAD Map 3D 2013) sondern die DLLs aus dem AutoCAD 2013 SDK (C:\ObjectARX 2013\inc).

Happy coding :-)

Donnerstag, 20. Juni 2013

Darstellungsmodelle - Layerdateien mehrfach vorhanden

Bei der Bearbeitung und dem anschliessenden Abspeichern eines Darstellungsmodells entstehen tw. doppelte Karten- oder Layerdateien. Die ursprünglichen Dateien werden nicht immer überschrieben sondern durch eine Kopie ergänzt, die durchnummeriert wird. 



Es ist mir im Augenblick noch nicht ganz klar, wenn Map vorhandene Karten- und Layerdateien überschreibt und wenn die Kopien erstellt werden.
 
Um in dem Ordner aufzuräumen und die Duplikate zu entfernen kann man wie folgt vorgehen:
- Bildaufbau mit dem betroffenen Darstellungsmodell
- Order mit den Layern des Darstellungsmodells leeren (vorsichtshalber Sicherungskopie erstellen)
- Darstellungsmodell neu abspeichern
 



Anschliessend sind die Duplikate entfernt und der Ordner sieht wieder aufgeräumt aus.

Mittwoch, 19. Juni 2013

Darstellungsmodell erstellen - "Speichern der Darstellungsmodell-Datei fehlgeschlagen"

Die Meldung trat auf, als ich ein neues Darstellungsmodell speichern wollte. Nach einigen Tests und dem Hinweis von Autodesk Support, dass das Problem nach einem Bildfaufbau auftreten kann ergibt sich folgendes Bild:
 
 
1.0 Map starten
1.1 Projekt öffnen
1.2 Neues DM erstellen
1.3 Layer hinzufügen, mit Referenz
1.4 Speichern : ok
 
2.0 Map starten
2.1 Projekt öffnen
2.2 Neues DM erstellen
2.3 Layer hinzufügen, ohne Referenz
2.4 Speichern : ok
 
3.0 Map starten
3.1 Projekt öffnen
3.2 Bildaufbau
3.3 Neues DM erstellen
3.4 Layer hinzufügen, mit Referenz
3.5 Speichern : ok
 
4.0 Map starten
4.1 Projekt öffnen
4.2 Bildaufbau
4.3 Neues DM erstellen
4.4 Layer hinzufügen, ohne Referenz
4.5 Speichern : Fehlermeldung


Die Layerdateien werden im Ziel-Ordner noch abgespeichert, nicht aber die TBDM und die TBDMMAP. Setzt man nun das Referenzhäkchen lässt sich das DM trotzdem nicht abspeichern

Ich bin mir nicht sicher, ob dies die alleinige Ursache der Meldung ist. Irgendwie habe ich das Gefühl, dass die Meldung auch noch in anderen Situationen aufgetreten ist - nur kann ich das nicht mehr nachvollziehen.
 

 

Map - Liste mit den verfügbaren Darstellungsmodellen aufräumen

Mit der Zeit sammeln sich verwendete Darstellungsmodelle in der Auswahlliste an. 


Um die Liste zu bereinigen wählt man ein Eintrag aus und drückt die "Entf" [Delete] Taste. Es erscheint eine Abfrage, ob der Eintrag aus der Liste entfernt werden soll - mit "OK" bestätigen. Das Modell wird nicht gelöscht, nur der Eintrag aus der Liste entfernt.


Freitag, 14. Juni 2013

Linienskalierung im Zusammenhang mit dem DWG Export III

Um den Zusammenhang zwischen Map-Layer Einstellungen und dem exportierten Linientypfaktor besser zu verstehen habe ich einige Wertekombinationen getestet. Hier sind die Ergebnisse (bezogen auf "Meter" als Zeichnungseinheiten und Einstellung im Stil-Editor):
 
Scale_X         Linientypfaktor in exportierter DWG
1               0.01
100             1
1000            10
 
Das wurde mit Map 2013 SP1 ermittelt. Mit Map 2014 hat sich dies nicht geändert - soweit ich sehen kann. Aber mit Map 2014 wird die Linienskalierung aus dem Map-Layer scheinbar korrekt in den AutoCAD Linientypfaktor umgerechnet. Zumindest für den DWG-Export bräuchte man dann die zusätzlichen Einstellungen über ScaleX, ScaleY scheinbar nicht. 

Für mich sind beim DWG Export immer  die Optionen "Bearbeitbar", "mit Vorlage"- ausschlaggebend und die Erläuterungen beziehen sich auch immer auch diesen Exporttyp.


Siehe auch die vorherigen Einträge zu diesem Thema (1, 2).

Donnerstag, 13. Juni 2013

DWG Export - Map 2014

Irgendwie war mir von der TUG Versammlung letztes Jahr in Erinnerung, dass sich bei Map 2014 im DWG Export viel getan haben soll. Also, warum nicht mal eben 5 GB runterladen und Map installieren. Ich habe nicht alles mit Map 2014 neu getestet und hoffe, dass das was mit 2013 ging auch noch mit 2014 geht.


Speziell bei den Schraffuren gibt es in Map 2013 noch diverse Einschränkungen - leider auch noch in 2014: die Schraffurskalierung wird nicht bei allen Schraffurmustern mit exportiert (an Autodesk gemeldet). 

Vergibt man den Schraffurwinkel fest oder per Ausdruck wird dieser auch mit exportiert, nicht aber wenn der Schraffurwinkel aus der Geometrie berechnet ist. 

Ansonsten ist das hier beschriebene Problem bei der Linienskalierung in Map 2014 auch gelöst. Die Übergabe des Z-Wertes als AutoCAD Attribut soll auch funktionieren - das habe ich aber selber nicht getestet. Der Z-Wert muss in der Tabelle/View des Layers enthalten sein.

Linienskalierung im Zusammenhang mit dem DWG Export II

Nach langem Hin und Her musste ich leider feststellen, dass in Map 2013 SP1 der Export der Linienskalierung wie beschrieben eine Einschränkung aufweist - es funktioniert scheinbar nicht mit den vordefinierten AutoCAD Linienmustern. Bei dem Beispiel mit ACAD_ISO02W100 konnte ich den Linientypfaktor beim DWG-Export nicht beeinflussen.

Als Test habe ich das Linienmuster in der Layerdatei in ACAD_ISO02W100_X umbenannt und auch in der Export - Vorlagedatei den AutoCAD Linientyp ACAD_ISO02W100 in ACAD_ISO02W100_X umbenannt:
 

 
Beim DWG Export war nun die Linienskalierung wieder korrekt - geändert hat sich nur der Symbolname im Layer sowie der AutoCAD Linientypname. Alle anderen Einstellungen waren gleich.
 

Die gute Nachricht - Mit Map 2014 hat der DWG Export für beide Varianten die richtige Skalierung exportiert. Ich habe Map 2014 testweise installiert um zu schauen, ob sich der  DWG Export verbessert hat. Siehe dazu im nächsten Beitrag.

DWG-Export - Layer wird nicht exportiert

Mir ist es bei einem Layer mit Linien passiert - tritt vermutlich auch bei anderen Geometrietypen/Symbole auf. Ein Layer wurde nicht exportiert (DWG-Export, Bearbeitbar, mit/ohne Vorlage). - ohne jegliche Fehlermeldung. Andere Layer wurden wie erwartet exportiert. 
Nach langem Hin und Her ist mir mein Fehler aufgefallen - ich hatte den Symbolnamen in der Layerdatei geändert. Der Symbolname ist aber mehrfach in der Datei enthalten, z.B. auch im Abschnitt <ParameterOverrides>. Dort hatte ich den Namen nicht angepasst. Im Stil-Editor waren die Einstellparameter gleichzeitig gesperrt und liessen sich nicht ändern.

Besser man verwendet "Suchen&Ersetzen" und ändert nicht händisch Einträge....

Montag, 10. Juni 2013

Realitätserfassungsdaten in einer leistungsstarken Vorbereitungsumgebung

Bei der Installation von Map 2014 fiel mein Blick auf ein neues Programm, dass sich mit Version 2014 installieren lässt: Autodesk ReCap.


Nicht klar ist mir allerdings, was sich hinter dem Programm verbirgt. Was ist eine "Vorbereitungsumgebung"? Wozu muss man "Realitätserfassungsdaten" bereinigen?

Autodesk hat hier nicht nur eine neue Software sondern offenbar auch gleich noch ein neues Wort kreiert. 

Mittwoch, 5. Juni 2013

CountryKit - AW 2013 (CH)

Weder Version 1 noch Version 2 des CK WW CH DE 2013 lassen sich manuell installieren. Bei der Installation kommt es zu einer Fehlermeldung:
 
Beim Aktualisieren ist ein Strukturaktualisierungsfehler aufgetreten.
Meldung:
Das Thema 'INTERLIS' ist nicht vorhanden.
 
Das Thema ist aber vorhanden.
 
Vom Autodesk Support wurde eine aktualisierte GENX Datei zur Verfügung gestellt, mit der sich die Installation durchführen liess. Dann stellte sich heraus, dass es zwischen dem Dump und der manuellen Installation Unterschiede bei einigen Tabellenspaltendefinitionen gibt.
 
CK - Dump:
desc ww_ck_test_rf.ww_point
Name Null Typ
--------------- -------- --------------
FID NOT NULL NUMBER(10)
GEOM SDO_GEOMETRY()
ORIENTATION NOT NULL NUMBER(20,8)
 
CK - manuell
desc ww_point
Name Null Typ
--------------- -------- --------------
FID NOT NULL NUMBER(10)
GEOM SDO_GEOMETRY()
ORIENTATION NOT NULL NUMBER(6,3)
 
Dies betrifft  mindestens die Spalte "Orientation" in WW_POINT und WW_COVER. Mit dem manuell eingerichteten CK schlägt die TB2 Migration fehl mit:
 
INSERT into WT_AW_02C.WW_POINT(T2T_FID,GEOM,F_CLASS_ID_ATTR,ORIENTATION,Z,T2T_FID_ATTR,T2T_FID_SITE,TB2_FID) select FID,GEOM,(select F_CLASS_ID from WT_AW_02C.TB_DICTIONARY where upper(F_CLASS_NAME)='WW_MANHOLE'),ORIENTATION,Z,FID,FID,TB2_FID from AW_SCHACHT Where ((1=1))
Fehler:Der Wert ist zu groß für die angegebene Spalte.
 
Der SQL Fehler im Detail:
SQL-Fehler: ORA-01438: Wert größer als die angegebene Gesamststellenzahl, die für diese Spalte zulässig ist
01438. 00000 - "value larger than specified precision allowed for this column"
 
Nach manueller Anpassung der Spaltendefinition läuft die Migration durch. Leider werden dann bei den Haltungen im Formular diverse Einträge nicht angezeigt, es erscheint nur "#Error#".
 

 
Ursache sind einige fehlende PL/SQL Funktionen der Fachschale, z.B. GetStartPoint. Die SQL Anweisungen hinter den mit #Error# dargestellten Elemente verwenden diese Funktionen, z.B. bei Deckelhöhe:
 
select c.Z  from WW_COVER c where c.FID_FEATURE_1 = (select getstartpoint({fid}) from dual)
 
Sind die Funktionen nicht vorhanden, erscheint die Fehlermeldung im Formular.
 
Hier die Unterschiede bei den PL/SQL Funktionen zwischen CK AW CH DE 2013 Dump und manueller Einrichtung:
 
Da lässt Autodesk dem Anwender keine Wahl - es muss der CK Dump verwendet werden.
 
Map 2013, SP1
 

XML - Layerdateien übersichtlicher anzeigen

Es ist öfter erforderlich, die XML basierten Layerdateien zu öffnen und dort Einstellungen vorzunehmen. Mit einem Texteditor wie Notepad++ gibt es zwar ein Syntax-Highlight für XML aber trotzem bleibt ist es schwierig, die Übersicht zu wahren:
 

Ich habe bisher immer Notepad++ verwendet. Gestern habe ich aber gesehen, dass man mit XMLSpy die Layerdateien öffnen und sehr übersichtlich darstellen und bearbeiten kann. XMLSpy benötigt jedoch eine kostenpflichtige Lizenz. Als kostenlose Alternative habe ich mir kurz QXmlEdit angeschaut:
 


Auch hier ist die Darstellung recht übersichtlich, die Datei lässt sich editieren.  Verwendet habe ich es noch nicht - werde es aber über die nächsten Tage mal testen. Es scheint mir aber eine gute Ergänzung oder Alternative zu einem Texteditor zu sein.