Gleichung iff

 Hallo zusammen ,
Ich habe ein kleines Problem, ich kann   keine Gleichung auf Solidworks erstellen .  Lassen Sie mich das erklären.
Ich habe eine Variable, die = -50 sein muss, wenn eine Komponente gerade ist , und = 0  , wenn die Komponente ungerade ist .       
Also habe ich es versucht: IFF("component"=2, -50,0)  und kein Ergebnis, ich trockne.  

Beispiel


equation.png

Hallo

Ist es möglich, eine Familie von Teilen zu erstellen, weil es mit Excel einfacher ist?

Möge die Macht mit euch sein.

 

2 „Gefällt mir“

Wenn man sich die Liste der SOLIDWORKS Funktionen ansieht, scheint dies nicht möglich zu sein:

SW-Funktionen

Andernfalls genügt ein Makro oder eine Familie von Teilen, um den 'mod'-Operator zu verwenden, und Sie sind fertig:

Mod-Operator

Hallo

Im SOLIDWORKS Dokument

Visual Basic If-Funktion

Sie können auch die If-Funktion in Visual Basic verwenden, indem Sie eine Dimension in einer Vorlage angeben.

Diese Funktion gibt alle anderen Werte basierend auf der Auswertung eines Ausdrucks zurück.

Wenn also die angegebene Gleichung "D1@Sketch1" = (Wenn("D1@Sketch4">15, 20, 10)) + 8 ist, dann :

Wenn "D1@Sketch4" ...Dann wird "D1@Sketch4">15, 20, 10 aufUnd "D1@Sketch1" ist auf ...
> 152028
<= 151018

Herzliche Grüße

Alan

1 „Gefällt mir“

Hallo

Ich denke, das Problem kommt von der Berechnung der Berechnung. Lassen Sie mich erklären, wenn ich ein if dieses Typs auf eine manuell geänderte globale Variable aufnehme, wird es korrekt angewendet.

Für die Gleichung im Screenshot wartet die Berechnung darauf, dass die vorherige Gleichung gelöst wird, daher habe ich Zweifel an ihrer Anwendung in der Dynamik. Ein wenig Strg+Q löst das Problem nicht?

Vielen Dank für Ihre Hinweise, ich weiß nicht genug über das Thema, um Ihren Rat anzuwenden, ich werde das Thema Zimmerfamilien später untersuchen.

Wie auch immer meine Gleichung funktioniert, sie geht von IF zu IFF. Also wiederhole ich es für alle Werte, einschließlich der vorherigen Ergebnisse anstelle von 0. 

Vielen Dank für Ihre Antworten!