Creating custom material item types

If you have material items of different types in your model with specific custom attributes (width, length, processing cost, etc.) and you want them to look different at model runtime, you should create custom material item types and generate material items of different types in your model. This document describes how to do it.

 To define a custom material item type

  1. Drag the Material Item Type element from the Material Handling Library palette into the graphical editor.

  2. The New agent wizard will open. 
  3. On the first page of the wizard, specify Agent type name (e.g. Box). Click Next to proceed to the next step.

  1. Choose animation for the material item of this type. If you want the material items to be animated both in 2D and 3D, choose 3D and select 3D animation shape from the list below. Otherwise, select 2D and select the figure suiting your needs from the list. Alternatively you can choose None and define animation shape later.

  2. Here you can define the parameters of the material item. Click < add new... > and specify the parameter's name, its type and default value. To remove a parameter from the list, click the button. You can always add more parameters onto the material item diagram after you finish creating it. 

  1. Click Finish. AnyLogic will automatically open the diagram of the new material item type. You can find the animation figure in the axis origin.

Material item type properties

General

Name - The name of the material item type.
 Since AnyLogic generates Java class for each material item type, you should follow Java naming guidelines. Please start name with an uppercase letter. 

Ignore - If selected, the material item type is excluded from the model.

Parameters preview

Parameters preview properties are available only when this material item type has any parameters.
Here you can rearrange parameters of this material item. Material items of this type will list parameters in their property view in this well-defined order. 

Agent actions

The parameters in this section are derived from agent type and are rarely used for material item. For details refer here.

Agent in flowcharts

Use in flowcharts as - Here you choose the role for this agent in the flowcharts. To enable using this agent as material item in the blocks of the AnyLogic Material Handling Library, leave the Material item option selected.

On enter flowchart block - Here you can write the code to be executed when this material item enters the flowchart.

On exit flowchart block - Here you can write the code to be executed when this material item exits the flowchart.

On seize resource - Here you can write the code to be executed when this material item seizes the resource while being in the flowchart.

On release resource - Here you can write the code to be executed when this material item releases the resource while being in the flowchart.

Dimensions and movement

Length - The length of the material item.

Width - The width of the material item.

Height - The height of the material item.

Initial speed - [Visible if Space type is Continuous or GIS] The speed of the material item.

Rotate animation towards movement - [Visible if Space type is Continuous or GIS] The heading of the material item.

Rotate vertically as well (along Z-axis) - If selected, the material item shape will be headed towards the target during the material item movement.

Space and network

The parameters in this section are derived from agent type and are rarely used for material item. For details refer here.

Advanced Java

The parameters in this section are derived from agent type and are rarely used for material item. For details refer here.

Advanced

The parameters in this section are derived from agent type and are rarely used for material item. For details refer here.

Material item dimensions

Since material items are typically handled in the physical space (they are transported by conveyors and occupy a certain space on them), the dimensions of the material items are essential to obtain valid simulation results. The size of each material item is defined by three dimensions (length, width, height), which are set to 1 meter by default. Please refer here to know how to set and adjust material item dimensions.

Generating material items of a custom type and accessing custom material item attributes

To generate the material items of a custom type you should choose this type (e.g. Box) in the New agent parameter of the corresponding Source block (the property is located in the Agent section of the block's properties). This will make the flowchart use material items of this custom type, and you will be able to explicitly address the additional functionality of this material item type in the flowchart blocks.