Применение пользовательского макета к изображению в DigitalMicrograph GMS3

У меня есть изображение в DigitalMicrograph GMS3 (v 3.21.1374.0), к которому я применил пользовательскую панель данных (пытаюсь узнать, как это сделать с помощью скрипта здесь: добавить / применить пользовательскую панель данных к изображению в DigitalMicrograph GMS3)

У меня есть пользовательский макет, который я могу добавить вручную, выполнив следующие действия:

  1. Щелкните правой кнопкой мыши по изображению
  2. Наведите курсор на макет (в контекстном меню)
  3. Левый клик "Применить макет..."
  4. Выберите пользовательский макет в всплывающем диалоговом окне (тот, который я хочу, называется "CheckLayout")
  5. Нажмите ОК

Как мне сделать это с помощью скрипта? Я знаю, как получить изображение и отображаемые объекты, но это насколько я понимаю.

//main - get front image and apply custom layout
image Img := GetFrontImage()
imageDisplay imgDisplay = Img.ImageGetImageDisplay(0)

//apply custom layout to image here

Есть идеи?

1 ответ

Решение

Макет является свойством ImageDocument, а не изображения. Правильный способ сделать это (при условии, что существует макет имени 'MyLayout'):

ImageDocument doc = GetFrontImageDocument()
doc.ImageDocumentApplyLayout("MyLayout")

Вас могут дополнительно заинтересовать команды:

void ImageDocumentApplyLayout( ImageDocument, String )
void ImageDocumentRemoveDatabar( ImageDocument )
Number ImageDocumentGetLayoutCount( ImageDocument )
String ImageDocumentGetLayoutName( ImageDocument, Number )

как используется в

ImageDocument doc = GetFrontImageDocument()
number nLO = doc.ImageDocumentGetLayoutCount()
Result( "\n Layouts in document:" +  nLO )
For( number i=0; i<nLO; i++)
{
    string layoutName = doc.ImageDocumentGetLayoutName(i)
    Result( "\n\t"+i+":"+layoutName)
}
Другие вопросы по тегам