Vergelijking iff

 Hallo allemaal ,
Ik heb een klein probleempje, ik kan geen  vergelijking maken  op Solidworks.  Laat het me uitleggen.
Ik heb een variabele die = -50 moet zijn als een component even is . En = 0 als de component oneven is .       
Dus ik probeerde: IFF("component"=2, -50,0)  en geen resultaat, ik ben aan het drogen.  

voorbeeld


equation.png

Hallo

Is het mogelijk om een familie van onderdelen te maken omdat het met Excel eenvoudiger is.

Moge de kracht met je zijn.

 

2 likes

Kijkend naar de lijst met SOLIDWORKS-functies lijkt het niet mogelijk:

SW-functies

Anders, een macro of een familie van onderdelen om de 'mod'-operator te gebruiken en je bent klaar:

Mod-operator

Hallo

In het SOLIDWORKS-document

Visual Basic If-functie

U kunt ook de functie If in Visual Basic gebruiken door een dimensie op te geven in een sjabloon.

Deze functie retourneert elke andere waarde op basis van de evaluatie van een expressie.

Dus, als de opgegeven vergelijking "D1@Sketch1" = (If("D1@Sketch4">15, 20, 10)) + 8, dan geldt :

Als "D1@Sketch4" is ...Dan wordt "D1@Sketch4" >15, 20, 10 ingesteld opEn "D1@Sketch1" is ingesteld op ...
> 152028
<= 151018

Vriendelijke groeten

Alan

1 like

Hallo

Ik denk dat het probleem voortkomt uit de berekening van de berekening. Laat me het uitleggen, als ik een als van dit type maak op een handmatig gewijzigde globale variabele, wordt deze correct toegepast.

Voor de vergelijking in de schermafbeelding wacht de berekening op het oplossen van de vorige vergelijking, dus ik heb twijfels over de toepassing ervan in de dynamiek. Een beetje Ctrl+Q lost het probleem niet op?

Bedankt voor je aanwijzingen, ik weet niet genoeg over het onderwerp om je advies toe te passen, ik zal het probleem van kamergezinnen later bestuderen.

Hoe mijn vergelijking ook werkt, hij gaat van IF naar IFF. Dus ik ga het herhalen voor alle waarden, inclusief de vorige resultaten in plaats van 0. 

Dank u voor uw antwoorden!