MIDILLI JSON File Definition
The program requires a JSON file to operate. An example file is provided above and can be modified according to the specific needs. A detailed explanation of the possible mandatory (represented in bold) and optional properties and parameters is given in the following table. The text enclosed in square brackets [] can be replaced if it starts with unique; otherwise, one of the provided options should be used (e.g., [uniquePartName]_[Side]).
Section | Property | Description | Parameter | Parameter description | Unit | Multiplicity |
---|---|---|---|---|---|---|
Generic | Specify generic properties | – | 1 | |||
Generic | width | The width of the box*. | – | cm | 1 | |
Generic | height | The height of the box*. | – | cm | 1 | |
[uniquePartName]_[Side] | Initiate creation of [Side] side of the part [uniquePartName]. Side can be: Top, Bottom, Left, Right, Back, Front. | – | 1-6 | |||
[uniquePartName]_[Side] | [uniqueComponentName] | A unique component name to create a hole or rectangular shape on the [uniquePartName] [Side]. | – | 0-* | ||
[uniquePartName]_[Side] | [uniqueComponentName] | – | location_x | X position of center of the [uniqueComponentName] relative to the [uniquePartName] [Side]. | cm | 1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | location_y | X position of center of the [uniqueComponentName] relative to the [uniquePartName] [Side]. | cm | 1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | drill_diameter | The diameter of the hole to open. Has priority over drill_width and drill_height. | cm | 1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | drill_width | The drill width of the rectangle to cut out. If drill_diameter is found, drill_width is ignored. Mandatory if drill_diameter is not used. | cm | 1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | drill_height | The drill height of the rectangle to cut out. If drill_diameter is found, drill_height is ignored. Mandatory if drill_diameter is not used. | cm | 1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | rotation | Clockwise rotation of the component (0-359). If call_name is set, text is also rotated around the component. Note: Text rotates only if rotation equals to one of the following values: 0, 90, 180, 270 | degree | 0-1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | call_name | Text to assign to the component. Placed using visible_height and visible_width as margin. See rotation for more info. | – | 0-1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | visible_diameter | If a recess is desired in the shape of a circle instead of a rectangle, this value must be specified. If this value is not found then visible height and visible_width values are used. | 0-1 | |
[uniquePartName]_[Side] | [uniqueComponentName] | – | visible_height | If the visible area of the component is not the same as the drill size, call_name uses this parameter to adjust the font margins keep the text above the visible section. If not found, drill_height is used. | cm | 0-1 |
[uniquePartName]_[Side] | [uniqueComponentName] | – | visible_width | If the visible area of the component is not the same as the drill size, call_name uses this parameter to keep the text horizontally centered with the component. If not found drill_width is used. | cm | 0-1 |
The text [uniquePartName] can be replaced with any name, brackets should be removed, e.g, MyPart
However, [Side] should be replaced with one of Top, Bottom, Left, Right, Back, Front. Note: each side may appear only once for a [uniquePartName] part, e.g., MyPart_Top or MyPart_Left. If any of the sides are missing it will not be created.