[MACRO][SW2013] Aandrijving van een extrusie van een assemblage

Hallo

Ik schrijf je omdat ik ondanks mijn onderzoek vastzit aan een automatiseringsproject in het kader van Solidworks 2013.

Ik ga de context weer op zijn plaats zetten:

Ik heb een macro gemaakt die een gebruikersformulier opent waarin de gebruiker verschillende gegevens invoert. Bij validatie, assemblage, een railsysteem, dit wijzigt door de lengte aan te passen. In feite neem ik de door de gebruiker gewenste lengte en verwerk ik een maximum aan "standaard" rails die een vaste lengte hebben. Dan blijft er nog een laatste stuk over dat op maat gemaakt moet worden.

Ik heb in mijn assemblage een "specifiek" stuk rail dat op de juiste plaats is geplaatst en waarop ik de lengte van de resterende waarde zou willen variëren (die ik ken, en die al gekoppeld is aan een variabele).

Ik heb dit op verschillende manieren geprobeerd:

  • Direct in de assemblage door ma_cote@ma_piece@mon_assemblage te selecteren
  • Door een part.editpart te doen, dan een modificatie en een part.editassembly

Heb je een idee wat ik moet doen of bij welke bestelling ik moet zijn? Of misschien is het onmogelijk?

Bij voorbaat dank als je een aanwijzing kunt bedenken:)

Vriendelijke groeten

Hallo

Heb je het over een normaal onderdeel of een virtueel onderdeel tijdens de montage?

Hallo!

De op maat gemaakte rail is een normaal onderdeel

Vriendelijke groeten

Dus je moet de kamer openen:

http://help.solidworks.com/2013/english/api/sldworksapi/Open_Document_Example_VB.htm

Een dimensie wijzigen:

http://help.solidworks.com/2013/english/api/sldworksapi/Change_Dimension_Example_VB.htm

En we kunnen dit op de achtergrond doen:

http://help.solidworks.com/2011/English/api/sldworksapi/Enable_Background_Processing_When_Opening_Drawing_Document_Example_VB.htm

 

2 likes

Fantastisch

Ik kijk er meteen naar en probeer 's middags terug te keren.

Vriendelijke groeten

1 like

Hallo

Ondanks mijn pogingen was ik niet in staat om de functies van .PL te gebruiken.

Ik kon nog steeds komen door een editpart te gebruiken dat er als volgt uitziet:

Part.Extension.SelectByID2("PREMIER_RAIL-1", "COMPONENT", 0, 0, 0, False, 0, Nothing, 0)
Deel.BewerkenDeel
MyDimension dimmen als object
Stel myDimension = Part.Parameter("D1@Boss.-Extru.1@PREMIER_RAIL. in. deel")
myDimension.SystemValue = Tekstvak15.Tekst / 1000
Deel.ClearSelection2 Waar
boolstatus = Deel.EditRebuild3()
Deel.BewerkenAssemblage

 

Hartelijk dank voor uw tijd en voor de informatie waarmee ik mijn zoekopdracht heb kunnen verbeteren

Als je je volledige macro in een tekstbestand kunt plaatsen, kan iedereen van je code genieten:)