Eksport makr rozłożony dxf BIS

@Bart: Dla następnego bez for, to dlatego, że musiałem odwrócić linię z końcem, jeśli ... ale nie mam teraz nic do przetestowania końca programu.

 

Postaram się to zobaczyć jutro

 

@Damoon: Więc, czy dostaniemy mały kieliszek cydru z twoim brut de pomme?

1 polubienie

Do rysowania służy do automatycznego wstawiania właściwości dla produkcji...  

Usuwa również linie gięcia, dzięki czemu DXF jest bezpośrednio "czysty" do cięcia laserowego.

W ten sposób mam tylko rysunek do eksportu z własnymi ustawieniami. 

@coin37coin na cydr nie ma go tutaj w Wandei, to Trouspinette^^

1 polubienie

To jest to, co mam.

 

Co mam zrobić? :p

 

W przeciwnym razie, w drugą stronę, jesteśmy już prawie na miejscu! Musisz tylko powiedzieć Sw, aby wyeksportował tylko płaskie wzory i usunął ten słynny płaski wzór z nazwy.

 


sans_titre.png

Musisz aktywować swoje referencje.  

Aby to zrobić, musisz przejść do narzędzia, a następnie odwołać się i sprawdzić referencje jak na załączonym obrazku


capture.png
1 polubienie

Cóż, nie śmiej się z ciebie^^

 

Oto, jak widzi to moja logika.

Czekam na Wasze komentarze:p


macro.txt
1 polubienie

Podjąłem się twojego sposobu robienia rzeczy (wersy:

  NewFilePath = ŚcieżkaNoRozszerzenia + sNazwaKonfiguracji & ". DXF"
 bRet = swModel.ExportFlatPatternView(NewFilePath, 1)     )

opcja, której nie znałem^^

z moimi pętlami na configach, które "przeskakują" konfiguracje zawierające "SM-FLATPATTERN"

Zobacz załączony plik^^.


export-config.txt
2 polubienia

Nie znałem kodu "jest XXX jak wtedy, idź doto".

Ciekawy sposób postępowania, który rozjaśnia wiele linii. Zachowam go

1 polubienie

@Bart, spojrzałem na makro, które zrobiłeś.

 

Cóż, oczywiście mój kod "If Strings.Left(sConfigName, PathSize - 15) <> "SM-FLAT-PATTERN" " nie działa dobrze (jeśli w ogóle).

 

Z drugiej strony, dla przypomnienia, bądź ostrożny w swojej konstrukcji. VBA ma swoją własną funkcję do zrobienia i jeśli zamienisz 2 linie, może to zadziałać lub nie ;)

 

Kiedy to zrobisz

Jeśli Strings.Left(sConfigName, PathSize - 15) = "SM-FLAT-PATTERN" Then
PathNoExtension = Strings.Left(FilePath, PathSize - 6)
       bRet = swModel.ExportFlatPatternView(NewFilePath, 1)
       NewFilePath = PathNoExtension + sConfigName & ". DXF"

Zasadniczo prosisz go, aby sprawdził, czy w nazwie jest SM-FLAT-PATTERN

Usuń 6 znaków z rozszerzenia

Tworzenie rozwiniętego

Dajesz możliwość dostępu.

 

Ale powinniśmy to robić w ten sposób 

 

PathNoExtension = Strings.Left(FilePath, PathSize - 6)
If Strings.Left(sConfigName, PathSize - 15) <> "SM-FLAT-PATTERN" Then
       NewFilePath = PathNoExtension + sConfigName & ". DXF"
       bRet = swModel.ExportFlatPatternView(NewFilePath, 1)

Usuń 6 znaków z nazwy

Jeśli nazwa konfiguracji jest inna (<>) niż Flat Patterne

Podaj ścieżkę do rekordu

Tworzenie rozwiniętego

3 polubienia

Poszedłem spać o 1 w nocy.

 

Dużo o tym mówię, to zaczyna się pojawiać... ^^

 

Zrobiłem składankę wszystkich twoich makr, wziąłem to, co było interesujące.

Wszystko działa idealnie, z wyjątkiem tego płaskiego wzoru.

 

Właściwie nie potrzebuję nazwy części, wystarczy pobrać nazwę konfiguracji, aby wyszukać tę nazwę "SM-FLAT-PATTERN" i usunąć te znaki.

 

