Rasterized Shape Data (Polyline)
Public Attributes | |
bool | Closed |
Whether the base spline is closed or not More... | |
float[] | F = new float[0] |
Relative position (0..1, NOT TF!) within the length of the shape More... | |
float | Length |
Length in world units More... | |
float[] | Map = new float[0] |
Arbitrary mapped value, usually U More... | |
List< SamplePointsMaterialGroup > | MaterialGroups = new List<SamplePointsMaterialGroup>() |
Groups/Patches More... | |
Vector3[] | Normal = new Vector3[0] |
Normal More... | |
Vector3[] | Position = new Vector3[0] |
Shape/Path Position More... | |
bool | Seamless |
Whether the Shape/Path is seamless, i.e. Closed==true and the whole length is covered More... | |
float[] | SourceF = new float[0] |
Relative position (0..1, NOT TF!) within the length of the source spline (if any) More... | |
bool | SourceIsManaged |
Whether the source is managed or not More... | |
![]() | |
string | Name |
Properties | |
override int | Count [get] |
Gets the number of sample points More... | |
![]() | |
virtual int | Count [get] |
Public Member Functions | |
CGShape () | |
CGShape (CGShape source) | |
override T | Clone< T > () |
void | Copy (CGShape source) |
float | DistanceToF (float distance) |
Converts absolute (World Units) to relative (F) distance More... | |
float | FToDistance (float f) |
Converts relative (F) to absolute distance (World Units) More... | |
int | GetFIndex (float f, out float frag) |
Gets the index of a certain F More... | |
void | Interpolate (float f, out Vector3 position, out Vector3 up) |
Interpolates Position and Normal by F More... | |
Vector3 | InterpolatePosition (float f) |
Interpolates Position by F More... | |
Vector3 | InterpolateUp (float f) |
Interpolates Normal by F More... | |
void | Move (ref float f, ref int direction, float speed, CurvyClamping clamping) |
void | MoveBy (ref float f, ref int direction, float speedDist, CurvyClamping clamping) |
virtual void | Recalculate () |
Recalculate Length and F[] (by measuring a polyline built from all Position points) More... | |
void | RecalculateNormals (List< int > softEdges) |
Static Public Member Functions | |
static void | Copy (CGShape dest, CGShape source) |
![]() | |
static implicit | operator bool (CGData a) |
Additional Inherited Members | |
![]() | |
int | getGenericFIndex (ref float[] FMapArray, float fValue, out float frag) |
Searches FMapArray and returns the index that covers the fValue as well as the percentage between index and index+1 More... | |
CGShape | ( | ) |
void Copy | ( | CGShape | source | ) |
float DistanceToF | ( | float | distance | ) |
Converts absolute (World Units) to relative (F) distance
distance | distance in world units |
float FToDistance | ( | float | f | ) |
Converts relative (F) to absolute distance (World Units)
f | relative distance (0..1) |
int GetFIndex | ( | float | f, |
out float | frag | ||
) |
Gets the index of a certain F
f | F (0..1) |
frag | fragment between the resulting and the next index (0..1) |
void Interpolate | ( | float | f, |
out Vector3 | position, | ||
out Vector3 | up | ||
) |
Interpolates Position and Normal by F
f | 0..1 |
position | |
up | a.k.a normal |
Vector3 InterpolatePosition | ( | float | f | ) |
Interpolates Position by F
f | 0..1 |
Vector3 InterpolateUp | ( | float | f | ) |
Interpolates Normal by F
f | 0..1 |
void Move | ( | ref float | f, |
ref int | direction, | ||
float | speed, | ||
CurvyClamping | clamping | ||
) |
void MoveBy | ( | ref float | f, |
ref int | direction, | ||
float | speedDist, | ||
CurvyClamping | clamping | ||
) |
|
virtual |
Recalculate Length and F[] (by measuring a polyline built from all Position points)
Call this after TRS'ing a shape
void RecalculateNormals | ( | List< int > | softEdges | ) |
bool Closed |
Whether the base spline is closed or not
float [] F = new float[0] |
Relative position (0..1, NOT TF!) within the length of the shape
float Length |
Length in world units
float [] Map = new float[0] |
Arbitrary mapped value, usually U
List<SamplePointsMaterialGroup> MaterialGroups = new List<SamplePointsMaterialGroup>() |
Groups/Patches
Vector3 [] Normal = new Vector3[0] |
Normal
Vector3 [] Position = new Vector3[0] |
Shape/Path Position
bool Seamless |
Whether the Shape/Path is seamless, i.e. Closed==true and the whole length is covered
float [] SourceF = new float[0] |
Relative position (0..1, NOT TF!) within the length of the source spline (if any)
bool SourceIsManaged |
Whether the source is managed or not
This could be used to determine if values needs to be transformed into generator space or not
|
get |
Gets the number of sample points