Previous Up Next
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

3 Ускоряемся с библиотеками построений

Уже существующая фигура может послужить кирпичиком в новом построении. Фигура для этого может быть непосредственно взята из ранее сохранённой записи или несколько таких часто используемых фигур может быть организованы в удобные библиотеки внутри Yaglom. Использовать фигуру можно двояко:

Различие между этими двумя возможностями только в количестве явно добавленных узлов в новой фигуре, в остальном их использование полностью совпадает и происходит в тех же самых диалогах. Поэтому мы будем говорит далее про построения, имея в виду сходные действия и для встроенных фигур.

Обычная ситуация требующая построения выглядит так. Достаточно часто нам приходится использовать одну и ту же последовательность действий, например поиск середины отрезка, многократно как в разных фигурах, так и внутри одной. Если такая последовательность действий ещё и продолжительная, а промежуточные шаги не представляют интереса, то они могут серьёзно загромождать чертёж. Для упрощения работы пакет MoebInv и его графическая оболочка предлагает удобное средство—библиотекb построений. В терминах языков программирования построения соответствуют макросам или процедурам. В оболочке Yaglom есть все средства для работы и управления с библиотеками построений.

Пример работы с библиотеками построениями показан здесь: Прямая Симпсона и библиотеки построений: (или на YouTube).

3.1 Как пройти в библиотеку?

Во время работы с оболочкой можно использовать построения из двух библиотек:

  1. Загружаемая библиотека. Минимальная библиотека поставляется в месте с оболочкой. Кроме этого у вас может хранится много различных библиотек на различных носителях. В каждый момент времени только одна из них может быть в работе. Пользователь может загружать, редактировать, соединять, сохранять любые библиотеки доступные в записи, см. пояснения ниже.
  2. Какие-то построения могут быть частью фигуры используемой в данный момент. Те из них, которые не находятся в текущей загруженной библиотеке, доступны для повторного использования как дополнительная библиотека.

Любое построение из фигуры может быть добавлено в текущую загружаемую библиотеку. Для этого щелчком ПКМ на требуемом построении из фигуры вызовите его контекстное меню и выберите Добавить в библиотеку ⊕. Другие операции над библиотеками описаны в последующих секциях.

3.2 Использование построений

Что бы использовать любую существую фигуру как встроенную или построение её можно напрямую загрузить из записи через меню ЗаписьВстроенная фигура. Так же можно использовать все фигуры уже собранные в библиотеки через их контекстное меню, вызываемое щелчком ПКМ, затем выберите Использовать построение ⚙. В появившемся диалоге будет дано описание этого построения и назначение требуемых параметров в определённом порядке.

Если фигура содержит пронумерованные переменные (см. 3.3) пригодные для самоопределения, то их значения можно указать просто перечислив через запятую метки циклов из текущей фигуры, которые будут применены в качестве параметров этого построения. Циклы созданные в построении могут быть отнесены к определённому поколению, как обсуждалось ранее, см. 3.
Совет: Выбранное построение может быть одновременно использовано для нескольких наборов параметров с использованием фигурных скобок. Вот несколько примеров для построения серединной точки:

3.3 Как создать построение?

