Dobry wieczór, aby poprawić makro zapisu rysunku w pdf, chciałbym odzyskać właściwość części zawartej w rysunku. Zaznaczam, że tej właściwości nie ma w pliku slddrw.
Jeśli niektóre; ktoś może mi pomóc, nie mogłem nic znaleźć na forum, z góry dziękuję.
Witaj fifounet44,
Czy na pewno dobrze szukałeś? Wszystko znajdziecie na naszym zaprzyjaźnionym forum :)
Zajrzyj tutaj.
Pozdrowienia
5 polubień
Można to łatwo zrobić za pomocą mycadtools.
4 polubienia
Dziękuję droger,
Próbuję w porze lunchu, nie zawsze łatwo jest wyszukać, wszystko zależy od terminów, których należy szukać, łatwiej, gdy sam uczestniczyłeś w poście!
Powinienem był wyszukać "makro+droga"
;-D A+
1 polubienie
Dziękuję Wam wszystkim,
Po zhakowaniu kodu gdm działa! Wszystko, co pozostało do zrobienia, to "wyczyścić" mój kod i jest dobrze.
Cześć, myślę, że możliwe jest otwarcie pokoju bez jego wyświetlania, szukałem, ale nie znalazłem nic przekonującego na forum.
Dziękuję za wskazanie mi właściwego kierunku.
Witam
Oto mały przykład:
Option Explicit
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swDrawModel As SldWorks.ModelDoc2
Dim swDraw As SldWorks.DrawingDoc
Dim swView As SldWorks.View
Dim swModelDocExt As ModelDocExtension
Dim strRefModelPath As String
Dim configname As String
Dim bRet As Boolean
Dim nErrors As Long
Dim nWarnings As Long
Dim swCustProp As CustomPropertyManager
Dim val As String
Dim valout As String
Set swApp = CreateObject("SldWorks.Application")
Set swModel = swApp.ActiveDoc
Set swDraw = swModel
Set swView = swDraw.GetFirstView
While Not swView Is Nothing
strRefModelPath = swView.GetReferencedModelName
configname = swView.ReferencedConfiguration
Set swDrawModel = swApp.OpenDoc6(strRefModelPath, swDocPART, swOpenDocOptions_Silent, "", nErrors, nWarnings)
If Not swDrawModel Is Nothing Then
Set swModelDocExt = swDrawModel.Extension
Set swCustProp = swModelDocExt.CustomPropertyManager(configname)
bRet = swCustProp.Get4("TEST", False, val, valout)
Debug.Print "valeur évaluée : " & valout
End If
Set swView = swView.GetNextView
Wend
End Sub
Pozdrowienia
2 polubienia
Dobry wieczór
Bardzo dziękuję drogue, właśnie wszystko przerobiłem i działa idealnie bez otwierania modelu 3d.
Z drugiej strony nie widzę sensu zapętlania konfiguracji, ponieważ pobiera to właściwość "Index" => (valout) ostatniej znalezionej konfiguracji. Moim celem jest porównanie indeksu 3D z indeksem MeP przed dodaniem go do nazwy pliku i zapisaniem jako pdf.
Może to być przydatne, jeśli indeks był omyłkowo różny między 2 konfiguracjami, co nie ma miejsca w naszym zarządzaniu 3D. w przeciwieństwie do "starych" MeP, które nie zawsze są na ostatnim indeksie 3D.
Z poważaniem.
To tylko przykład, który ci podałem, nie znając tak naprawdę twojej prawdziwej potrzeby... Przykład, na którym nie zapętlam się w configach, ale w widokach rysunkowych, co też niekoniecznie jest przydatne ... W ten sam sposób, w jaki ten przykład działa tak, jak jest, jeśli referencyjny model 3D jest częścią, w przeciwnym razie należy wprowadzić pewne modyfikacje...
Krótko mówiąc, tylko przykład, aby zobaczyć, jak rozwiązać problem określony w Twoim pytaniu.
Pozdrowienia
2 polubienia
Witam, Rzeczywiście, nie dałem ci żadnych wskazówek o mojej potrzebie! przepraszam, że się zgubiłem... I odpowiedziałeś na problem postawiony w pytaniu, jak zwykle powiem.
Do zestawów chyba trzeba zmienić swPART na swASSEMBLY?
Robię kilka testów i na pewno wrócę po cenne rady ;-)
Ciesz się NAMI
1 polubienie
Witam, Po kilku pozytywnych testach dołączam do makro, liczę na to, że je poprawicie bo myślę, że da się to uprościć, ale jak działa to już nie śmiem tego dotykać...
zapisz-pdf-dxf.swp
Dobry wieczór
Przychodzę trochę po bitwie, ale jeśli wskazówka znajduje się w podlinkowanej notatce w kartuszu, to można było polegać na tej notatce , zamiast przesłuchiwać 3D.
Upraszcza to operację i nie zależy od typu łączonego pliku.
Dobry wieczór Cyryl, no nie, to jest pb, mamy wiele ujęć, których indeks został "wymuszony", podczas gdy 3ds są dobrze poprawione i zindeksowane, dlatego umieściłem różnicę w wiadomości, więc wsadziliśmy prawy indeks z powrotem do MeP, Jest to oczywiście pokręcone, ale radzimy sobie z tym.
1 polubienie
Witaj fifounet44,
Ogólnie rzecz biorąc, spełnia swoje zadanie, nadal brakuje mu zarządzania możliwymi błędami, ale powtarza się we wszystkich makrach, które możemy zobaczyć ...
Pomyśl o zamknięciu tematu...
Pozdrowienia
3 polubienia