Main Content

jc_0904: Prohibition of overlap/intersection of states and transition lines

Since R2024b

Guideline Publication

Control Algorithm Modeling Guidelines - Using MATLAB®, Simulink®, and Stateflow®

Sub ID Recommendations

  • NA-MAAB — a, b

  • JMAAB — a, b

MATLAB Versions

All

Rule

Sub ID a

States, graphical functions, Simulink functions, MATLAB functions, truth tables, boxes, junctions, annotations, or text labels shall not overlap.

Custom Parameter

Not Applicable

Exceptions

Exceptions apply in any of the following cases:

  • Overlapping of parent and child in hierarchical modeling, provided that the child is contained within the parent's frame.

    • Modeling with hierarchical states (overlap with superstates)

    • Modeling with graphical functions overlap with graphical function frames

  • States and their labels must fit within the state frame. Likewise for graphical functions, Simulink functions, MATLAB functions, truth tables, and boxes.

Supplement

Some combinations, such as the overlap of states, may result in errors.

Example — Correct

State labels do not overlap.

Example — Incorrect

State labels, etc. are overlapping.

Sub ID b

Transition lines shall not overlap or intersect with states, graphical functions, Simulink functions, MATLAB functions, truth tables, boxes, junctions, annotations, text labels, or other transition lines.

Custom Parameter

Not Applicable

Exceptions

Exceptions apply in any of the following cases:

  • Overlapping of parent and child in hierarchical modeling, provided that the child is contained within the parent's frame.

    • Modeling with hierarchical states (overlap with superstates)

    • Modeling with graphical functions overlap with graphical function frames

Example — Correct

Since this is an intersection for crossing state hierarchies, it does not violate the rules.

Example — Incorrect

This transition line intersects with the state.

Rationale

Sub IDs a, b:

  • Deviation reduces readability.

Last Changed

R2024b

Version History

Introduced in R2024b