C3D Toolkit  Kernel - 107448, Vision - 190805.107448

Класс SceneContent представляет содержание сцены в виде графа. Подробнее...

#include <vsn_scenecontent.h>

Открытые члены

 SceneContent ()
 Конструктор по умолчанию.
 
 SceneContent (SceneSegment *pSegment)
 Конструктор по корневому сегменту сцены.
 
 SceneContent (const SceneContent &other)
 Конструктор копирования.
 
virtual ~SceneContent ()
 Деструктор.
 
MbCube GetBoundingBox ()
 Вернуть габарит содержимого сцены.
 
SceneSegmentGetRootSegment () const
 Вернуть указатель на корневой сегмент сцены.
 
std::shared_ptr< RenderContainerGetContainer ()
 Вернуть указатель на контейнер визуальных объектов.
 
size_t GetCount () const
 Вернуть количество объектов в сцене.
 
bool IsEmpty () const
 Вернуть true, если сцена пуста, иначе false.
 
size_t GetFaceCount () const
 Вернуть количество граней.
 
size_t GetVertexCount () const
 Вернуть количество вершин.
 
size_t GetMaterialCount () const
 Вернуть количество материалов.
 
std::set< Material * > GetMaterials () const
 Вернуть набор материалов.
 
std::list< RenderObject * > GetObjects () const
 Вернуть список объектов в сцене.
 
std::list< RenderObject * > GetVisibleObjects () const
 Вернуть список видимых объектов в сцене.
 
SceneSegmentGetSegment (NodeKey id) const
 Вернуть указатель на сегмент сцены. Подробнее...
 
std::list< SceneSegment * > GetSegments () const
 Вернуть все сегменты сцены.
 
size_t GetSegmentCount () const
 Вернуть количество сегментов.
 
bool IsExistSegment (NodeKey id) const
 Проверить, существует ли в контейнере сегменты с заданным идентификатором. Подробнее...
 
std::list< SceneSegmentData * > GetSegmentsData () const
 Вернуть данные сегментов.
 
std::list< SceneSegmentRef * > GetReferenceSegments () const
 Вернуть список указателей на ссылки.
 
size_t GetBodyCount () const
 Вернуть количество тел.
 
size_t GetRepCount () const
 Вернуть количество представлений.
 
MbVector3D GetUpVector () const
 Вернуть Up вектор сцены.
 
size_t GetSelectionSize () const
 Вернуть количество выбранных сегментов сцены.
 
bool IsSelected (const SceneSegment *pSegment) const
 Вернуть true, если указанный указатель на сегмент является выбранным, иначе false.
 
bool IsSelected (NodeKey selectionId) const
 Вернуть true, если указанный идентификатор сегмента является выбранным, иначе false.
 
std::list< SceneSegment * > GetSelectedSegments () const
 Вернуть список указателей выбранных сегментов.
 
std::list< SceneSegment * > GetMinimumSelectedSegments () const
 Вернуть минимальный список указателей выбранных сегментов.
 
SceneSegmentDetachRootSegment ()
 Отсоединить корневой сегмент от сцены.
 
void RebuildFrustumTree ()
 Престроить дерево видимости
 
void ReplaceRootSegment (SceneSegment *pSegment)
 Заменить корневой сегмент сцены. Подробнее...
 
void ReverseNormal ()
 Обратить нормали сцены.
 
void Clear ()
 Очистить сцену.
 
void SetRootSegmentName (const String &name)
 Задать имя корневого сегмента. Подробнее...
 
void SetUpVector (const MbVector3D &vect)
 Задать сцене Up вектор. Подробнее...
 
void SetViewport (Viewport *pViewport)
 Задать viewport сцены. Подробнее...
 
void SelectSegment (const SceneSegment *pSegment)
 Выбрать (выделить) заданный сегмент. Подробнее...
 
void SelectSegment (NodeKey segmentId)
 Выбрать (выделить) сегмент по идентификатору. Подробнее...
 
void UnselectSegment (NodeKey segmentId)
 Отменить выбор сегмента. Подробнее...
 
