Table of Contents

Class CGBoundsGroup

Helper class used by VolumeSpots and others

[Serializable]
public class CGBoundsGroup : CGWeightedItem
Inheritance
CGBoundsGroup
Inherited Members

Constructors

CGBoundsGroup(string)

public CGBoundsGroup(string name)

Parameters

name string

Properties

CrossBase

Shifts the Cross origin for this group by a value in the defined range

public FloatRegion CrossBase { get; set; }

Property Value

FloatRegion

FirstRepeating

First index of the RepeatingItems range

public int FirstRepeating { get; set; }

Property Value

int

IgnoreModuleCrossBase

If true, the Cross origin for this group will not take into consideration the Cross parameters of the BuildVolumeSpots class/>

public bool IgnoreModuleCrossBase { get; set; }

Property Value

bool

ItemCount

public int ItemCount { get; }

Property Value

int

Items

public List<CGBoundsGroupItem> Items { get; }

Property Value

List<CGBoundsGroupItem>

KeepTogether

When true, the group will only be placed when all items can be placed in the space left.

public bool KeepTogether { get; set; }

Property Value

bool

LastRepeating

Last index of the RepeatingItems range

public int LastRepeating { get; set; }

Property Value

int

Name

public string Name { get; set; }

Property Value

string

RandomizeItems

When enabled, items in groups will be selected randomly. RepeatingItems

public bool RandomizeItems { get; set; }

Property Value

bool

RelativeTranslation

When true, the translation of an item is done in the relative frame defined by the tangent and orientation (up vector) of the volume at the item's position

public bool RelativeTranslation { get; set; }

Property Value

bool

RepeatingItems

When RandomizeItems is set to true, the randomized items are the the ones that have their indices inside the RepeatingItems range

public IntRegion RepeatingItems { get; set; }

Property Value

IntRegion

RotationMode

How the rotation axes are defined related to the Volume's data

public CGBoundsGroup.RotationModeEnum RotationMode { get; set; }

Property Value

CGBoundsGroup.RotationModeEnum

RotationX

public FloatRegion RotationX { get; set; }

Property Value

FloatRegion

RotationY

public FloatRegion RotationY { get; set; }

Property Value

FloatRegion

RotationZ

public FloatRegion RotationZ { get; set; }

Property Value

FloatRegion

ScaleX

public FloatRegion ScaleX { get; set; }

Property Value

FloatRegion

ScaleY

public FloatRegion ScaleY { get; set; }

Property Value

FloatRegion

ScaleZ

public FloatRegion ScaleZ { get; set; }

Property Value

FloatRegion

SpaceAfter

public FloatRegion SpaceAfter { get; set; }

Property Value

FloatRegion

SpaceBefore

public FloatRegion SpaceBefore { get; set; }

Property Value

FloatRegion

TranslationX

public FloatRegion TranslationX { get; set; }

Property Value

FloatRegion

TranslationY

public FloatRegion TranslationY { get; set; }

Property Value

FloatRegion

TranslationZ

public FloatRegion TranslationZ { get; set; }

Property Value

FloatRegion

UniformScaling

When true, the scaling vector is (ScaleX, ScaleX, ScaleX) instead of (ScaleX, ScaleY, ScaleZ)

public bool UniformScaling { get; set; }

Property Value

bool

Methods

FillItemBag(WeightedRandom<int>, IEnumerable<CGWeightedItem>, int, int)

Fill an item bag with items based on their weights

public static void FillItemBag(WeightedRandom<int> bag, IEnumerable<CGWeightedItem> itemsWeights, int firstItem, int lastItem)

Parameters

bag WeightedRandom<int>
itemsWeights IEnumerable<CGWeightedItem>
firstItem int
lastItem int