假如我们设计一个容器,容器的长度和宽度可以任意,但容器的高度由长度进行驱动。如果长度大于某个值,则高度就会取不同的值,面对这种情况,我们如何在SOLIDWORKS里实现呢?
一、if函数的语法
学过C语言小伙伴们都知道if语句,但是在SOLIDWORKS中使用if语句还是头一次听说吧。If语句非常有用也不难,大家不要担心,估计小伙伴心里开始吐槽:我是学SOLIDWORKS,你给我整编程!
为了便于理解,我们假设容器的三维尺寸为40x 60x20mm。我们的规则是:如果长度大于40,那么就将高度设置为20;如果长度小于等于40,那么就将高度设置为5mm。不同编程语言中if语句有不同的语法,这里的语法和Excel的编程语言类型。
if(Length>40,20,5)
意思是:如果(Length >40, 那么高度设置为20;否则使高度设置为5)
那么在SOLIDWORKS中,我们如何将它应用到容器来驱动高度?很简单。我们双击高度尺寸,然后在弹出的修改框中输入=,我们可以访问函数下拉列表,你会在函数下发现有if():
你可能会直接输入:Length>40,但是我们并没有定义长度(Length)作为一个全局变量,更简单的方法是在“修改尺寸”对话框窗口中键入if语句时,只需单击长度z(Length)这个尺寸即可输入。这是我得到的:
=if( "Length@草图1">40,20,5)
当我点击60这个尺寸时,它会自动写入“Length @ 草图1”到函数表达式中。
注意:建议在创建方程之前重命名尺寸,便于理解。
二、模型变化