void SelectAllSegments ()
 Выбрать все сегменты сцены.
 
void UnselectAllSegments ()
 Отменить выбор всех сегментов.
 
void SelectVisibleViewObjects ()
 Выбрать (выделить) все видимые сегменты сцены.
 
void ReverseSelectedSegmentsState ()
 Скрыть или показать выбранные (выделенные) сегменты. Подробнее...
 
void ShowSelectedSegments ()
 Показать выбранные (выделенные) сегменты.
 
void HideSelectedSegments ()
 Скрыть выбранные (выделенные) сегменты.
 
SceneContentoperator= (const SceneContent &)
 Оператор присваивания. Подробнее...
 
bool operator== (const SceneContent &other) const
 Оператор сравнения. Подробнее...
 
void Render (uint groupId, RenderMode renderingMode=rm_Shaded)
 Отрисовать все объекты сцены. Подробнее...
 

Подробное описание

Класс SceneContent представляет содержание сцены в виде графа.

Методы

◆ GetSegment()

SceneSegment* SceneContent::GetSegment ( NodeKey  id) const

Вернуть указатель на сегмент сцены.

Аргументы
[in]id- Идентификатор сегмента.
Возвращает
Указатель на сегмент сцены.

◆ IsExistSegment()

bool SceneContent::IsExistSegment ( NodeKey  id) const

Проверить, существует ли в контейнере сегменты с заданным идентификатором.

Аргументы
[in]id- Идентификатор сегмента.
Возвращает
True, если в контейнере есть сегмент с таким идентификатором, иначе - false.

◆ ReplaceRootSegment()

void SceneContent::ReplaceRootSegment ( SceneSegment pSegment)

Заменить корневой сегмент сцены.

Аргументы
[in]pSegment- Новый корневой сегмент сцены.

◆ SetRootSegmentName()

void SceneContent::SetRootSegmentName ( const String name)

Задать имя корневого сегмента.

Аргументы
[in]name- Имя сегмента.

◆ SetUpVector()

void SceneContent::SetUpVector ( const MbVector3D vect)

Задать сцене Up вектор.

Задать сцене Up вектор.

Аргументы
[in]vect- Задаваемый Up вектор.

◆ SetViewport()

void SceneContent::SetViewport ( Viewport pViewport)

Задать viewport сцены.

Аргументы
[in]pViewport- Указатель на viewport.

◆ SelectSegment() [1/2]

void SceneContent::SelectSegment ( const SceneSegment pSegment)

Выбрать (выделить) заданный сегмент.

Аргументы
[in]pSegment- Заданный сегмент.

◆ SelectSegment() [2/2]

void SceneContent::SelectSegment ( NodeKey  segmentId)

Выбрать (выделить) сегмент по идентификатору.

Аргументы
[in]segmentId- Идентификатор сегмента.

◆ UnselectSegment()

void SceneContent::UnselectSegment ( NodeKey  segmentId)

Отменить выбор сегмента.

Аргументы
[in]segmentId- Идентификатор сегмента.

◆ ReverseSelectedSegmentsState()

void SceneContent::ReverseSelectedSegmentsState ( )

Скрыть или показать выбранные (выделенные) сегменты.

Скрыть или показать выбранные (выделенные) сегменты.
Состояние выделенных сегментов меняется на противоположное(show/hide).

◆ operator=()

SceneContent& SceneContent::operator= ( const SceneContent )

Оператор присваивания.

Оператор присваивания.

◆ operator==()

bool SceneContent::operator== ( const SceneContent other) const

Оператор сравнения.

Оператор сравнения.

Аргументы
[in]other- Сцена для сравнения.
Возвращает
True, если содержание сравниваемых сцен не отличается, иначе - false.

◆ Render()

void SceneContent::Render ( uint  groupId,
RenderMode  renderingMode = rm_Shaded 
)

Отрисовать все объекты сцены.

Аргументы
[in]groupId- Идентификатор группы.
[in]renderingMode- Режим отображения геометрии.

Объявления и описания членов класса находятся в файле: