Friday, December 30, 2011

Controlling Parameter and iProperty Values

We can use iLogic to help us enforce standards and other values I like to refer to as “tribal knowledge”. Having customized code trap errors in design to help prevent (or at least flag) those “freelance” design changes is a powerful and effective way of managing the expense of change at the earliest stages of the process and turning your 3D models into true knowledge assets.


In this example we have established the proper number of ribs needed for this model based on the material of the part and are enforcing them with a rule. We are also enforcing the overall size limits of the model so that the Length must be between 4” and 10” and the Width must fall between 2” and 3”. We’ll also have a rule that will enforce the increment value of Length and Width.

Wednesday, December 28, 2011

Compare values with iLogic–MinofMany and MaxOfMany



There are several functions in iLogic that help you compare values and allow you to make rule statements based on the evaluation.

Let’s start with a function that lets you find the minimum (or maximum) value in a list and act on that value


I want to evaluate the length and width of this model, determine which of those values is the smallest and use that value to drive the diameter of the hole based on a particular material value.

Tuesday, December 20, 2011

Use iLogic Code to Emulate a Table Driven Part or Assembly

 
Here is an interesting method for creating a "lookup table" using iLogic code without having to worry about managing or embedding external spreadsheets or dealing with iParts or iAssemblies.
This is a snapshot of the table we want to emulate. By selecting a number from the "Size" column a Minor Diameter and Major Diameter are determined and a Part Number is changed.



Monday, December 19, 2011

Using a While Loop to “Backsolve” a calculation.


For this experiment I have some geometry that must maintain a particular weight as my part changes. As features are added, subtracted or modified the diameter of the large outer cylinder is the variable that must change to meet the target weight.
To make it easy to modify the critical values of the part I've created a few user parameters and assembled them together in a nice tidy little form.