LIRA‑FEM API надає змогу керувати системою ВІЗОР з інших програм, наприклад, з Microsoft Excel, з використанням мов програмування, що підтримують технологію ActiveX чи COM, таких як Visual Basic Script, JavaScript, C#, Java, Visual Basic, Visual Basic.NET, C++, Delphi тощо.

Зміст


Швидкий старт: приклад використання LIRA-FEM API на мові JavaScript


Щоб використовувати LIRA-FEM API, не потрібні ніякі спеціальні програми, крім текстового редактора. Проілюструємо це покроковою інструкцією.

  1. Відкрийте програму Блокнот.
  2. Вставте в нього наступний текст:

     //Функція створення П-подібної рами 6х3 м
                function CreatePortalFrame6x3m()
                {
                    //Запускаємо ВІЗОР
                    var App = new ActiveXObject("LiraFem.Application");
                    //Створюємо в ньому нову розрахункову схему:
                    var Doc = App.CreateNewDocument();
                    //Створюємо і заповнюємо таблицю координат вузлів:
                    var kNodesTable = 2;
                    var Nodes = Doc.AllTables.CreateNewItem(kNodesTable);
                    var NodeCoords = [[1, 0.0, 0.0, 0.0], [2, 6.0, 0.0, 0.0], [3, 0.0, 0.0, 3.0], [4, 6.0, 0.0, 3.0]];
                    Nodes.SetContents(NodeCoords);
                    //Створюємо і заповнюємо таблицю елементів:
                    var kElsTable = 3;
                    var Els = Doc.AllTables.CreateNewItem(kElsTable);
                    var ElTypeNodes = [[1, 10, "1, 3"], [2, 10, "2, 4"], [3, 10, "3, 4"]];
                    Els.SetContents(ElTypeNodes);
                    //Переносимо таблиці в розрахункову схему
                    var strErrors1;
                    var strErrors2;
                    Nodes.Apply(strErrors1);
                    Els.Apply(strErrors2);
                }
                //Викликаємо функцію
                CreatePortalFrame6x3m();
    
  3. Оберіть команду Файл --> Зберегти, тип файлу Всі файли (*.*) і збережіть текст на робочому столі під іменем LiraFemApiTest.js.
  4. Виконайте подвійне клацання на файлі LiraFemApiTest.js, щойно записаному програмою Блокнот.

При виконанні файлу відбудеться запуск LIRA-FEM, і в ньому утвориться нова розрахункова схема, яка складатиметься з 4-х вузлів та 3-х елементів:

Рис.1

Рис.1

Знаючи об'єктну модель LIRA-FEM API (її опис наведений нижче), можна легко скласти програму на JavaScript. Але зручнішими можуть виявитися мови, які компілюють код на зразок C#, бо вони надають змогу переглядати інформацію про типи об'єктів LIRA-FEM API.


Створення геометрії П-подібної рами довжиною 6 та висотою 3 м на мові Visual Basic


При виконанні цього прикладу буде створена така сама рама, як і в попередньому прикладі, написаному на JavaScript. Для розробки програми на Visual Basic for Applications в цьому прикладі ми будемо використовувати Microsoft Excel.

  1. Запустіть Microsoft Excel.
  2. Натисніть Alt+F11, щоб відкрити VBA.
  3. В меню оберіть команду Tools --> References.
  4. У відкритому вікні References позначте прапорцем LIRA-FEM 2026 та натисніть OK. Тепер ви можете використовувати об'єкти LIRA-FEM API і переглядати їхні властивості і методи у вікні Object Browser (команда View --> Object Browser).
  5. Зробіть подвійне клацання на Лист1 у вікні Project.
  6. У відкритому вікні введіть наступну функцію і запустіть її на виконання клавішею F5.
' Функція створення П-подібної рами 6х3 м
Sub CreatePortalFrame6x3m()
    ' Запускаємо ВІЗОР
    Dim App As LiraApplication
    Set App = New LiraApplication
    
    ' Створюємо в ньому нову розрахункову схему:
    Dim Doc As LiraDocument
    Set Doc = App.CreateNewDocument()
    
    ' Створюємо і заповнюємо таблицю координат вузлів
    ' (для прикладу таблицю формуємо як табульований текст):
    Dim Nodes As LiraTable
    Set Nodes = Doc.AllTables.CreateNewItem(LiraTableEnum.kLiraTable_Nodes_Coordinates)
    
    Dim NodeCoords As String
    NodeCoords = _
    "1" & vbTab & "0" & vbTab & "0" & vbTab & "0" & vbCrLf & _
    "2" & vbTab & "6" & vbTab & "0" & vbTab & "0" & vbCrLf & _
    "3" & vbTab & "0" & vbTab & "0" & vbTab & "3" & vbCrLf & _
    "4" & vbTab & "6" & vbTab & "0" & vbTab & "3"
    
    Nodes.SetContents (NodeCoords)
    
    ' Створюємо і заповнюємо таблицю елементів
    ' (для прикладу таблицю формуємо як табульований текст):
    Dim Els As LiraTable
    Set Els = Doc.AllTables.CreateNewItem(LiraTableEnum.kLiraTable_Elements_TypeAndNumbersOfNodes)
    Dim ElTypeNodes As String
    ElTypeNodes = _
    "1" & vbTab & "10" & vbTab & "1, 3" & vbCrLf & _
    "2" & vbTab & "10" & vbTab & "2, 4" & vbCrLf & _
    "3" & vbTab & "10" & vbTab & "3, 4"
                   
    Els.SetContents (ElTypeNodes)
    
    ' Переносимо таблиці в розрахункову схему
    Dim Errs1 As String
    Nodes.Apply (Errs1)
    
    Dim Errs2 As String
    Els.Apply (Errs2)