Построение может создано в оболочке Yaglom подобно обычной фигуре, но с соблюдением нескольких дополнительных условий указанных ниже. Использование меню ПостроенияНовое построение облегчает эту задачу позаботившись что бы:

  1. В построении должно быть некоторое число циклов без предков, которые рассматриваются как переменные. Хотя это и не обязательно, но эти циклы могут самоопределяться в таком качестве. Для этого они должны именоваться метками с различными численными индексами, например v1, v2, …. Важно:
    1. По крайней мере один цикл в поколении-0 должен иметь численный индекс.
    2. Если построению требуется несколько параметров, то они должны различные численные индексы, а остальная часть меток может быть любой. Например: v1, A7, sigma23, ….
    3. Если действительная ось и бесконечность имеют наследников, то они добавляются в конец списка самоопределённых переменных и могут подставляться произвольными циклами из текущего построения.
    4. В построении используемые значения будут подставляться на место самоопределённых циклов из поколения-0 в порядка возрастания их числовых индексов. Число задаваемых параметров не должно превышать доступного числа самоопределённых переменных.
    5. Если число заданных значений менее числа переменных, то незаполненные переменные сохранят те значения, которые были им присвоены при создании построения. Если действительной оси и бесконечности построения не были явно присвоены иные значения, то они будут отождествленны с таковыми в текущей фигуре.
    Если воспользоваться самоопределёнными переменными нет возможности или желания, то соответствие параметров и переменных можно задать списком пар через запятую. Например строка <<K : A, L : B, M : C>> применит построение основанное на вершинах треугольника ABC к треугольнику KLM текущей фигуры. Если самоопределение переменных в построении не планируются, то все его циклы могут использовать произвольные метки.
  2. Результатом построения являются все циклы без наследников в поколении-1 или позднее. Другими словами все циклы, которые будут считаться результатом построения.
  3. Только циклы, являющиеся результатом построения будут явно добавлены в объемлющую фигуру.
  4. Построение должно иметь ясное описание. Описание может быть добавлено в подменю ИзменитьСвойства. Напоминание об описании также будет дано при попытке добавить построение в библиотеку. В описании должно быть две части:
    1. Краткий (<80 символов) чёткий заголовок оканчивающийся точкой и переводом строки. Этот заголовок будет использован для представления построения в библиотечном списке.
    2. Оставшаяся часть описания должна ясно описывать
      • суть построения;
      • число и порядок параметров, а так же значения по умолчанию необязательных параметров;
      • результат построения.

Совет: так как параметры построения должны иметь вполне определённые вид меток, то они должны быть или заданны вручную или соответствующими настройками автоматического наименования. Второе будет для вас сделано при использовании ПостроенияНовое построение меню. Все метки в построении, кроме параметров, могут быть произвольными.

3.4 Добавление фигуры в библиотеку построений

Если фигура выполнена с соблюдением правил из предыдущей подсекции вы можете:

  1. Сохранить её как обычную фигуру в отдельной записи через подменю ЗаписьСохранить фигуру как.
  2. Дописать в конец текущей загруженной библиотеки через подменю ПостроенияДобавить к библиотеке. Впоследствии позиция внутри библиотеки может быть изменена.
  3. Вставить в произвольное место используемой библиотеки через её контекстное меню: вызвав это меню ПКМ на некотором построении из библиотеки выбрать строку Добавить фигуру перед этой.

При добавление построения пакет Yaglom проведёт некоторые проверки на соответствие правилам построений из предыдущего подраздела. Если необходимо дополнительные диалоги и сообщения будут выведены на экран.

Так же можно объединить текущую и ранее сохранённую (см. пункт 1 в § 3.6) библиотеки, это делается через подменю ПостроенияДобавить запись к текущей библиотеке.

3.5 Редактирование текущей библиотеки

Контекстное меню текущей библиотеки (вызывается ПКМ) позволяет использовать любое из построений (см. § 3.2) или изменить библиотеку следующими действиями:

  1. Переупорядочить список библиотеки, перемещая за один раз построение вниз или вверх по списку.
  2. Изменить какое-либо построение загрузив его для редактирования в оболочку. Изменённое построение может быть добавлено в текущую библиотеку или сохранено в записи (которая впоследствии может быть добавлена в другую библиотеку).
  3. Удалить выбранное построение из библиотеки.
    Внимание: эту операцию нельзя будет откатить и построение будет потеряно навсегда если библиотека не была сохранена. Вы можете предпочесть вначале сохранить удаляемую фигуру.
  4. Добавить текущую фигуру (если она удовлетворяет всем требованиям из § 3.3) как построение, см. § 3.4.

3.6 Управление библиотеками

Следующие операции доступны из главного меню Построения для управления библиотеками:

  1. Сохранить текущую библиотеку в отдельную запись.
  2. Загрузить другую библиотеку с носителя.
  3. Добавить запись какой-либо библиотеки с носителя к уже загруженной библиотеки. Объединение можно повторять неоднократно. Объединённая библиотека может быть сохранена в новой записи.
  4. Сохранить и сделать по умолчанию: сохранённая библиотека будет автоматически загружаться при последующих запусках оболочки Yaglom. Библиотека по умолчанию может быть так же задана в подменю ИнструментыНастройкиОболочка.

Комбинация действий из §§ 3.53.6 позволяет создавать неограниченное количество библиотек заточенных под конкретные задачи.


Previous Up Next