[orx-shade-styles] Add pattern shade styles
This commit is contained in:
@@ -0,0 +1,52 @@
|
||||
package patterns
|
||||
|
||||
import org.openrndr.application
|
||||
import org.openrndr.color.ColorRGBa
|
||||
import org.openrndr.draw.loadFont
|
||||
import org.openrndr.draw.loadImage
|
||||
import org.openrndr.extra.camera.Camera2D
|
||||
import org.openrndr.extra.color.presets.NAVY
|
||||
import org.openrndr.extra.imageFit.imageFit
|
||||
import org.openrndr.extra.shadestyles.fills.FillUnits
|
||||
import org.openrndr.extra.shadestyles.fills.patterns.pattern
|
||||
|
||||
fun main() = application {
|
||||
configure {
|
||||
width = 720
|
||||
height = 720
|
||||
}
|
||||
program {
|
||||
extend(Camera2D())
|
||||
val image = loadImage("demo-data/images/image-001.png")
|
||||
extend {
|
||||
drawer.shadeStyle = pattern {
|
||||
backgroundColor = ColorRGBa.NAVY
|
||||
foregroundColor = ColorRGBa.WHITE
|
||||
patternUnits = FillUnits.WORLD
|
||||
parameter("time", seconds*0.1)
|
||||
// domainWarpFunction = """vec2 patternDomainWarp(vec2 uv) { return uv + vec2(cos(uv.y * 0.1 + p_time), sin(uv.x * 0.1 + p_time)) * 30.05; }"""
|
||||
scale = 0.4
|
||||
|
||||
checkers {
|
||||
}
|
||||
}
|
||||
|
||||
//drawer.rectangle(drawer.bounds)
|
||||
drawer.imageFit(image, drawer.bounds)
|
||||
|
||||
drawer.shadeStyle = pattern {
|
||||
backgroundColor = ColorRGBa.NAVY
|
||||
foregroundColor = ColorRGBa.WHITE
|
||||
patternUnits = FillUnits.WORLD
|
||||
parameter("time", seconds)
|
||||
domainWarpFunction = """vec2 patternDomainWarp(vec2 uv) { return uv + vec2(cos(uv.y * 0.1 + p_time), sin(uv.x * 0.1 + p_time)) * 30.05; }"""
|
||||
scale = 0.2
|
||||
checkers {
|
||||
}
|
||||
}
|
||||
drawer.fontMap = loadFont("demo-data/fonts/IBMPlexMono-Regular.ttf", 196.0)
|
||||
drawer.text("Patterns", 10.0, height / 2.0)
|
||||
//drawer.circle(drawer.bounds.center, 300.0)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package patterns
|
||||
|
||||
import org.openrndr.application
|
||||
import org.openrndr.color.ColorRGBa
|
||||
import org.openrndr.draw.loadFont
|
||||
import org.openrndr.draw.loadImage
|
||||
import org.openrndr.extra.camera.Camera2D
|
||||
import org.openrndr.extra.color.presets.NAVY
|
||||
import org.openrndr.extra.color.presets.PEACH_PUFF
|
||||
import org.openrndr.extra.imageFit.imageFit
|
||||
import org.openrndr.extra.shadestyles.fills.FillUnits
|
||||
import org.openrndr.extra.shadestyles.fills.patterns.pattern
|
||||
|
||||
fun main() = application {
|
||||
configure {
|
||||
width = 720
|
||||
height = 720
|
||||
}
|
||||
program {
|
||||
extend(Camera2D())
|
||||
extend {
|
||||
drawer.shadeStyle = pattern {
|
||||
backgroundColor = ColorRGBa.NAVY
|
||||
foregroundColor = ColorRGBa.PEACH_PUFF
|
||||
patternUnits = FillUnits.WORLD
|
||||
parameter("time", seconds*0.1)
|
||||
scale = 1.0
|
||||
xorMod2 {
|
||||
patternMod = 13
|
||||
patternOffset = (seconds*1).toInt()
|
||||
patternMask = 1
|
||||
}
|
||||
}
|
||||
drawer.rectangle(drawer.bounds.scaledBy(100.0))
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
package patterns
|
||||
|
||||
import org.openrndr.application
|
||||
import org.openrndr.color.ColorRGBa
|
||||
import org.openrndr.draw.loadFont
|
||||
import org.openrndr.draw.loadImage
|
||||
import org.openrndr.extra.camera.Camera2D
|
||||
import org.openrndr.extra.color.presets.DARK_GRAY
|
||||
import org.openrndr.extra.color.presets.NAVY
|
||||
import org.openrndr.extra.color.presets.PEACH_PUFF
|
||||
import org.openrndr.extra.imageFit.imageFit
|
||||
import org.openrndr.extra.shadestyles.fills.FillUnits
|
||||
import org.openrndr.extra.shadestyles.fills.clip.clip
|
||||
import org.openrndr.extra.shadestyles.fills.gradients.gradient
|
||||
import org.openrndr.extra.shadestyles.fills.patterns.pattern
|
||||
import kotlin.math.cos
|
||||
|
||||
fun main() = application {
|
||||
configure {
|
||||
width = 720
|
||||
height = 720
|
||||
}
|
||||
program {
|
||||
extend(Camera2D())
|
||||
extend {
|
||||
drawer.shadeStyle = pattern {
|
||||
backgroundColor = ColorRGBa.DARK_GRAY
|
||||
foregroundColor = ColorRGBa.PEACH_PUFF
|
||||
patternUnits = FillUnits.WORLD
|
||||
parameter("time", seconds*0.1)
|
||||
scale = 0.2
|
||||
crosses {
|
||||
width = 1.0
|
||||
weight = 0.2
|
||||
rotation = seconds * 45.0
|
||||
strokeWeight = cos(seconds) * 0.3 + 0.31
|
||||
}
|
||||
} + gradient<ColorRGBa> {
|
||||
stops[1.0] = ColorRGBa.BLACK
|
||||
stops[0.5] = ColorRGBa.WHITE
|
||||
stops[0.0] = ColorRGBa.WHITE
|
||||
conic { }
|
||||
} + clip {
|
||||
star {
|
||||
sides = 36
|
||||
sharpness = 0.1
|
||||
clipOuter = 0.05
|
||||
clipInner = -0.1
|
||||
radius = 0.4
|
||||
}
|
||||
}
|
||||
|
||||
drawer.rectangle(drawer.bounds.offsetEdges(-50.0))
|
||||
|
||||
// drawer.fill = ColorRGBa.WHITE
|
||||
// drawer.fontMap = loadFont("demo-data/fonts/IBMPlexMono-Regular.ttf", 196.0)
|
||||
// drawer.text("Patterns", 10.0, height / 2.0)
|
||||
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user