Z formułą "jest XXX jak to idź do", Sw eksportuje tylko konfiguracje w płaskim wzorze, więc dokładnie to, czego chcę. Wszystko, co pozostaje do zrobienia, to wyczyszczenie nazwy pliku.

1 polubienie

Witam

Opublikuj najnowszą wersję swojego kodu w TXT, jeśli potrzebujesz pomocy :)

 

1 polubienie

Aby uzyskać właściwą ścieżkę, musisz dokonać małej modyfikacji...

patrz załączone.

 


export-config.txt
2 polubienia

50 odpowiedzi! Oto jest pytanie! =)

 

Oto, gdzie jestem w skali makro.

 

To są linie, które muszę zmienić:

PathNoExtension = Strings.Left(ŚcieżkaPliku, RozmiarŚcieżki - 6)
       NewFilePath = ŚcieżkaNoExtension & ". DXF"

Ścieżka do pliku to nazwa części, ale nie chcę tego, chcę tylko nazwę konfiguracji (sConfigName) i usuń "SM-FLAT-PATTERN"

Wiem, bredzę....^^

 

Jeszcze raz dziękuję w każdym razie! Bez Was nie wiem, jak bym to zrobiła!

Z drugiej strony, aby zapisać najlepszą odpowiedź, będzie to bawełna....^^


macro.txt
2 polubienia

Aha chcesz tylko nazwę configu?

Więc wymień linię 

NewFilePath = ŚcieżkaNoExtension & ". DXF"

przez

NewFilePath = Left(FilePath, InStrRev(FilePath, "\")) & sConfigName & ". DXF"

 

Edycja: z makrem wyczyszczonym w PJ


macro-dxf-bart.txt
3 polubienia

Jeśli wstawię sCofigName + dxf, poda mi nazwę konfiguracji (1548SM-FLAT-PATTERN) + dxf

 

Próbowałem, ale to nie działa, dlaczego nie możemy umieścić

PathNoExtension = (sConfigName) , Pathsize -15 ? czy coś w tym stylu

2 polubienia

Tak, przepraszamy, oto poprawione makro!

Składnia:

        NewFilePath = Left(FilePath, InStrRev(FilePath, "\")) & left(sConfigName, len(sConfigName)- 15) & ". DXF"
 

 


macro-dxf-bart.txt
2 polubienia

Dziękuję Lucas! =) Nikiel taki!

Na koniec dziękuję wszystkim!!

 

Cóż, powiesz mi, że jestem nudny, ale chciałbym dodać jeszcze jeden krok................ :s

 

Tuż przed nazwą konfiguracji chciałbym dodać typ części (Typ 1, Typ 2 itp...)

Ten typ jest właściwością osobistą, która jest widoczna w rodzinie części.

Zmodyfikowałem więc kod makra, aby dodać ten krok, ale nieuchronnie zawiesza się! ^^

 

Po złożeniu obietnicy zamknę pytanie! :D


macro_final.png
1 polubienie

Czy uruchamiasz to z mapy czy z 3D?

Edytuj, spróbuj tego (dodaj pierwsze dwie linie i zmodyfikuj 3. z istniejącej): 

Przyciemnij TYP jako ciąg

 

TYPE = SWmoddoc.GetCustomInfoValue("", "type")

NewFilePath = Left(FilePath, InStrRev(FilePath, "\")) & TYPE & left(sConfigName, len(sConfigName)- 15) & ". DXF"

2 polubienia

Z 3D

 

Kiedy wstawiam Dim TYPE, mówi mi "Oczekiwany błąd ocmpilacji: Identyfikator)

To samo dotyczy drugiej linii :/

1 polubienie

O tak, przepraszam, że "typ" jest zarezerwowany w VBA! Zamiast tego wpisz TYP:

Dim TYP as string

TYP = SWmoddoc.GetCustomInfoValue("", "typ")

NewFilePath = Left(FilePath, InStrRev(FilePath, "\")) & TYP & left(sConfigName, len(sConfigName)-15) & ". DXF"

 

Edit: swoją drogą, dokładna nazwa Twojej nieruchomości to "typowa"?

3 polubienia

Dokładna nazwa właściwości to TYPE

 

Zwraca wartości takie jak 1 lub 2 lub 3 itp.

Aby dostać się na końcu: T1 Lg 1250.dxf

 

Błąd kompilacji: Zmienna swmoddoc nie jest ustawiona

W co się ubrać?

Dim Swmoddoc As ...........