Solidworks, macro voor schaal

Hallo

Om in te gaan op mijn 1e vraag:

http://www.lynkoa.com/forum/2d/solidworks-macro-qui-pointe-vers-une-propriete#answer-641585

De door .PL voorgestelde macro werkt, maar met een "limiet" die ik graag zou willen verbeteren.

1) Deze macro bevat alleen gehele getallen, wat ingewikkeld is om bijvoorbeeld 1:2 schalen te maken. Ik zou graag een schaal van 0,5 willen kunnen invoeren en dat daar bij de macro rekening mee wordt gehouden.

2) De macro zoekt naar de waarde van de schaal in de bestandseigenschappen van het onderdeel in het tabblad "Aanpassen" met het type "Getal". Ik kan dus geen relatie maken tussen mijn $PROPRIETE@SCALE-eigenschap die wordt gegenereerd in "Configuration Specifiek" en niet in "Customize". Is het mogelijk om de bron van de macroschaal naar een "Tekst"-type te verwijzen? Op die manier kan ik een relatie maken tussen de twee tabbladen.

Bedankt

Hallo

 

Ik gebruik een klein stukje code voor het opschalen. Ik denk dat het voor jouw geval moet kunnen worden aangepast (ik doe alles in de auto, maar met een vragenbox op de weegschaal zou je dat moeten kunnen wijzigen)

 

Het verkrijgen van de huidige schaal in breukvorm (a:b)
Dim swView als SldWorks.Bekijk
Stel swView = swdoc in. GetFirstView (Engelstalig)
Dim ech As Variant
ech = swView.ScaleRatio

'We gaan op een schaal van 1:1
ech1 = swSheet.SetScale(1, 1; Waar, Waar)

'We keren terug naar de beginschaal, ech(0) voor teller en ech(1) voor noemer
ech1 = swSheet.SetScale(ech(0), ech(1); Waar, Waar)

1 like

Hallo coin37coin

Kun je me je macro laten doorgeven als een tekstbestand?

Ik kan het codefragment dat je me hebt gegeven met mijn macro niet wijzigen... (Ik ben niet zo goed in macro)

Kopiëren en plakken werkt niet? Uiteindelijk vindt u het in het bijgevoegde tekstbestand:)

 

Edit: zolang de wijziging voor uw macro, heb ik absoluut niet de bouw van het gevolgd. Dus ik weet niet echt waar je vandaan ging om waar heen te gaan. Het was slechts een stukje code om te zien hoe je de breuken in schaal kunt maken en deze in je VBA kunt interclaleren

Maar ik weet zeker dat @.PL je door de gevaarlijke meanders van zijn macro kunnen leiden


obtention_echelle_actuelle_en_format_fraction.doc
1 like

Hallo

Hier volgt een voorbeeld van configuratiespecifieke eigenschappen:

http://help.solidworks.com/2014/English/api/sldworksapi/Get_Custom_Properties_for_Configuration_Example_VB.htm

De gebruiksaanwijzing is:

 Set config = swModel.GetActiveConfiguration
 Stel cusPropMgr in = config. CustomPropertyManager

En dan denk ik dat het is:

    lRetVal = cusPropMgr.Get5("ADATE", False, ValOut, ResolvedValOut, wasResolved)
 

Zie hier:

http://help.solidworks.com/2014/English/api/sldworksapi/SolidWorks.Interop.sldworks~SolidWorks.Interop.sldworks.ICustomPropertyManager~Get5.html

En voor je probleem met gehele getallen, voeg dit aan het begin toe:

Dim dubbele schaal als

1 like

.PL

Het spijt me, maar er is niets gedaan... Mijn gebrek aan programmeerkennis is waarschijnlijk de schuldige.

Het probleem blijft altijd hetzelfde...

Het is oké, het werkt,

Een schets gebruiken als een schaal die als referentie dient in mijn bestandseigenschappen die ik kan beheren.