End Sub

Створення геометрії П-подібної рами довжиною 6 та висотою 3 м, на мові C#


При виконанні цього прикладу буде створена така сама рама, як і в попередньому прикладі, написаному на JavaScript. Для розробки програми на C# в цьому прикладі ми будемо використовувати Microsoft Visual Studio. Її безкоштовну версію, Microsoft Visual Studio Community Edition, можна завантажити з веб-сайту microsoft.com.

  1. Запустіть Visual Studio.
  2. Створення нового проєкту.

    Оберіть пункт меню File --> New --> Project, оберіть тип проєкту Visual C# Console App. Ім'я проєкту Name вкажіть як LiraFemApiTest, а розташування Location – як ваш робочий стіл та натисніть OK.

    Рис.1

    Рис.2
  3. Додавання посилання на бібліотеку типів LIRA-FEM API.

    Перейдіть у вікно Solution Explorer і клацніть правою кнопкою миші на елементі References. У відкритому контекстному меню оберіть пункт Add Reference... На закладці COM оберіть рядок LIRA-FEM та натисніть OK.

    Рис.3

    Рис.3

    Якщо ви не бачите рядка LIRA-FEM в списку, отже бібліотека типів LIRA-FEM API не зареєстрована. Переустановіть LIRA-FEM чи запустіть x64\LiraFEM.exe з ключем /register від імені адміністратора.

  4. Додавання тіла програми.

    Відкрийте файл Program.cs та змініть його зміст наступним:

     using LiraFem;
    
            namespace LiraFemApiTest
            {
              class Program
              {
                static void CreatePortalFrame6x3m()
                {
                  '//Запускаємо ВІЗОР
                  LiraApplication App = new LiraApplication();
    
    
                  '//Створюємо в ньому нову розрахункову схему:
                  LiraDocument Doc = App.CreateNewDocument();
    
                  '//Створюємо і заповнюємо таблицю координат вузлів:
                  LiraTable Nodes = Doc.AllTables.CreateNewItem(LiraTableEnum.kLiraTable_Nodes_Coordinates) as LiraTable;
                  object NodeCoords = new object[4, 4] { { 1, 0.0, 0.0, 0.0 }, { 2, 6.0, 0.0, 0.0 }, { 3, 0.0, 0.0, 3.0 }, { 4, 6.0, 0.0, 3.0 } };
                  Nodes.SetContents(NodeCoords);
    
                  '//Створюємо і заповнюємо таблицю елементів:
                  LiraTable Els = Doc.AllTables.CreateNewItem(LiraTableEnum.kLiraTable_Elements_TypeAndNumbersOfNodes) as LiraTable;
                  object ElTypeNodes = new object[3, 3] { { 1, 10, "1, 3" }, { 2, 10, "2, 4" }, { 3, 10, "3, 4" } };
                  Els.SetContents(ElTypeNodes);
    
                  '//Переносимо таблиці в розрахункову схему
                  Nodes.Apply(out string strErrors1);
                  Els.Apply(out string strErrors2);
                }
    
    
                static void Main(string[] args)
                {
                  '//Викликаємо функцію створення рами
                  CreatePortalFrame6x3m();
                }
              }
            }
    

    Компіляція програми.

    Оберіть пункт меню Build --> Build Solution

  5. Запуск програми.

    Оберіть пункт меню Debug --> Start Debugging.

    При виконанні цього прикладу запуститься LIRA-FEM, і в ньому утвориться нова розрахункова схема, яка складатиметься з 4-х вузлів та 3-х елементів, така сама, яка утворюється кодом JavaScript з попереднього підрозділу.


Об'єктна модель LIRA-FEM API


Ця версія API представлена п'ятьма об'єктами: програма, документ, таблиця введення, група таблиць введення та одиниці виміру. Об'єкт програми відповідає головному вікну системи ВІЗОР, документ – розрахунковій схемі ВІЗОР (*.lir-файлу), таблиця введення та група таблиць введення відповідають однойменним об'єктам інтерфейсу користувача. Діаграма вкладеності об'єктів представлена нижче:

LiraApplication	Об'єкт програми
  ¦
  ¦--LiraDocument	Документ, чи розрахункова схема
  ¦    ¦                                                
  ¦    '--LiraTables	Група таблиць введення, включно з усіма таблицями введення документа
  ¦         ¦                                               
  ¦         ¦--LiraTableGroup	Група таблиць введення документа
  ¦         ¦    ¦
  ¦         '----'--LiraTable	Таблиця введення документа
  ¦
  '--LiraMeasurementUnits	Керування одиницями виміру

Отримання інформації за властивостями та методами кожного об'єкта LIRA-FEM API


Отримання інформації за властивостями та методами кожного об'єкта LIRA-FEM API можливо в Visual Studio за допомогою інструмента Object Browser.

Рис.1

Рис.4

Object Browser дає опис кожної властивості чи методу об'єктів LIRA-FEM API. Перед програмним заповненням вмісту таблиць введення рекомендується дослідити їхнє заповнення вручну, з інтерфейсу користувача, обравши на вкладці Розширене редагування, панель Інструменти команду Таблиці введення.

Помилка в тексті? Виділіть її та натисніть Ctrl + Enter, щоб повідомити нам.



Коментарі

Написати