Witam
Oto mój kod:
je le met dans un post suivant car on est limité à 6000 caractères sur le Forum
i wyjście:
A więc dwa problemy:
1- Jeśli nie zdefiniuję widoku w dataView(0), eksport woluminu zadziała, jeśli zdefiniuję go w następujący sposób:
'Variable pour l'export DXF/DXG
Dim varViews As Variant
Dim dataViews(2) As String
'Vues d'annotation que l'on veux exporter en DXF
dataViews(0) = "*Current"
dataViews(1) = "*Front"
dataViews(2) = "*DXF"
varViews = dataViews
Więc mój eksport już nie działa...
ElseIf flagTole = 0 Then 'Si on est en volumique:
'value = instance.ExportToDWG2(FilePath, ModelName, Action, ExportToSingleFile, Alignment, IsXDirFlipped, IsYDirFlipped, SheetMetalOptions, Views)
varViews = dataViews
swPart.ExportToDWG2 dxfFilePath, filePath, swExportToDWG_ExportAnnotationViews, False, varAlignment, False, False, 0, varViews
bRet = swPart.ExportToDWG2(dxfFilePath, filePath, swExportToDWG_ExportAnnotationViews, True, varAlignment, False, False, 0, varViews)
If bRet Then
Debug.Print "On a exporté la pièce de volumique en DXF: " & dxfFilePath
Else
Debug.Print ("Erreur enregistrement DXF: " & dxfFilePath)
End If
End If 'Fin du If flagTole
swPart.ExportToDWG2 --> zwraca wartość FALSE
Nawet jeśli umieszczę tylko widok z przodu...
Moim celem jest stworzenie widoku adnotacji o nazwie "DXF" w częściach objętościowych, które chcemy wysłać do cięcia. Rzeczywiście, niektóre są rysowane w kontekście montażu i dlatego nie koncentrują się na początku układu współrzędnych ani na podstawowych planach i w tym przypadku rysownik powinien wybrać widok, którego używa do cięcia. Trochę tak, jak podczas wykonywania operacji "Eksportuj powierzchnię" w DXF.
Nie mogę użyć: swExportToDWG_ExportSelectedFacesOrLoops dlatego, że nie sądzę, żebym mógł automatycznie znaleźć właściwą twarz.
(chyba, że mogę automatycznie wybrać ścianę, która ma największą powierzchnię.... ale hej, to nie jest świetne i może to być czasochłonne)
2- W przypadku części blaszanych dobrze eksportuję każdą konfigurację, działa fajnie. Z drugiej strony chciałbym mieć pewność, że wykorzystuje geometrię części w stanie rozwiniętym z funkcjami, które mamy skojarzone ze stanem rozwiniętym (w folderze stanu rozwiniętego). Ponieważ małe modyfikacje są często dokonywane tylko do cięcia, na przykład:
- Na końcu zagięć dodawane są małe ślady zagięcia
- Ukrywamy niektóre powierzchnie, takie jak pogłębiacze, które robimy w przeróbce, w przeciwnym razie otrzymujemy dxf z dwoma koncentrycznymi okręgami, a celem jest posiadanie tylko zamkniętych konturów.
W moim kodzie zamieszczonym powyżej przechodziłem przez konfiguracje, aby znaleźć FLATs, ale części arkusza blachy nie mają konfiguracji FLAT, dopóki nie utworzysz rysunku. Użycie swExportToDWG bardzo mi odpowiada, ponieważ nawet jeśli część nie ma konfiguracji rozwinięcia blachy, eksport jest wykonany dobrze.
Masz to, Twoje porady są mile widziane również w innych częściach kodu.
Dziękuję bardzo!