automated snapshot
This commit is contained in:
10
main.go
10
main.go
@@ -62,11 +62,12 @@ func main() {
|
|||||||
|
|
||||||
imageLayer := NewImageLayer("/home/d/Dropbox/photos/Events/2025/Aurora/Photo Nov 11 2025, 9 52 03 PM.jpg")
|
imageLayer := NewImageLayer("/home/d/Dropbox/photos/Events/2025/Aurora/Photo Nov 11 2025, 9 52 03 PM.jpg")
|
||||||
|
|
||||||
|
sketch.AddColorLayer("background-black", rl.Black)
|
||||||
|
sketch.AddLayer("field", &FieldLayer{field: field, dirty: true})
|
||||||
contourLayer := NewContourLayer(&sketch, rng, field)
|
contourLayer := NewContourLayer(&sketch, rng, field)
|
||||||
sketch.CreateLayer("field", &FieldLayer{field: field, dirty: true})
|
sketch.AddLayer("contours", contourLayer)
|
||||||
sketch.CreateLayer("contours", contourLayer)
|
sketch.AddLayer("sierpinski", sierpinskiLayer)
|
||||||
sketch.CreateLayer("sierpinski", sierpinskiLayer)
|
sketch.AddLayer("aurora", imageLayer)
|
||||||
sketch.CreateLayer("aurora", imageLayer)
|
|
||||||
|
|
||||||
ports := MakePorts()
|
ports := MakePorts()
|
||||||
ports["sierpinskiArrowAngle"] =
|
ports["sierpinskiArrowAngle"] =
|
||||||
@@ -76,7 +77,6 @@ func main() {
|
|||||||
Bias: 60,
|
Bias: 60,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
ports["sierpinskiArrowDepth"] =
|
ports["sierpinskiArrowDepth"] =
|
||||||
Const {
|
Const {
|
||||||
V: 6,
|
V: 6,
|
||||||
|
|||||||
27
sketch.go
27
sketch.go
@@ -68,7 +68,7 @@ func NewSketch(sourceWidth, sourceHeight int32) Sketch {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Sketch) CreateLayer(name string, layer Layer) {
|
func (s *Sketch) AddLayer(name string, layer Layer) {
|
||||||
texture := rl.LoadRenderTexture(s.sourceWidth, s.sourceHeight)
|
texture := rl.LoadRenderTexture(s.sourceWidth, s.sourceHeight)
|
||||||
config := NewLayerConfig()
|
config := NewLayerConfig()
|
||||||
layerTools :=
|
layerTools :=
|
||||||
@@ -82,6 +82,14 @@ func (s *Sketch) CreateLayer(name string, layer Layer) {
|
|||||||
s.layerTools[name] = &layerTools
|
s.layerTools[name] = &layerTools
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *Sketch) AddColorLayer(name string, c rl.Color) {
|
||||||
|
colorLayer := &ColorLayer {
|
||||||
|
color: c,
|
||||||
|
dirty: true,
|
||||||
|
}
|
||||||
|
s.AddLayer(name, colorLayer)
|
||||||
|
}
|
||||||
|
|
||||||
func (s *Sketch) Draw(ctx *RenderCtx) {
|
func (s *Sketch) Draw(ctx *RenderCtx) {
|
||||||
// render onto all layer textures
|
// render onto all layer textures
|
||||||
for _, instance := range s.layerToolsOrdered {
|
for _, instance := range s.layerToolsOrdered {
|
||||||
@@ -265,6 +273,22 @@ type Layer interface {
|
|||||||
IsDirty() bool
|
IsDirty() bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type ColorLayer struct {
|
||||||
|
color rl.Color
|
||||||
|
dirty bool
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cl *ColorLayer) Update(ctx *RenderCtx) {
|
||||||
|
;
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cl *ColorLayer) Draw(ctx *RenderCtx) {
|
||||||
|
rl.DrawRectangle(0, 0, ctx.SourceWidth, ctx.SourceHeight, cl.color)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cl *ColorLayer) IsDirty() bool {
|
||||||
|
return cl.dirty
|
||||||
|
}
|
||||||
|
|
||||||
type ImageLayer struct {
|
type ImageLayer struct {
|
||||||
texture rl.Texture2D
|
texture rl.Texture2D
|
||||||
@@ -293,7 +317,6 @@ func (il *ImageLayer) IsDirty() bool {
|
|||||||
return il.dirty
|
return il.dirty
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
type TestPattern struct{
|
type TestPattern struct{
|
||||||
dirty bool
|
dirty bool
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user