Class BuildShapeExtrusion
- Namespace
- FluffyUnderware.Curvy.Generator.Modules
Extrudes a 2D shape along a path to produce a 3D volume
public class BuildShapeExtrusion : ScalingModule, IPathProvider
- Inheritance
-
ObjectComponentBehaviourMonoBehaviourDTVersionedMonoBehaviourBuildShapeExtrusion
- Implements
- Inherited Members
Fields
InCross
[HideInInspector]
[InputSlotInfo(typeof(CGShape), Array = true, ArrayType = SlotInfo.SlotArrayType.Hidden, RequestDataOnly = true)]
public CGModuleInputSlot InCross
Field Value
InPath
[HideInInspector]
[InputSlotInfo(typeof(CGPath), RequestDataOnly = true)]
public CGModuleInputSlot InPath
Field Value
OutVolume
[HideInInspector]
[OutputSlotInfo(typeof(CGVolume))]
public CGModuleOutputSlot OutVolume
Field Value
OutVolumeHollow
[HideInInspector]
[OutputSlotInfo(typeof(CGVolume))]
public CGModuleOutputSlot OutVolumeHollow
Field Value
Properties
AngleThreshold
The maximum angle between consecutive path segments, in degrees, used when Optimize is enabled
public float AngleThreshold { get; set; }
Property Value
Cross
public IExternalInput Cross { get; }
Property Value
CrossAngleThreshold
Similar to AngleThreshold, but for the cross shape.
public float CrossAngleThreshold { get; set; }
Property Value
- See Also
CrossFrom
The start of the cross (shape) rasterization range, as a relative distance (between 0 and 1)
public float CrossFrom { get; set; }
Property Value
CrossIncludeControlPoints
When enabled, vertices are guaranteed to be created for all the cross shape's Control Points
public bool CrossIncludeControlPoints { get; set; }
Property Value
CrossLength
The length of the cross (shape) rasterization range
public float CrossLength { get; set; }
Property Value
CrossOptimize
Similar to Optimize, but for the cross shape.
public bool CrossOptimize { get; set; }
Property Value
- See Also
CrossResolution
Defines how densely the cross spline's sampling points are. When the value is 100, the number of sampling points per world distance unit is equal to the spline's MaxPointsPerUnit
public int CrossResolution { get; set; }
Property Value
CrossReverseNormals
When enabled, reverses the vertex normals of the cross section
public bool CrossReverseNormals { get; set; }
Property Value
CrossShiftMode
Defines how the CrossFShift value is defined.
public BuildShapeExtrusion.CrossShiftModeEnum CrossShiftMode { get; set; }
Property Value
CrossShiftValue
The custom shift value applied to the output volume's cross when CrossShiftMode is set to Custom
public float CrossShiftValue { get; set; }
Property Value
CrossTo
The end of the cross (shape) rasterization range, as a relative distance (between 0 and 1)
public float CrossTo { get; set; }
Property Value
ExtrusionStatistics
Statistics about the last produced extrusion
public BuildShapeExtrusion.Statistics ExtrusionStatistics { get; set; }
Property Value
From
The start of the path rasterization range, as a relative distance (between 0 and 1)
public float From { get; set; }
Property Value
HollowInset
The inset amount for the hollow volume, between 0 and 1
public float HollowInset { get; set; }
Property Value
HollowReverseNormals
When enabled, reverses the vertex normals of the hollow volume
public bool HollowReverseNormals { get; set; }
Property Value
Length
The length of the path rasterization range
public float Length { get; set; }
Property Value
Optimize
When enabled, segments are placed based on the path's curvature rather than at a fixed distance. Fewer segments are used on straight sections, more on curves.
public bool Optimize { get; set; }
Property Value
- See Also
PathIsClosed
Whether the input path is closed
public bool PathIsClosed { get; }
Property Value
Resolution
Defines how densely the path spline's sampling points are. When the value is 100, the number of sampling points per world distance unit is equal to the spline's MaxPointsPerUnit
public int Resolution { get; set; }
Property Value
To
The end of the path rasterization range, as a relative distance (between 0 and 1)
public float To { get; set; }
Property Value
Methods
Refresh()
Add Module processing code in here
public override void Refresh()