summaryrefslogtreecommitdiffstats
path: root/Scripts/Fold/Editor/FoldPipelineBuilder.cs
diff options
context:
space:
mode:
authoryum <yum.food.vr@gmail.com>2026-02-17 18:52:17 -0800
committeryum <yum.food.vr@gmail.com>2026-02-17 18:52:17 -0800
commit00553b3f305d0e2217659993f237ff3da604ef85 (patch)
tree76d048fcfb005cf7427f43bb6539d1ef59b75bf3 /Scripts/Fold/Editor/FoldPipelineBuilder.cs
parent0783345c23701149b807d2063410e329ba1fbed6 (diff)
Fold: add plane to octahedron code
Diffstat (limited to 'Scripts/Fold/Editor/FoldPipelineBuilder.cs')
-rwxr-xr-xScripts/Fold/Editor/FoldPipelineBuilder.cs42
1 files changed, 42 insertions, 0 deletions
diff --git a/Scripts/Fold/Editor/FoldPipelineBuilder.cs b/Scripts/Fold/Editor/FoldPipelineBuilder.cs
index 2dc2291..731ceeb 100755
--- a/Scripts/Fold/Editor/FoldPipelineBuilder.cs
+++ b/Scripts/Fold/Editor/FoldPipelineBuilder.cs
@@ -60,6 +60,9 @@ public class FoldPipelineBuilder
public const int HemiOctahedronToPlane = 10;
public const int Scale = 11;
public const int Translate = 12;
+ public const int PlaneToOctahedron = 13;
+ public const int OctahedronToPlane = 14;
+ public const int Rotate = 15;
}
FoldPipelineBuilder() { }
@@ -133,6 +136,45 @@ public class FoldPipelineBuilder
return this;
}
+ public FoldPipelineBuilder PlaneToOctahedron(Vector3 p, Vector3 r, Vector3 s, float t)
+ {
+ slots.Add(new FoldSlot
+ {
+ opcode = Opcodes.PlaneToOctahedron,
+ vec0 = p,
+ vec1 = r,
+ vec2 = s,
+ float0 = t
+ });
+ return this;
+ }
+
+ public FoldPipelineBuilder OctahedronToPlane(Vector3 p, Vector3 r, Vector3 s, float t)
+ {
+ slots.Add(new FoldSlot
+ {
+ opcode = Opcodes.OctahedronToPlane,
+ vec0 = p,
+ vec1 = r,
+ vec2 = s,
+ float0 = t
+ });
+ return this;
+ }
+
+ public FoldPipelineBuilder Rotate(Vector3 center, Vector3 axis, float angle, float t)
+ {
+ slots.Add(new FoldSlot
+ {
+ opcode = Opcodes.Rotate,
+ vec0 = center,
+ vec1 = axis,
+ float0 = angle,
+ float1 = t
+ });
+ return this;
+ }
+
public FoldPipelineBuilder HemiOctahedronToPlane(Vector3 p, Vector3 r, Vector3 s, float t)
{
slots.Add(new FoldSlot