| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Dateitransfer via Acad-Export (799 mal gelesen)
|
startrek Mitglied Architekt
Beiträge: 1361 Registriert: 13.02.2003 Win7ultimate/ACA2010
|
erstellt am: 09. Dez. 2006 00:02 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, folgendes Problem, was heute erst erkennbar wurde: Aus ADT2005 nach ACAD2000 als auch ACAD2004 exportierte Files ergaben, dass sämtliche Tür-/Fensterstempel irgendwo im Nirvana liegen oder aber gar nicht existent sind. Ich hab momentan keinen blassen Schimmer, wie ich die Öffnungsmasse der Türen/Fenster rüberbringen soll, ohne die Assoziativität zu den Fenstern/Türen zu verlieren. Habe mich heute abend hingesetzt und versucht das Problem 'allumfassend' zu lösen, dat is gar nich so einfach ....;-) Hier mal der Text aus einer Mail, die ich vorhin weggeschickt habe: Begin: Mail ~~~~~~~~~~
Sehr geehrte Damen und Herren, da es Probleme bei der Datenübertragung/Konvertierung gab und gibt (und geben wird), sende ich hier nochmal das EG-DG im 2000 dwg Format. Wir haben heute im Laufe des Tages festgestellt, dass im 2004 Format diesselben Fehler auftraten wie bei dwg2000, und ich habe beschlossen es bei dwg2000 zu belassen, aus dem Grunde abwärtskompatibel geht vor und bessre Ergebnisse wurden im 2004'er Format nicht errreicht. !!!!!!!!!!!!!!!!!!!!!!!!!! !!! Bitte um Beachtung !!! Das bisherige Schachtinnenmass des Bettenaufzuges im Verbinder von 2.35x2.85 wurde heute auf 2.35x3.00 erhöht, dies ist in den mitgeschickten Dateien eingearbeitet. !!!!!!!!!!!!!!!!!!!!!!!!!! Für alle die Probleme mit der Attributsdarstellung der Tür/Fensternummern -Höhen - Breiten haben, habe ich heute abend ein kleines tool gestrickt. Dies ist getestet unter Acad2000 und sollte die Werte der Blockreferenzen, welche momentan unsichtbar sind zeigen. Das Ganze wird als MText auf einem separaten Layer angelegt. Folgenden Code können Sie in die Zwischenablage kopieren und in Autocad drücken Sie die Tastenkombi Alt+F11 und wählen in der VBE Umgebung Menue > Einfügen > Modul. In das Modulfenster (Modul1) klicken sie und fügen via RMT den Codetext aus der Zwischenablage ein. Die VBA Umgebung können sie nun schliessen. In der Autocad Umgebung können sie nun einfach in der Befehlszeile mit: _vbarun das Makro starten. Thats all, damit sollten die Angaben sichtbar, auf einem eigenen Layer erscheinen, hier noch der Code dazu: ************************************************************
Code:
Option Explicit Sub bauteilstempel() Dim sset As AcadSelectionSet, mytext As AcadMText Dim FilterType(0) As Integer, FilterData(0) As Variant Dim x, myAtts, att, ip Dim Nr$, FH$, FB$, BH$, UK$, TH$, TB$ On Error Resume Next ThisDrawing.SelectionSets.Item("SS01").Delete ThisDrawing.Layers.Add "00_Nancytest" On Error GoTo hell Set sset = ThisDrawing.SelectionSets.Add("SS01") FilterType(0) = 0: FilterData(0) = "Insert" 'FilterType(1) = 2 :FilterData(1) = "BAUTEILLISTEN_Fenster_2" sset.Select acSelectionSetAll, , , FilterType, FilterData For Each x In sset If x.HasAttributes Then Select Case x.Name Case Is = "BAUTEILLISTEN_Fenster_2" myAtts = x.GetAttributes For Each att In myAtts If att.TagString = "FENSTER:NUMMER" Then Nr = att.TextString If att.TagString = "FENSTER:BREITE" Then FB = att.TextString If att.TagString = "FENSTER:HÖHE" Then FH = att.TextString Next ip = x.InsertionPoint Set mytext = ThisDrawing.ModelSpace.AddMText(ip, 0, Nr & "\P" & FB & " x " & FH) mytext.Rotation = x.Rotation mytext.Layer = "00_Nancytest" Case Is = "BAUTEILLISTEN_Fenster_5" myAtts = x.GetAttributes For Each att In myAtts If att.TagString = "FENSTERSTIL:Brüstungshöhe" Then BH = att.TextString If att.TagString = "FENSTERSTIL:Sturzhöhe" Then UK = att.TextString Next ip = x.InsertionPoint Set mytext = ThisDrawing.ModelSpace.AddMText(ip, 0, BH & "\P" & UK) mytext.Rotation = x.Rotation mytext.Layer = "00_Nancytest" Case Is = "BAUTEILLISTEN_Tuer_2" myAtts = x.GetAttributes For Each att In myAtts If att.TagString = "TÜREN:NUMMER" Then Nr = att.TextString If att.TagString = "TÜREN:BREITE" Then TB = att.TextString If att.TagString = "TÜREN:HÖHE" Then TH = att.TextString Next ip = x.InsertionPoint Set mytext = ThisDrawing.ModelSpace.AddMText(ip, 0, Nr & "\P" & TB & " x " & TH) mytext.Rotation = x.Rotation mytext.Layer = "00_Nancytest" End Select End If Next ThisDrawing.Layers("00_Nancytest").Color = acGreen hell: End Sub
************************************************************ Parallel dazu hängt das ganze noch als bauteilstempel.dvb dran, die *.dvb müssten sie dann einfach über den Befehl: _vbaload in der Befehlszeile laden, je nachdem, wo sie abgespeichert wurde. BEIDE Wege sind unnötig, suchen Sie sich bitte EINEN davon heraus, also Code abkopieren oder *.dvb laden, der Effekt ist derselbe;-) -------------------------- Das Datenproblem betreffend, aber völlig unabhängig von VBA, können Sie, wenn VBA nicht gewollt, einen Object-Enabler von Autodesk herunterladen, ist Freeware und auch nur ein Vorschlag: Object-Enabler Autocad2000 == Autodesk® Architectural Desktop Release 3: http://usa.autodesk.com/adsk/servlet/ps/dl/item?siteID=123112&id=2525459&linkID=2475897 Object-Enabler Autocad2004 == Autodesk® Architectural Desktop 2004 http://usa.autodesk.com/adsk/servlet/ps/dl/item?siteID=123112&id=3069629&linkID=2475897 Last but not least, EG ... DG als Pdf sicherheitshalber anbei. viele Grüße, Erkmann -- Author1: I hear if you play the NT4.0 CD backwards, you get a satanic message Author2: Thats nothing, if you play it forward, it installs NT4.0. -- Make it as simple as possible, but not simpler. ~~~~~~~~~ End Mail
Mal eine Frage, wie händelt ihr sowas? Ich meine wo beginnt die Zuarbeit und wo endet sie? Unter dem Aspekt der Terminsetzung betrachtet, wo jeder jedem den schwarzen Peter zuschiebt, was für Argumente hab ich da? Bin momentan etwas ratlos, was die Kiste/Situation angeht, habe kurz ein makro geschrieben, was unter acad 2000 läuft, weiss aber nicht, ob diese Herangehensweise das Ultimative Mittel ist. So, wie ich die 'Teilnehmer' oder beteiligten Büros kenne, werden die auf 'stur' schalten, von wegen Makros oder gar Object-Enabler runterladen/Installieren. That's the Problem ;-) Es ist wirklich ein Problem, was mit Adminrechten anfängt und damit auch aufhört und viele haben keinen Admin. Nur mal als Situation , wie sie sich momantan darstellt, und ich habe keinerlei Möglichkeit 100% einwandwfreie Daten abzuliefern. Das Argument, wozu das ganze, wozu IFC, DWG- Formate noch und nöcher, wenn eh' nix davon ZUVERLÄSSIG verwertbar ist. Bleibt in Endkonsequenz zu sagen, ha! stellen wir uns zurück an's Zeichenbrett, dann sind 'mer kompatibel;-) Neien, ich will nix verteufeln, ich bin PRO CAD+Möglichkeiten, ich such nur wahrscheinlich nach etwas - was es noch nie gab, und auch nie geben wird.;-) Wäre dankbar, wenn ihr mal paar Verfahrenswege eurerseits (was die Problematik angeht) mitteilt.
Viele Grüße, Nancy [Diese Nachricht wurde von startrek am 09. Dez. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
sleepless Mitglied Architekt
Beiträge: 947 Registriert: 30.05.2004
|
erstellt am: 09. Dez. 2006 09:51 <-- editieren / zitieren --> Unities abgeben: Nur für startrek
Hi, keine Ahnung ob es damit zu tun hat, aber ich meine mich zu erinnern, dass Bauteilbeschriftungen nur korrekt weitergegeben werden, wenn x,y,z gleichmäßig skaliert sind (zumindest in ADT2004/2005). Überprüf das mal. Die Assozivität mit den Fenstern/Türen ist aber so oder so dahin, da der export ja alle objekte zerstört. Tom ------------------ Inoffizielle ADT-Help-Site Rome wasn't built in a day. But these days we just have one to do so. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
startrek Mitglied Architekt
Beiträge: 1361 Registriert: 13.02.2003 Win7ultimate/ACA2010
|
erstellt am: 11. Dez. 2006 11:50 <-- editieren / zitieren --> Unities abgeben:
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|