Class CGBoundsGroup
- Namespace
- FluffyUnderware.Curvy.Generator
Helper class used by VolumeSpots and others
[Serializable]
public class CGBoundsGroup : CGWeightedItem
- Inheritance
-
CGBoundsGroup
- Inherited Members
Constructors
CGBoundsGroup(string)
public CGBoundsGroup(string name)
Parameters
namestring
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
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
ItemCount
public int ItemCount { get; }
Property Value
Items
public List<CGBoundsGroupItem> Items { get; }
Property Value
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
LastRepeating
Last index of the RepeatingItems range
public int LastRepeating { get; set; }
Property Value
Name
public string Name { get; set; }
Property Value
RandomizeItems
When enabled, items in groups will be selected randomly. RepeatingItems
public bool RandomizeItems { get; set; }
Property Value
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
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
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
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
bagWeightedRandom<int>itemsWeightsIEnumerable<CGWeightedItem>firstItemintlastItemint