vrs Opublikowano 13 Lipca 2015 Zgłoś Opublikowano 13 Lipca 2015 (edytowane) Potrzebuję zapisać / wyeksportować rysunek do formatu dxf. Wiem, że jest metoda DxfOut z poziomu Database, ale jak bym nie podał jej argumentów, to VS ciągle podkreśla mi kod, mówiąc, że metoda ma nieprawidłowe argumenty. database.DxfOut(_sciezka, 16, DwgVersion.AC1021, false); Oczywiście _sciezka to zwykły string. Najprawdopodobniej przyczyną jest określenie wersji pliku. Próbowałem z różnymi wersjami dwg, ale to nic nie dało. Edytowane 13 Lipca 2015 przez vrs
kruszynski Opublikowano 13 Lipca 2015 Zgłoś Opublikowano 13 Lipca 2015 database ma też metodę: saveAs . Czy sprawdzał Pan tez jak ona się zachowa?
kruszynski Opublikowano 13 Lipca 2015 Zgłoś Opublikowano 13 Lipca 2015 Potrzebuję zapisać / wyeksportować rysunek do formatu dxf. Wiem, że jest metoda DxfOut z poziomu Database, ale jak bym nie podał jej argumentów, to VS ciągle podkreśla mi kod, mówiąc, że metoda ma nieprawidłowe argumenty. database.DxfOut(_sciezka, 16, DwgVersion.AC1021, false); Oczywiście _sciezka to zwykły string. Najprawdopodobniej przyczyną jest określenie wersji pliku. Próbowałem z różnymi wersjami dwg, ale to nic nie dało. Podkreśla całą linię? czy tylko jeden z parametrów?
vrs Opublikowano 14 Lipca 2015 Autor Zgłoś Opublikowano 14 Lipca 2015 Metoda saveAs działa, ale zapisuje w formacie dwg, a ja potrzebuję koniecznie pliku dxf, ponieważ trafia on później do innego programu, który wymaga pliku dxf. Chyba, że jest możliwość użycia tej metody do zapisu w formacie dxf. W przypadku dxfOut podkreśla całą linię.
vrs Opublikowano 14 Lipca 2015 Autor Zgłoś Opublikowano 14 Lipca 2015 Problem stanowi trzeci parametr metody dxfOut, czyli wersja pliku, w jakiej ma być on zapisany. W pryzpadku metody saveAs wersja pliku określana jest klasą DwgVersion, a w dxfOut jest to klasa ZcDb.ZcDbDwgVersion, czyli coś innego. Problem z tym, że ja nie mam w projecie przestrzeni nazw ZcDb. Możliwe, że brakuje mi jakiejś referencji, jednak nie mam pomysłu jakiej. W referencjach mam następujące biblioteki: ZwDatabaseMgd.dll, ZWCAD.exe, ZwManaged.dll.
kruszynski Opublikowano 14 Lipca 2015 Zgłoś Opublikowano 14 Lipca 2015 Otrzymałem odpowiedź z ZWSOFT. Jest to problem w samym ZWCADzie. Natomiast w odpowiedzi ZWSODFTu jest informajca, że problem istnieje tylko w C# i jako obejście możemy wykorzystać vb.net . Sam nie łączyłem nigdy tych języków programowania w ramach jednym projekcie, ale może tą część czy procedurę może Pan opracować w VB.Net?
vrs Opublikowano 14 Lipca 2015 Autor Zgłoś Opublikowano 14 Lipca 2015 ehhh kolejny błąd w ZWCADzie. Niedobrze. Co do łączenia VB z C# to również nie miałem okazji ich łączyć w ramach projektu, jednak pewnie jest to możliwe i staje się kolejnym wyzwaniem przedemną :) Tak więc biorę się do roboty. Dzięki wielkie za pomoc. Przedemną jeszcze wiele wyzwań jeśli chodzi o ZWCADa i C#, więc jeszcze nie raz będę pisał i pytał. Dobrze, że mam kogo pytać :) Jeszcze raz dzięki :good:
vrs Opublikowano 15 Lipca 2015 Autor Zgłoś Opublikowano 15 Lipca 2015 Udało się zrobić :) Musiałem jedynie kod Vb umieścić w nowym projekcie i dodać go jako referencję do aktualnego projektu. Jednak to nie koniec problemów z exportem. Plik jest tworzony w określonej lokalizacji, nie wyskakują żadne błędy, ale nie mogę go otworzyć. Przy próbie otwarcia pokazuje się komunikat "Plik DXF jest niepoprawny lub niekompletny". Próbowałem różnych wartości w DwgVersion, ale to nic nie dało. Oczywiście jak rysunek, który eksportuję, zapiszę normalnie, przez opcję Zapisz jako, to nie mam problemów z jego otwarciem. Co ciekawe, wyeksportowany plik bez problemów otwiera się w ZWCAD 2012. Ma ktoś pomysł gdzie może leżeć przyczyna ?
kruszynski Opublikowano 15 Lipca 2015 Zgłoś Opublikowano 15 Lipca 2015 Czy może Pan przesłać do mnie mailem pliki przed zapisem i wynikowy DXF? mój adres to pomoc@dobrycad.pl
vrs Opublikowano 17 Lipca 2015 Autor Zgłoś Opublikowano 17 Lipca 2015 Żeby temat zamknąć: Plik generowany przed kod VB, poprzez metodę DxfOut również nie działa. Tak jak wyżej pisałem po wygenerowaniu tak pliku nie można go otworzyć w ZWCADzie, a dokładniej problemem jest BlockTableRocord. Nie wiedzieć czemu, plik jest nieprawidłowo eksportowany. jest jednak rozwiązanie problemu eksportu rysunku do pliku dxf. Działa ono tylko w VB.Net. Działający kod: Public Function exportDatabaseToDxf(_path As String, _document As Document) As Boolean Dim document As Document = _document Dim ss As ZcadSelectionSet = document.ZcadDocument.SelectionSets.Add("sample") document.ZcadDocument.Export(_path, "dxf", ss) document.ZcadDocument.SelectionSets.Item("sample").Delete() Return True End Function Problem rozwiązany. Martin_S 1
cherokee Opublikowano 24 Stycznia 2016 Zgłoś Opublikowano 24 Stycznia 2016 problem exportu pliku DWG do DXF celem użycia pojawił się również u mnie ... posiadam zwcad+ 2015 , nie bylo tego problemu w wersji starszej np 2010. ROZWIĄZANIE : należy podczas zapisywania pliku jako DXF , wybrać wersję AUTOCAD R12 , wtedy nasz nowy DXF będzie działał bez zarzutu po otworzeniu w każdym innym programie.
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się