Волошинов Денис Вячеславович | (Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А.Бонч-Бруевича) | |
Казначеева Екатерина Сергеевна | (Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А.Бонч-Бруевича) | |
Хайбрахманова Екатерина Сергеевна | (Санкт-Петербургский государственный университет телекоммуникаций им. проф. М.А.Бонч-Бруевича) |
Статья посвящена вопросам автоматизированного синтеза конструктивных моделей, позволяющих представлять поверхность как точку, являющуюся результатом сложного геометрического преобразования. В отличие от методов моделирования поверхностей, использующих принципы аппроксимации, конструктивная модель является средством, основывающимся на геометрическом определении поверхности. С точки зрения объектно-ориентированного проектирования такая модель представляет собой конструктор, реализующий задачу синтеза экземпляра поверхности как представителя класса поверхностей с общими конструктивными геометрическими свойствами.
Моделирование поверхностей является одной из важнейших задач геометрии, находящих большое практическое применение как в проектировании технических объектов, так и в сфере проведения научных исследований и теоретических изысканий. Конструктивная геометрия обладает неисчерпаемым арсеналом средств и возможностей для моделирования поверхностей, обладающих теми или иными геометрическими качествами, и до недавнего времени она была активным "поставщиком" моделей, предназначенных для решения разнообразных практических задач. Однако следует признать, что бурное внедрение средств автоматизации и компьютеризации в практику проектирования и производства промышленных изделий привело разработчиков программного обеспечения к необходимости разработки методологии проектирования поверхностей некоторого "усредненного" свойства, пригодного "на все случаи жизни" . В общих словах, эта идеология заключается в том, что геометрически точная модель принудительно приводится к некоторой унифицированной математической модели, в той или иной степени приближающей получаемый результат к ожидаемому. В современных САПР, в основном, таким математическим аппаратом стал аппарат моделирования поверхностей в виде сплайновых форм, который, действительно, в подавляющем большинстве случаев обеспечивает необходимую проектную точность, в особенности, если дело касается производства корпусных форм изделий. Безусловно, неоспоримой заслугой такой методологии является унификация решаемых задач и возможность создания надежно работающих систем проектирования, реализующих свою функциональность едиными методами над общими и унифицированными структурами данных.
Однако нельзя не замечать, что такой подход безвозвратно искажает истинную природу исходных геометрических данных, алгоритмов и конструкций, что может приводить к фатальным результатам проектирования. Кроме того, в этом случае исключаются из рассмотрения те приемы, методы и модели, которые не "вписываются" в парадигму аппроксимационных и интерполяционных методов проектирования поверхностей, так как они не соответствуют идее унификации математического аппарата. В угоду унификации игнорируются, а следовательно, и не используются с должной эффективностью те математические и геометрические приемы, которые способны доставлять огромную пользу при решении задач, выходящих за рамки наиболее "популярных" в настоящее время задач проектирования корпусов изделий. Для того, чтобы убедиться в этом, достаточно перечитать книгу Г.С.Иванова "Конструирование технических поверхностей" [7], работы других авторов, например, [6, 8, 17] и, даже на исключительно неполном обзоре, убедиться в том, что мир поверхностей неисчерпаем и не может сводиться к идее подавления одной математической моделью других математических моделей.
Все сказанное в равной степени относится и к аналитическим методам проектирования поверхностей [9]. Мир подобных моделей столь же неисчерпаем, сколь и геометрических, и поэтому он не может игнорироваться и замещаться чем-либо другим без должных на то оснований.
Высказанные ранее соображения продемонстрируем на двух исключительно простых примерах конструктивного геометрического моделирования: синтезе торовой поверхности и его преобразовании в инверсии [1] относительно сферы и синтезе гиперболоида с аналогичным преобразованием этой поверхности в аналогичной инверсии.
Решение задачи осуществим на модели G322 (эпюр Монжа) [2-5]. Пусть тор задан окружностью d1 - фронтальной проекцией линии пересечения тора плоскостью , проходящей через его ось o1-p1 (o3 - след этой плоскости в горизонтальной плоскости проекций). Центр окружности сечения (p4 - его фронтальная проекция) вращается вокруг оси o1-p1 по окружности с радиусом, определяемым расстоянием между точками p3 и p4. Пусть точка p5 является фронтальной проекции точки, перемещающейся по окружности сечения, геометрическое место которой определяется "быстрым" параметром положения par2. Тогда в горизонтальной проекции положение этой точки в исходной позиции плоскости сечения будет определяться точкой p7. Предположим, что плоскость сечения осуществила поворот вокруг оси тора на некоторый угол, заданный вторым "медленным" параметром положения par1. Следовательно, точка p7 также осуществила поворот на этот угол и ее текущее положение (точка xy) будет определяться пересечением линии o4 и окружности d2. Фронтальная проекция точки, принадлежащей поверхности тора и определяемой совокупными значениями параметров положения par1 и par2 будет в результате поворота плоскости сечения перемещаться по линии o6, параллельной оси проекционной системы. Следовательно, фронтальную проекцию этой точки можно найти как результат ортогонального проецирования точки xy на прямую o6. Наличие двух проекций точки, принадлежащей поверхности тора в зависимости от двух параметров, позволяет определять любую точку на этой поверхности, следовательно, задача моделирования поверхности тора решена (рис. 1).
Рис. 1. Конструктивная модель, предназначенная для синтеза торовой поверхности и поверхности циклиды Дюпена
Обратимся теперь к модели, реализующей построение точки в преобразовании инверсии относительно сферы в трехмерном пространстве. Так же, как и в предыдущем случае, используем для решения задачи модель G322.
Пусть сфера инверсии задана очерками d1 и d2 во фронтальной и горизонтальной проекциях соответственно. Пусть также дана точка-прообраз: проекции точки p5 и p6. Для нахождения образа этой точки в инверсии выполним замену плоскостей проекций так, чтобы прямая линия, соединяющая точку-прообраз и центр сферы инверсии изобразилась бы в одном из полей проекций в натуральную величину, разумеется, переведя в ее и сферу инверсии. Выбрав ось новой системы проекций o6 таким образом, чтобы она была параллельной горизонтальной проекции отрезка, соединяющего исходную точку с центром сферы, построим в дополнительном поле точку p8. В этом поле преобразование инверсии сведено к двумерному случаю, поэтому выполним его, воспользовавшись соответственным алгоритмом, в результате чего найдем точку-образ p9. Нам остается перевести эту точку в исходные поля и получить проекции искомой точки-образа в системе исходных данных (рис. 2).
Рис. 2. Модель, реализующая построение образа точки в инверсии относительно сферы в трехмерном пространстве
Выделим в качестве входных параметров алгоритма проекции очерков сферы инверсии и проекции исходной точки, а в качестве выходных параметров проекции искомой точки. С этого момента конструктивная модель готова к применению в основной задаче.
Вернемся к исходному алгоритму. Зададим где-либо центр сферы инверсии (p10, p11) и проведем ее очерки (окружности d3 и d4). Применим к модели этой сферы, а также к точке, моделирующей поверхность сферы (xz, xy), только что разработанный алгоритм преобразования точки в инверсии относительно сферы. На выходе этого преобразования получим точки xxz и xxy, моделирующие точку поверхности циклида Дюпена [10-15]. Задав вариацию параметров в диапазоне par1 от 0 до 360 градусов, а par2 в диапазоне от 0 до 1, выполним визуализацию полученной сцены. Результат работы модели показан на рис. 3.
Рис. 3. Модель поверхности циклиды Дюпена как результат инверсии тора относительно сферы (видео в высоком разрешении 340MB)
Наличие конструктивной модели синтеза поверхности циклиды Дюпена на основе торовой поверхности и сферы позволяет использовать ее в том числе для получения классов поверхностей в зависимости от изменения других параметров модели. Покажем, каким образом будет изменяться поверхность циклиды в зависимости от взаимного расположения сферы инверсии и тора. Будем считать тор неподвижным и зададим движение центра сферы на небольшом прямолинейном отрезке. Динамическая иллюстрация происходящих изменений формы циклиды продемонстрированы на рис. 4.
Рис. 4. Пример работы конструктивной модели, предназначенной для генерации циклиды Дюпена при изменении позиционных параметров центра сферы инверсии
Перейдем ко второму примеру. Решим задачу, подобную первой, но в качестве исходных данных в ней будет выступать поверхность гиперболоида, заданного тремя скрещивающимися прямыми [18]. Итак, поверхность задана прямыми a(o1-o2), b(o3-o4) и c(o5-o6) (рис. 5).
Рис. 5. Исходные данные к решению задачи о моделировании гиперболоида и его образа в инверсии относительно сферы
Для построения поверхности, образованной скольжением прямой линии по исходно заданным, выберем на одной из них (например, на линии b) фиксированную точку B (p1-p2). Эта точка в соединении с линией a образует плоскость alpha (o12,o13 - o14,o15), а в соединении с линией c - плоскость beta (o16,o17 - o18,o19). Плоскости apha и beta пересекаются по прямой линии d (o36-o37), являющейся образующей гиперболоида и находящейся в непосредственной зависимости от расположения точки B. Вынуждая точку B перемещаться по прямой b в зависимости от значений "медленного" параметра положения par1 в некотором диапазоне значений, образуем поверхность гиперболоида, "заметаемого" движущейся образующей d (рис. 6).
Рис. 6. Конструктивная геометрическая модель задачи о построении гиперболоида и его образа в инверсии (иллюстрация в высоком разрешении)
Зададим также на прямой d точку D (xz,xy), определив ее положение "быстрым" параметром par2. Таким образом, задача моделирования поверхности гиперболоида решена.
Для выполнения операции инверсии в этой задаче применим подход, несколько отличающийся от предыдущей задачи. Из теории преобразования инверсии известно, что прямая линия в инверсии переходит в окружность, проходящую через центр инверсии. Поэтому, задав исходное расположение сферы инверсии, преобразуем исходную систему проекций так, чтобы в одном из полей плоскость, образованная соединением движущейся прямой линии d и центра сферы наблюдалась бы в натуральную величину. В нашем случае, такое положение прямой d в дополнительном поле отображается линией o57, а очерк сферы инверсии представлен окружностью d8. Ясно, что такая прямая будет преобразована в инверсии в окружность d9, проходящую через центр p55 окружности d8. Расположив на d9 точку p56 и установив управление ее положением в зависимости от "быстрого" параметра par3, получим возможность промоделировать поверхность-образ гиперболоида относительно сферы. Для этого, безусловно, требуется восстановить проекции точки этой поверхности в исходных полях (p59, p58), определяемой в дополнительных полях точками p56 и p57.
Результат работы совокупного алгоритма представлен на рис. 7.
Рис. 7. Генерация лоскута поверхности гиперболоида, заданного тремя скрещивающимися прямыми, и его образ в инверсии относительно сферы
Представленные в докладе модели поверхностей исключительно просты и основаны на элементарных вычислительных операциях. Тем не менее они демонстрируют, что конструктивный геометрический метод обладает практически безграничными возможностями в задачах проектирования поверхностей, равно как и других геометрических задач. Наличие инструментов автоматизации конструктивного геометрического моделирования позволяет применять в решениях как известные геометрические преобразования [6, 7, 16], так и разрабатывать новые, ранее казавшиеся невыполнимыми из-за высокой трудоемкости и инструментальных ограничений. Следует обратить внимание на то, что доступность информации о функциональном составе алгоритма и его структуре, представленной в виде фактологической модели [5], позволяет выполнять не только сугубо вычислительные, но и символьно-логические преобразования геометрических моделей. Это означает, что конструктивные модели по сути представляют собой данные для программ мета-уровня, способных осуществлять символьную или иную логическую интерпретацию подобных данных, наподобие тех методов, которые используется в автоматических решателях уравнений, символьном дифференцировании и т.п. задач, но уже применительно к геометрии. Такой подход позволит, в частности, определять дифференциальные характеристики моделей не путем задания малых приращений параметров, а на основе логического вывода, что без сомнения не только повысит точность и достоверность результатов, но и предоставит принципиально новые возможности для синтеза геометрических алгоритмов.
Кокарева Яна Андреевна (26 марта 2017 г. 1:20) |
Уважаемый Денис Вячеславович и соавторы, прочла все Ваши доклады на нынешней конференции. Ваш Симплекс, Ваше детище, - уникальный и интересный инструмент. Я восхищаюсь Вашим трудолюбием, потому что даже представить сложно, какие объемы кода были уже написаны, и какие еще только будут. И ведь это не просто полуавтоматическое программирование какого-то известного алгоритма. Соглашаюсь с каждым Вашим словом о конструктивной геометрии. Визуализация сделана тоже в Симплексе? или в другой программе? Спасибо за Ваш труд! С уважением, Кокарева Я.А. |
Волошинов Денис Вячеславович (26 марта 2017 г. 16:35) |
Здравствуйте, Яна Андреевна! Визуализация сейчас сделана путем передачи данных о твердотельной модели из Симплекса в 3DsMax. В Симплексе есть средство визуализации, но в настоящее время сильно уступает Max'у. Видимо, придется этим заняться, так как есть задумки создать транслятор геометрических моделей для использования под управлением WebGL. Тогда можно было бы создавать активные Web-страницы с графикой, управляемой конструктивными моделями. Особо сложного в этом ничего нет, но нужно время. Думаю, что скоро появятся первые результаты. Принцип построения твердотельных моделей в Симплексе довольно простой. Как и в других задачах, пользователь синтезирует алгоритм путем установления взаимосвязей между геометрическими объектами. В этом алгоритме обязательно присутствуют две величины - параметры, которым изначально присваиваются какие-нибудь значения, чтобы на выходе появились две точки - проекции точки, принадлежащие моделируемой поверхности. Условно, конечно, один из них называется "медленным" - это тот, который перемещает образующую по направляющей, и "быстрый", перемещающий точки-проекции по направляющей. С одной из таких точек будем получать координаты x и z (c фронтальной проекции), а с другой x и y (с горизонтальной проекции). Естественно, один x избыточен. Теперь этот алгоритм нужно применить m на n раз, чтобы получить сетку граней твердотельной модели. В принципе, можно формировать и другие структуры, например, сплайновые данные для SoliWorks, но это уже другой вопрос. Перед тем как приступать к многократному исполнению этой процедуры, система выполняет предварительный анализ состава команд алгоритма, подразделяя их на те, которые совсем не зависят от обоих параметров - следовательно, объекты, входящие в состав этих команд, можно рассчитать только один раз, на те, что зависят от "медленного" параметра (тогда они могут пересчитываться только внутри внешнего цикла, перемещающего образующую) и на те, что зависят от обоих параметров. Такая сортировка выполняется автоматически, поскольку команды Симплекса по сути представляют собой факты логической программы, и эта формальная процедура не требует постороннего вмешательства, и сделана она для того, чтобы существенно ускорить работу алгоритма. В противном сучае, производились бы напрасные неизменяемые вычисления. Вот такая оптимизация расчета. Когда формирование гранной структуры в Симплексе закончено, она готова к тому, чтобы быть переданной через какой-либо формат в другие программы. В настоящее время реализована передача через dxf и obj. Все так и работает, но, безусловно, недостатком этого метода является то, что мы не можем обеспечить динамическое поведение моделей в других программах, и анимацию в 3dsMax приходится пока собирать по кадрам. Но из этой ситуации есть выход. В Симплексе возможна трансляция модели в эквивалент, выраженный языками программирования через вызовы процедур. Сейчас работает формирование программы на языке Pascal, что позволяет очень быстро создавать новые необходимые в работе системные функции и не программировать их внутри системы, как процедуры. Этим способом Симплекс и прирастает своим функциональным составом: сначала идет эксперимент с моделью, а потом, когда становится ясно, что она удовлетворяет требованиям задачи, она переводится в системный вид через среду Delphi. Но такой же подход можно применить, например, при формировании скриптов на языке Max Script. Тогда такой скрипт будет отражать ту функциональность, которая заложена в модели, а работать все это будет в Max'е. Это позволит создавать очень впечатляющие анимации и делать это достаточно просто, поскольку пользователю не нужно будет ничего программировать. Нужно создать модель, оттранслировать ее в скрипт и подгрузить скрипт в 3DsMax. То есть дополнительное программирование исключается. Многие функции, необходимые для реализации этой идеи, уже написаны. Но не все еще реализовано до конца. Скоро такая возможность появится, и тогда конструктивное моделирование обретет еще один инструмент, который позволит продемонстрировать мощь и красоту геометрии во всех ее проявлениях. И еще хочу сказать несколько слов. Я полностью согласен с мыслями В.А.Корткого о необходимости нормального совместного сотрудничества. Один человек, конечно, не в состоянии профессионально закрывать абсолютно все проблемы, связанные с развитием идей конструктивного моделирования и его автоматизации. Своими работами я старался показать, что конструктивная геометрия - это такой же аппарат моделирования, как и любой другой математический аппарат. И попытки поставить ее на колени - это неумная затея. Простите, если я кого-то задеваю этими словами, но думаю, что я имею на это право. |
Усанова Елена Владимировна (26 марта 2017 г. 20:25) |
Денис Вячеславович! Еще раз – вос-хи-ще-на! Прочла все Ваши статьи на этом форуме. Очень уважаю как ученого за твердость в преодолении, не отступлении в решении задач моделирования методами конструктивной геометрии, чем в наше время мало кто занимается. Сына, помните, обещала в Бонч направить. Пока 6 кл. Людмила Анатольевна разделяет эту идею. С искренними пожеланиями Вашему коллективу побед в решении поставленных задач, Усанова Е.В. |
Сальков Николай Андреевич (28 марта 2017 г. 12:24) |
Денис Вячеславович, здравствуйте! Наконец-то добрался до Вашей статьи! Все как-то времени не хватало. Сказать ничего уже не могу - все сказано Еленой Владимировной и Яной Андреевной! Есть куча учебников по различным графическим системам, я Вам предлагаю написать учебник по геометрической машине! Думаю, что приобретут все, я в первую очередь! С уважением, Н. Сальков. |
Волошинов Денис Вячеславович (28 марта 2017 г. 16:08) |
Здравстуйте, Елена Владимировна! Ждем Вашего сына в Бонче: шестой класс - это уже достаточно близко к поступлению в ВУЗ. Большой привет от меня Людмиле Анатольевне! |
Горнов Александр Олегович (28 марта 2017 г. 16:50) |
Уважаемый Денис Вячеславович ! Хочу в очередной раз присоединиться к высокой оценке Ваших работ и, в частности, по геометрической машине . Есть ли возможности и планы , аналогичные пожеланию Николая Андреевича, относительно учебника или издания в какой либо другой форме? C уважением, здоровья . А.О. |
Волошинов Денис Вячеславович (28 марта 2017 г. 17:19) |
Здравствуйте, Николай Андреевич! Я подумаю над Вашим предложением об учебнике. Мысль о том, что надо сделать обобщение полученных результатов, меня посещала. И не раз. Но всегда ей мешает ощущение, что не все задуманное еще сделано. Видимо, надо где-то остановиться, иначе так может продолжаться бесконечно. Николай Андреевич, Вашу книгу сейчас изучаю. В ней очень много интересного! О своих соображениях напишу Вам чуть позже. К сожалению, работа отнимает много времени от дел интересных и нужных, а надо-бы сконцентрироваться. С уважением, |
Волошинов Денис Вячеславович (28 марта 2017 г. 17:41) |
Здравствуйте, Александр Олегович! Но, безусловно, я постараюсь выделить время на книгу. Теперь у меня появляются помощники - заработал факультатив, есть магистры, у которых в темы выпускных работ связаны с компьютерной геометрией и графикой. Но помощников тоже приходится многому учить, и это тоже время. Но, должен сказать, что эта работа благодарная, и я о ней не жалею. Есть мысли о том, чтобы создать электронный учебник, позволяющий решать задачи, как это делается в Симплексе, прямо в сети через Интернет-страницы. В принципе, сделать это не очень сложно. Можно написать переводчик алгоритмов Симплекса на что-то типа Java-script, и интерактивные чертежи заработают прямо в браузерах. Хочу попытаться провести такой эксперимент, подключив к нему заинтересованных студентов. Если это получится, то можно будет принципиально изменить формат лекций по НГ, сделать практические занятия интерактивными, дистанционными и т.п. Фантазия здесь может уходить очень далеко. И еще: я очень надеюсь на сотрудничество. Я постарался изложить и показать свои мысли в максимально простой форме, надеюсь, что так это и воспринято коллегами. Не нужна избыточная сложность там, где именно сама идея должна стать ясной. А все остальное - оно придет. Хочу поблагодарить всех коллег за поддержку, она очень нужна, так как именно она, как ничто другое, подтверждает важность и значимость проводимой работы! Денис Волошинов
|
Бойков Алексей Александрович (29 марта 2017 г. 13:13) |
Здравствуйте, уважаемый Денис Вячеславович! Цикл докладов на КГП-2017 производит колоссальное впечатление, спасибо! Думаю после этого "Симплекс" заинтересует многих, даже тех, кто раньше, видя лишь плоские чертежи, представлял его себе как бесконечные точечные ряды и пучки прямых и окружностей. Если бы я уже не знал про него, точно бы захотел познакомиться. А учитывая примеры импорта созданных в нем кривых и поверхностей, можно надеяться, что и "Компас" пойдет на сближение. Это было бы просто отлично! с уважением и пожеланиями успеха, А. Бойков |
Волошинов Денис Вячеславович (30 марта 2017 г. 11:48) |
Здравствуйте, Алексей Александрович! Благодарю Вас за комментарий и высокую оценку статей! Хочу в своем ответе дать небольшую справочную информацию. Все коллеги, кто хочет познакомиться с системой Симплекс более подробно, могут загрузить ее с сайта http://dww.no-ip.org/simplex/. Система представляет собой всего один файл Spw.exe, который можно просто разместить в любом каталоге, например, C:/Spw, создать ярлык на файл Spw.exe и пользоваться программой. Никакой дополнительной установки не требуется. В процессе первого сеанса работы система сама подгружает с сайта программу-загрузчик обновлений и программу передачи файлов Симплекса по электронной почте. После окончания каждого сеанса работы система проверяет на сервере наличие обновлений и, если таковые обнаружены, предлагает заменить старую версию на обновленную. Если по каким-то причинам связи с сервером нет, то в конце сеанса работы может быть заметна некоторая задержка выхода из программы. Обновления версий происходят довольно часто. Это связано с тем, что Симплекс постоянно развивается, и в нем почти ежедневно устраняются обнаруженные неточности. К сожалению, иногда бывает так, что внесенное изменение может привести к изменениям в работе других функций. Поэтому, если возможно, было бы неплохо "иметь в запасе" копию последней рабочей версии. При замене версий Симплекс переименовывает устаревший файл Spw.exe в Spw.old. Научиться решать задачи в Симплексе несложно. Для того, чтобы начать им пользоваться, можно выполнить несколько несложных примеров, а затем все становится ясно и без посторонней помощи. Конечно, это не отменяет необходимость умения решать задачи. Примеры использования системы можно найти на странице http://dww.no-ip.org/simplex/Examples/index.htm. Первые восемь примеров относятся к относительно старым версиям, остальные, начиная с задачи Аполлония, использовались как методические указания в работе факультатива по конструктивной геометрии, речь о котором шла на прошлогодней конференции. Сразу хочу извиниться перед коллегами за то, что материал на страницах представлен так "как есть". Безусловно, ему нужна была бы серьезная методическая проработка, стилистическая правка и проч. Но на это пока не хватает времени и сил. Надеюсь, что все коллеги, кто сочтет для себя возможным познакомиться с системой, найдут для себя в этом материале что-то полезное. Некоторую справку об интерфейсе системы можно получить со страницы http://dww.no-ip.org/simplex/CONTENTS/index.htm. Там тоже очень много недоделок. Постараюсь обращать на заполнение информацией этих страниц бОльшее внимание. Новая версия Симплекса с поддержкой экспорта информации в GIF файлы и передачей поверхностей в OBJ формате будет размещена примерно в середине апреля. Функции работоспособны, но требуют разработки более достойного интерфейса, что сейчас и делается. Вероятно, к этому времени будет готова и передача алгоритмов в 3D Studio Max через скрипты языка Max Script. Экспериментальная версия функций передачи уже работает. Хочу также отметить, что в Симплексе есть функция передачи геометрических построений в "родной" формат данных системы CorelDraw. Передача осуществляется через буфер Clipboard. Это позволяет готовить многовариантные чертежи для заданий, контрольных мероприятий с очень высокой эффективностью, поскольку один и тот же алгоритм при некоторых позиционных изменениях исходных данных будет порождать совершенно непохожие друг на друга чертежи. Передавая их в CorelDraw из Симплекса, можно получать множество необходимых чертежей за кратчайшее время. Столь же быстро можно готовить иллюстрации для пособий, подбирая наиболее выразительные с эстетической и методической точки зрения геометрические построения. Что касается книги (учебника), о геометрической машине (и о Симплексе, вероятно, тоже). Я принял решение начать работу над ней (ними). Не могу обещать, что получится быстро. Первый самиздатовский вариант справочного руководства по Симплексу, составленный в 1997 году, насчитывал 950 страниц текста. Конечно, справочник - не учебник, но вся эта работа имеет смысл лишь в том случае, если теория, практика и инструмент будут рассматриваться как единое целое. Но, видимо, пришла пора, когда эту работу нужно выполнить. Я абсолютно убежден в том, что осознание конструктивной геометрии как информационной технологии и умение применять к ее задачам соответственные инструменты, дадут новую жизнь тому богатейшему геометрическому наследию, которое сейчас пылится на наших книжных полках и не находит должного применения. А научные труды, которые сейчас кажутся непонятными и непостижимыми, станут доступными, и их результаты начнут приносить нормальную практическую пользу. С уважением, Денис Волошинов |