Аннотации являются визуальными элементами, которые можно использовать, чтобы добавить описательные примечания и выноски к модели. В дополнение к аннотациям только для текста можно создать аннотации что:
Открытые веб-сайты
Выполните MATLAB® команды
Изображения на дисплее
Визуально дифференцируйте области блок-схем
Следующие примеры показывают, как программно создать, отредактировать, и удалить аннотации.
Программно создайте, измените и просмотрите аннотацию.
Откройте новую модель.
open_system(new_system)
Создайте аннотацию со свойствами по умолчанию с помощью Simulink.Annotation
функция.
a = Simulink.Annotation(gcs,'This is an annotation.');
После создания аннотации используйте запись через точку, чтобы установить значения свойств. Например, примените шрифт с 18 точками и голубой фон к аннотации.
a.FontSize = 18;
a.BackgroundColor = 'lightBlue';
Чтобы просмотреть и кратко подсветить новую аннотацию, используйте view
функция.
view(a)
Программно найдите и измените свойства аннотации.
Откройте vdp
модель.
vdp
Чтобы найти аннотации в модели, используйте find_system
функция.
h = find_system(gcs,'FindAll','on','Type','annotation');
Чтобы идентифицировать аннотации, запросите текст в аннотациях при помощи get_param
функция.
get_param(h,'PlainText')
ans = 2x1 cell
{'Copyright 2004-2020 The MathWorks, Inc.'}
{'van der Pol Equation' }
Предположим, что вы хотите применить голубой цвет фона к 'van der Pol Equation'
аннотация.
Получите Simulink.Annotation
объект путем определения соответствующего индекса массива.
a = get_param(h(2),'Object');
Используйте запись через точку, чтобы установить значение BackgroundColor
свойство.
a.BackgroundColor = 'lightBlue';
Программно удалите аннотацию.
Откройте vdp
модель.
vdp
Чтобы получить указатели для аннотаций в модели, используйте find_system
функция.
h = find_system(gcs,'FindAll','on','Type','annotation');
Чтобы идентифицировать аннотации, запросите текст в аннотациях.
get_param(h,'PlainText')
ans = 2x1 cell
{'Copyright 2004-2020 The MathWorks, Inc.'}
{'van der Pol Equation' }
Удалить заголовок модели ('van der Pol Equation'
), получите Simulink.Annotation
объект, который соответствует второму указателю.
a = get_param(h(2),'Object');
Удалите аннотацию из модели.
delete(a)
Для аннотаций обогащенного текста можно использовать форматирование HTML, чтобы добавить гиперссылку на текст в рамках аннотации.
Откройте новую модель.
open_system(new_system)
Создайте две аннотации, переместив одну из аннотаций так, чтобы она не перекрывала другой.
a1 = Simulink.Annotation(gcs,'This is an annotation.'); a2 = Simulink.Annotation(gcs,'This is another annotation.'); a2.Position = [0 20 28 34];
Чтобы создать гиперссылку в аннотации, установите Interpreter
к 'rich'
и задайте гиперссылку в Text
свойство.
a1.Interpreter = 'rich'; a1.Text = 'Go to <a href="www.mathworks.com">www.mathworks.com</a>.';
Можно также встроить функции MATLAB в гиперссылку.
a2.Interpreter = 'rich'; a2.Text = '<a href="matlab:magic(4)">Generate magic square</a>.';
Для получения дополнительной информации см. Создание гиперссылок который Функции Запуска.
Добавьте изображение в свою модель, такую как логотип, путем создания аннотации только для изображения.
Откройте новую модель и создайте аннотацию в нем.
open_system(new_system)
a = Simulink.Annotation(gcs,'This is an annotation.');
Измените аннотацию, чтобы отобразить только заданное изображение.
img = fullfile(matlabroot,'toolbox','matlab','imagesci','peppers.png'); setImage(a,img)
Создайте аннотацию области в модели.
Откройте vdp
модель.
open_system('vdp')
Создайте область, которая включает некоторые блоки в модели.
add_block('built-in/Area','vdp/This is an area','Position',[120,100,230,200])
Чтобы создать аннотации, которые могут быть легко скрыты, создайте аннотации разметки.
Откройте новую модель.
open_system(new_system)
Создайте две аннотации и переместите вторую аннотацию так, чтобы она не перекрывала первую аннотацию.
a1 = Simulink.Annotation(gcs,'This is a model annotation.'); a2 = Simulink.Annotation(gcs,'This is a markup annotation.'); a2.Position = [0 20 28 34];
По умолчанию вы создаете аннотации модели, которые появляются в модели.
Измените вторую аннотацию в аннотацию разметки.
a2.MarkupType = 'markup';
Сконфигурируйте текущую модель, чтобы скрыть аннотации разметки.
set_param(gcs,'ShowMarkup','off');
Обе аннотации остаются, несмотря на скрытую аннотацию разметки.
ah = find_system(gcs,'FindAll','on','Type','annotation'); at = get_param(ah,'Text')
at = 2x1 cell
{'This is a markup annotation.'}
{'This is a model annotation.' }
Если аннотация вызвала функцию обратного вызова выполняющегося в данного момента, используйте getCallbackAnnotation
определить, какая аннотация вызвала его. Функция возвращает соответствующий Annotation
объект. Эта функция также полезна, если вы написали функцию обратного вызова в отдельном файле MATLAB, который содержит несколько вызовов коллбэка.
add_block
| delete
(Annotation)
| setImage
(Annotation)
| view
(Annotation)
| Simulink.Annotation