Téma: Odsazení plochy – Flip - MůjSolidworks.cz
22. 1. 2010 v 6:55
Odsazení plochy – Flip #51742
swpavelapi
Člen
3 příspěvky
Níže můžete vidět kód, který vypíše a poté by měl také změnit směr odsazení plochy.
Kód by měl být správný, avšak po změně směru a zpětně po jeho vypsání, je dle výpisu směr „true or false“
jenže na modelu se obrácení směru nezmění! Prosím o radu, která by mi pomohla změnit směr odsazení plochy.
V případě zájmu mohu také s menšími problémy pomoci.
‚ Preconditions:
‚ (1) Model document is open.
‚ (2) Surface offset feature is selected.
‚ Postconditions: None
‚
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim swSelData As SldWorks.SelectData
Dim swOffset As SldWorks.SurfaceOffsetFeatureData
Dim swFeat As SldWorks.Feature
Dim swFace As SldWorks.Face2
Dim swEnt As SldWorks.Entity
Dim vFace As Variant
Dim i As Long
Dim bRet As Boolean
Set swApp = CreateObject(„SldWorks.Application“)
Set swModel = swApp.ActiveDoc
Set swSelMgr = swModel.SelectionManager
Set swSelData = swSelMgr.CreateSelectData
Set swFeat = swSelMgr.GetSelectedObject5(1)
Set swOffset = swFeat.GetDefinition
Debug.Print „File = “ & swModel.GetPathName
Debug.Print “ “ & swFeat.Name
Debug.Print “ Distance = “ & swOffset.Distance * 1000# & “ mm“
Debug.Print “ FacesCount = “ & swOffset.GetFacesCount
Debug.Print “ Flip = “ & swOffset.Flip
‚Tady mění směr odsazení a poté jej vypíše
swOffset.Flip = True
swOffset.Flip = False
Debug.Print “ Flip = “ & swOffset.Flip
swOffset.ReleaseSelectionAccess
End Sub
3. 2. 2010 v 21:27
Re:Re: Odsazení plochy – Flip #53612
ludvikv
Člen
1 příspěvek
Dobrý den,
do kódu je třeba přidat ještě příkaz pro změnu definice prvku: swFeat.ModifyDefinition swOffset.
Přidal bych ještě rozhodování směru odsazení viz code
Sub main()
Dim swApp As SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim swSelMgr As SldWorks.SelectionMgr
Dim swSelData As SldWorks.SelectData
Dim swOffset As SldWorks.SurfaceOffsetFeatureData
Dim swFeat As SldWorks.Feature
Dim swFace As SldWorks.Face2
Dim swEnt As SldWorks.Entity
Dim vFace As Variant
Dim i As Long
Dim bRet As Boolean
Set swApp = CreateObject(„SldWorks.Application“)
Set swModel = swApp.ActiveDoc
Set swSelMgr = swModel.SelectionManager
Set swSelData = swSelMgr.CreateSelectData
Set swFeat = swSelMgr.GetSelectedObject5(1)
Set swOffset = swFeat.GetDefinition
Debug.Print „File = “ & swModel.GetPathName
Debug.Print “ “ & swFeat.Name
Debug.Print “ Distance = “ & swOffset.Distance * 1000# & “ mm“
Debug.Print “ FacesCount = “ & swOffset.GetFacesCount
Debug.Print “ Flip = “ & swOffset.Flip
‚Tady mění směr odsazení a poté jej vypíše
‚Rozhodování podle směru
If 1 = swOffset.Flip Then
swOffset.Flip = False
ElseIf 0 = swOffset.Flip Then
swOffset.Flip = True
End If
Debug.Print “ Flip = “ & swOffset.Flip
‚ tady se aplikuje změna směru ofsetu
swFeat.ModifyDefinition swOffset, swModel, Nothing
swOffset.ReleaseSelectionAccess
End Sub
8. 2. 2010 v 6:44
Re:Re: Odsazení plochy – Flip #53611
swpavelapi
Člen
3 příspěvky
Rád bych touto formou poděkoval za radu panu Ludvíkovi. Doufám, že se toto fórum trochu rozroste a bude možné jej využít více. Pokud bych i já mohl být nějak nápomocen budu rád…
Odpověď na téma
Nejnovější články
-
Zúčastněte se největší české události o 3D tisku
-
Model Mania 2024: Změna návrhu #2
-
Model Mania 2024: Změna návrhu #1
-
Model Mania 2024: Postup modelování #3
-
Postup modelování příruby #5
-
Postup modelování příruby #4
-
Model Mania 2024: Postup modelování #2
-
Postup modelování příruby #3
-
Model Mania 2024: Postup modelování #1
-
Postup modelování příruby #2
Přidávat odpovědi k tématu mohou pouze přihlášení uživatelé.
Chcete-li napsat odpověď, přihlaste se nebo se zaregistrujte.