33 lines
1001 B
Kotlin
33 lines
1001 B
Kotlin
package org.openrndr.extra.fx.edges
|
|
|
|
import org.openrndr.color.ColorRGBa
|
|
import org.openrndr.draw.Filter
|
|
import org.openrndr.draw.Shader
|
|
import org.openrndr.extra.fx.filterFragmentCode
|
|
import org.openrndr.extra.parameters.ColorParameter
|
|
import org.openrndr.extra.parameters.Description
|
|
import org.openrndr.extra.parameters.DoubleParameter
|
|
|
|
@Description("Luma Sobel")
|
|
class LumaSobel : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("edges/luma-sobel.frag"))) {
|
|
|
|
@ColorParameter("background color")
|
|
var backgroundColor: ColorRGBa by parameters
|
|
|
|
@ColorParameter("edge color")
|
|
var edgeColor: ColorRGBa by parameters
|
|
|
|
@DoubleParameter("background opacity", 0.0, 1.0)
|
|
var backgroundOpacity:Double by parameters
|
|
|
|
@DoubleParameter("edge opacity", 0.0, 1.0)
|
|
var edgeOpacity:Double by parameters
|
|
|
|
init {
|
|
backgroundColor = ColorRGBa.BLACK
|
|
edgeColor = ColorRGBa.WHITE
|
|
edgeOpacity = 1.0
|
|
backgroundOpacity = 1.0
|
|
}
|
|
}
|