.. role:: blue :class: blue Построение плоской проекции модели ================================== .. _Constructing_Model_Flat_Projection: .. версия ядра: Метод .. code-block:: cpp void GetVestiges( const MbPlacement3D & place, double znear, const RPArray< MbLump > & lumps, const MbProjectionsObjects & objects, MbVEFVestiges & result, bool invisible, VERSION version ); выполняет построение плоской проекции множества тел и других объектов. Входными параметрами метода являются: - **place** – проекционная плоскость, - *znear* – параметр точки наблюдения, - **lumps** – проецируемые тела в локальных системах координат, - **objects** – прочие проецируемые объекты, - *invisible* – признак построения невидимых линий, - version – версия построения, последняя версия Math::DefaultMathVersion(). Выходным параметром метода является **result** – структура, содержащая информацию о проекции. Метод не возвращает значений. Метод объявлен в файле *map_create.h*. Проекционной плоскостью является плоскость XY локальной системы координат **place**. Параметр *znear* определяет тип изображения. При *znear* = 0 строится параллельная проекция объектов. Параметр **lumps** содержит тела и матрицы преобразования их из локальной системы координат. Параметр **objects** содержит вспомогательные объекты, необходимые для оформления проекции: вспомогательные точки, кривые, условные обозначения, объекты аннотации. Параметр *invisible* сообщает о необходимости строить невидимые линии. В некоторых случаях при отказе от построения невидимых линий метод работает заметно быстрее. На рис. 1 приведено тело, линии проекции которого на плоскость, параллельную плоскости экрана, приведены на рис. 2. На рис. 3 приведены только видимые линии проекции тела, показанного на рис. 1. .. figure:: ../../pictures/R.2.2.1.png :width: 9cm :align: center Рис. 1 .. figure:: ../../pictures/R.2.2.2.png :width: 9cm :align: center Рис. 2 .. figure:: ../../pictures/R.2.2.3.png :width: 9cm :align: center Рис. 3 Последний параметр рассматриваемого метода используется для поддержки предыдущих версий построения. Метод .. code-block:: cpp void VisualLinesMapping( const MbPlacement3D & place, double znear, const RPArray< MbLump > & lumps, MbVEFVestiges & result, bool invisible = true ); выполняет построение плоской проекции множества тел и отличается от метода GetVestiges\() отсутствием дополнительных объектов **objects**.