exponenta event banner

findLabel

(Не рекомендуется) Получить метку файла проекта

simulinkproject не рекомендуется. Использовать currentProject или openProject вместо этого. Дополнительные сведения см. в разделе Вопросы совместимости.

Описание

пример

label = findLabel(file,categoryName,labelName) возвращает метку и прикрепленные к ней данные для метки labelName в категории categoryName который присоединен к указанному file или файлы. Используйте этот синтаксис, если известны имя метки и категория.

пример

label = findLabel(file,labelDefinition) возвращает метку файла и прикрепленные к ней данные для имени метки и категории, указанных в labelDefinition. Используйте этот синтаксис, если ранее был labelDefinition путем доступа к Labels свойство, например, использование такой команды, как myfile.Labels(1).

пример

label = findLabel(category,labelName) возвращает определение метки в этой категории, указанное в labelName. Возвращает пустой массив, если метка не найдена.

Примеры

свернуть все

Поиск всех файлов проекта с определенной меткой.

Откройте проект планера и создайте объект проекта.

sldemo_slproject_airframe;
proj = simulinkproject;

Получение списка файлов проекта.

files = proj.Files;

Закольцовывайте каждый файл. Если файл имеет расширение .m, прикрепить этикетку Utility.

for fileIndex = 1:numel(files)
   file = files(fileIndex);
   [~, ~, fileExtension] = fileparts(file.Path);
   if strcmp(fileExtension,'.m')
      addLabel(file,'Classification','Utility');
   end
end

Найти все файлы с меткой Utility и добавить их в список, возвращенный в utility_files_to_review.

utility_files_to_review = {};
for jj=1:numel(files)
   this_file = files(jj);
   
   label = findLabel(this_file,'Classification','Utility');
      
   if ( ~isempty(label))
      % This is a file labeled 'Utility'. Add to the 
      % list of utility files.
      utility_files_to_review = [utility_files_to_review; this_file];
   end
end

Откройте проект планера и создайте объект проекта.

sldemo_slproject_airframe;
proj = simulinkproject;

Получить конкретный файл по имени.

myfile = findFile(proj,'models/AnalogControl.slx');

Получить метку по имени.

label = findLabel(myfile,'Classification','Design');

В качестве альтернативы изучите Labels свойство файла для получения массива объектов Label, по одному для каждой метки, присоединенной к файлу.

labels = myfile.Labels

Выполните индексирование в свойство Labels, чтобы получить метку, присоединенную к конкретному файлу.

labeldefinition = myfile.Labels(1)

После получения определения метки из свойства «Метки» ее можно использовать с findLabel.

label = findLabel(myfile,labeldefinition);

Откройте проект планера и создайте объект проекта.

sldemo_slproject_airframe;
proj = simulinkproject;

Получить категорию.

category = proj.Categories(1)
category = 

  Category with properties:

                Name: 'Classification'
            DataType: 'none'
    LabelDefinitions: [1x8 slproject.LabelDefinition]

Получение определения метки.

ld = findLabel(category,'Design')
ld = 

  LabelDefinition with properties:

            Name: 'Design'
    CategoryName: 'Classification'

Входные аргументы

свернуть все

Файл для поиска меток, указанных как объект файла или массив объектов файла. Объект файла можно получить, проверив свойство Files проекта (proj.Files) или использовать findFile чтобы получить файл по имени. Файл должен находиться в проекте.

Имя родительской категории для метки, указанное как символьный вектор.

Имя метки для получения, указанное как символьный вектор.

Имя метки для получения, указанное как объект определения метки, возвращаемый file.Label собственность.

Категория меток, указанная как объект категории. Получение объекта категории из proj.Categories свойство или с помощью findCategory.

Выходные аргументы

свернуть все

Метка, возвращенная как объект метки.

Вопросы совместимости

развернуть все

Не рекомендуется начинать с R2019a

См. также

Функции

Представлен в R2013a