A modification of the "Highlight to Source" and "Highlight to Destination" functions useful in large block diagrams utilising buses.
The function uses undocumented properties TraceDestinationInputPorts and TraceSourceOutputPorts. Handle with care.
% myTraceSignal traces Simulink signals. Unlike the builtin
% "Highlight to Destination" it will only highlight signal
% routes which end on a non-virtual destination block (signal
% routes which end in e.g. a Terminator block, or signals which
% are never extracted from a bus will not be highlighted).
% out = myTraceSignal(direction,hBlock,porttype,sigidx,verbose)
% direction [char] 'forward' or 'back' (or 'f' or 'b')
% hBlock [handle] originating block
% porttype [char] 'inport' or 'outport' (or 'i' or 'o')
% sigidx [number] port index (optional, default ':' all ports)
% verbose [bool] command prompt text (optional, default true)
% Example - trace all signals entering the selected block
% (e.g. a BusCreator) to their destinations
% out = myTraceSignal('f',gcbh,'i');
% Note: Function is intended to trace signals (not buses) so, for example,
% for forward tracing use myTraceSignal('f',gcbh,'i') to trace destinations
% of signals entering a BusCreator, and use myTraceSignal('f',gcbh,'o')
% to trace destinations of signals leaving a BusSelector.
% Note: Goto blocks in back-trace are not highlighted (but the From-
% blocks and the lines are).