Hallo
Ik probeer de afmetingen van een kamer in SW te bepalen, daarbij verwijzend naar het feit dat ik VB.NET gebruik.
Ik wacht op uw hulp en dank u.
Hallo
Ik probeer de afmetingen van een kamer in SW te bepalen, daarbij verwijzend naar het feit dat ik VB.NET gebruik.
Ik wacht op uw hulp en dank u.
Hallo
Op een gegeven moment had ik een klein hulpprogramma gemaakt waarmee ik iets soortgelijks kon doen, zie HIER.
Vriendelijke groeten
Hier is nog een model dat, zoals gezegd, "zonder een Privilege-abonnement 1 maand kan worden gebruikt en getest.", zie HIER.
Vriendelijke groeten
En hier is een versie van het hulpprogramma dat ik had gemaakt, maar met de toevoeging van een knop om de voetafdruk te berekenen op het onderdeel of de assemblage die al in Solidworks is geladen.
Vriendelijke groeten
Hallo en bedankt voor je hulp,
het is niet precies dat, ik probeer de lengte en breedte (of diameter) van een onderdeel in SW te bepalen met behulp van de VB.NET-code.
Hallo
Waarschijnlijke vergissing van mijn kant, als ik het goed begrijp, probeer je dan VB.NET kansen te vergroten?
Vriendelijke groeten
Hallo
waar ik precies naar op zoek ben, is het bepalen van de lengte en diameter van een schroef in een assemblage op SW met behulp van VB.net, om ze later te gebruiken.
Hallo
Om dit te doen, kunt u de configuraties gebruiken. Je maakt je schroef en voor elke lengte of diameter maak je een extra configuratie.
Hallo
Ik begrijp de uiteindelijke behoefte niet echt, want voor schroeven, zoals ac cobra 427 zegt, is er de mogelijkheid om configuraties te gebruiken, of om de gereedschapskist te gebruiken. Als het nu gaat om het rijden van afmetingen op een SW-onderdeel, is het mogelijk om het te doen zoals hieronder.
Als we ervan uitgaan dat het in SW geladen onderdeel is samengesteld uit een "Boss.-Extru.1"-functie gemaakt van een "Sketch1"-schets waarin we de afmetingen "D1@Esquisse1" en "D2@Esquisse1" vinden voor breedte en lengte, en dat de diktedimensie van de extrusie "D1@Boss.-Extru.1" wordt genoemd, dan kunnen we ze als volgt controleren:
Dim swApp As Object
Dim Part As Object
Dim myDimension As Object
Dim boolstatus As Boolean
Sub main()
Set swApp = Application.SldWorks
Set Part = swApp.ActiveDoc
Set myDimension = Part.Parameter("D1@Esquisse1")
myDimension.SystemValue = 0.11
Set myDimension = Part.Parameter("D2@Esquisse1")
myDimension.SystemValue = 0.05
Set myDimension = Part.Parameter("D1@Boss.-Extru.1")
myDimension.SystemValue = 0.002
boolstatus = Part.ForceRebuild3(True)
Part.ClearSelection2 True
End Sub
Vriendelijke groeten
Hallo en bedankt voor je antwoord,
Het probleem is dat ik de afmetingen wil bepalen van de standaardelementen die zijn toegevoegd uit SW-bibliotheken (schroeven, moeren, enz.), zodat ik geen toegang heb tot hun schetsen.
Hallo
Wat bedoel je met standaardelementen die zijn toegevoegd uit de SW-bibliotheek? Kunt u een voorbeeld plaatsen van een onderdeel voor analyse?
Vriendelijke groeten
Hallo
Een voorbeeld is bijgevoegd.
Dus ik heb dit algoritme geprobeerd, maar ik kreeg geen resultaten:
swModel = swApp.ActiveDoc
swConfigMgr = swModel.ConfigurationManager
swConfig = swConfigMgr.ActiveConfiguration
Dim swDocExt als ModelDocExtension
Dim boo als Booleaanse
swModel.ClearSelection2(Waar)
swDocExt = swModel.Extension()
boo = swDocExt.SelectByID2("part@assembly", "COMPONENT", 0, 0, 0, True, 1, Nothing, 0)
Dim strCompModelname2 als tekenreeks
strCompModelname2 = "deel.sldprt"
swModel = swApp.ActiveDoc
swDim = swModel.Parameter(strCompModelname2)
vConfigNameArr = swModel.GetConfigurationNames
Voor elke vConfigName in vConfigNameArr
sSpecConfigNameArr(0) = vConfigName
vSpecConfigNameArr = sSpecConfigNameArr
vDimValArr = swDim.GetValue3(swInConfigurationOpts_e.swSpecifyConfiguration, vSpecConfigNameArr)
Debug.Assert(0 = UBound(vDimValArr))
Voor elke vDimVal In vDimValArr
Debug.Print(" " & vConfigName & " -->" & vDimVal)
Volgend
Volgend
Hallo
Met " Kunt u een voorbeeld van een onderdeel voor analyse plaatsen?", Bedoelde ik een van uw stukken in sldprt formaat, niet een jpeg afbeelding!
Vriendelijke groeten
Hallo
Dat is wat ik vermoedde, dit zijn geïmporteerde onderdelen, dus u zult geen offertes kunnen vinden aangezien die er niet zijn:
Vriendelijke groeten
Hallo
Om schetsen in een geïmporteerde body mogelijk te maken, kunt u Featurworks gebruiken , die alle functies van een onderdeel herkent...
Het is een mogelijkheid, maar gezien het onderdeel denk ik dat het beter is om het volledig opnieuw op te bouwen, het zal de verdienste hebben dat het volledig beperkte schetsen en iets meer "intelligente" functies heeft.
Of neem een deel uit de Toolbox als er een equivalent is.
Voor de featureWorks moet je eerst de "Body-Move" move-functie verwijderen, anders is FeatureWorks niet bruikbaar:
Vriendelijke groeten
Hallo
Ik heb "Body-Move" verwijderd, vervolgens heb ik op featureworks geklikt - herken de functies ...
er wordt een foutmelding weergegeven "afbeelding", en als ik op ok klik, sluit de SW zichzelf.
Hallo
Het lijkt niet van uw kant te komen (behandeling gedaan op SW 2017):
Dus zie over uw instellingen of uw installatie van SW (welke versie?)
Vriendelijke groeten
Hallo
Het lukte me om de schets van de onderdelen te bekijken.
Het probleem is nu om de lengte van een geselecteerd onderdeel te bepalen door middel van de schets.
Ik ga je een voorbeeld laten zien van een algoritme dat ik heb getest, maar zonder enig resultaat:
1 /
Dim vDimVal als object
Dim deel als ModelDoc2
Deel = swApp.ActiveDoc
Dim swDim als dimensie
swDim = Deel.Parameter("D2@Esquisse1@part1@assembly")
vDimVal = swDim.GetSystemValue3(swInConfigurationOpts_e.swThisConfiguration, niets)
vDimVal = swSelMgr.GetSelectedObject6(1, -1)
MsgBox(vDimVal)
resultaat = lege doos