Русский | English

Класс TCastlePolygon2D

Модуль

Объявления

type TCastlePolygon2D = class(TCastleLine2DBase)

Описание

Потенциально невыпуклый многоугольник. Строится по набору вершин методом триангуляции.

Для входа в режим редактирования используйте "verb" (Edit mode ON) - правой кнопкой мыши по объекту в окне иерархии объектов.

Иерархия

Обзор

Методы

Protected procedure ChangedTransform; override;
Protected procedure SetLineType(NewLineType:TCastleLineType); override;
Public function CalculateAreaWithoutDisplay:single;
Public procedure ReLoadoverride;
Public constructor Create(AOwner: TComponent); override;
Public destructor Destroy; override;
Public procedure Clear; override;
Public function PropertySections(const PropertyName: String): TPropertySections; override;

Свойства

Public property Area: single read FArea;
Public property TextureScale: TVector2 read FTextureScale write SetTextureScale;
Published property TextureScalePersistent: TCastleVector2Persistent read FTextureScalePersistent;
Published property TexCoordMode: TPolygonTexCoordMode read FTexCoordMode write SetTexCoordMode default cmDefault;
Published property LineType;

Описание

Методы

Protected procedure ChangedTransform; override;

Для определения нужно ли перестраивать сцену при изменении Scale

Protected procedure SetLineType(NewLineType:TCastleLineType); override;

Тип линии может быть только ltClose (замкнутая линия)

Public function CalculateAreaWithoutDisplay:single;

Вычислить площадь без отображения полигона

Public procedure ReLoadoverride;
 
Public constructor Create(AOwner: TComponent); override;

При создании в редакторе CGE добавляются точки, образующие звезду. При создании непосредственно в коде (RunTime) точки не добавляются.

Public destructor Destroy; override;
 
Public procedure Clear; override;
 
Public function PropertySections(const PropertyName: String): TPropertySections; override;
 

Свойства

Public property Area: single read FArea;

Площадь многоугольника вычисляется в CastlePolygon2D.Reload. Если многоугольник отображать не требуется, то можно площадь можно вычеслить используя функцию CastlePolygon2D.CalculateAreaWithoutDisplay. Если обнаружено самопересечение, то площадь равна 0.

Public property TextureScale: TVector2 read FTextureScale write SetTextureScale;

Параметр влияет на увеличение текстуры при TexCoordMode=cmRepeat. Чем он меньше, тем текстура больше.

Published property TextureScalePersistent: TCastleVector2Persistent read FTextureScalePersistent;

TCastlePolygon2D.TextureScale

Published property TexCoordMode: TPolygonTexCoordMode read FTexCoordMode write SetTexCoordMode default cmDefault;

Метод вычисления текстурных координат

Published property LineType;
 

Сгенерировал PasDoc 0.16.0.