Upgrade to OPENRNDR 0.3.40, fix Filters, better default paths for orx-gui
This commit is contained in:
@@ -15,7 +15,7 @@ buildscript {
|
|||||||
apply plugin: 'org.jetbrains.dokka'
|
apply plugin: 'org.jetbrains.dokka'
|
||||||
|
|
||||||
project.ext {
|
project.ext {
|
||||||
openrndrVersion = "0.3.40-rc.5"
|
openrndrVersion = "0.3.40"
|
||||||
kotlinVersion = "1.3.70"
|
kotlinVersion = "1.3.70"
|
||||||
spekVersion = "2.0.10"
|
spekVersion = "2.0.10"
|
||||||
libfreenectVersion = "0.5.7-1.5.2"
|
libfreenectVersion = "0.5.7-1.5.2"
|
||||||
|
|||||||
@@ -7,9 +7,9 @@ import java.net.URL
|
|||||||
|
|
||||||
internal class FilterTools
|
internal class FilterTools
|
||||||
|
|
||||||
internal fun filterFragmentCode(resourceId: String): String {
|
|
||||||
val urlString = resourceUrl("gl3/$resourceId", FilterTools::class.java)
|
internal fun filterFragmentUrl(resourceId: String): String {
|
||||||
return URL(urlString).readText()
|
return resourceUrl("gl3/$resourceId", FilterTools::class.java)
|
||||||
}
|
}
|
||||||
|
|
||||||
internal data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)
|
internal data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package org.openrndr.extra.fx.antialias
|
package org.openrndr.extra.fx.antialias
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@@ -10,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
|
|||||||
* FXAA approximate antialiasing filter. Only works on LDR inputs
|
* FXAA approximate antialiasing filter. Only works on LDR inputs
|
||||||
*/
|
*/
|
||||||
@Description("FXAA")
|
@Description("FXAA")
|
||||||
class FXAA : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("antialias/fxaa.frag"))) {
|
class FXAA : Filter(filterShaderFromUrl(filterFragmentUrl("antialias/fxaa.frag"))) {
|
||||||
/**
|
/**
|
||||||
* luma threshold, default value is 0.5
|
* luma threshold, default value is 0.5
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
package org.openrndr.extra.fx.blend
|
package org.openrndr.extra.fx.blend
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
import org.openrndr.extra.parameters.BooleanParameter
|
||||||
|
|
||||||
class ColorBurn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/color-burn.frag"))) {
|
class ColorBurn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/color-burn.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -14,7 +14,7 @@ class ColorBurn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class ColorDodge : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/color-dodge.frag"))) {
|
class ColorDodge : Filter(filterShaderFromUrl(filterFragmentUrl("blend/color-dodge.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -23,7 +23,7 @@ class ColorDodge : Filter(Shader.createFromCode(Filter.filterVertexCode, filterF
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Darken : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/darken.frag"))) {
|
class Darken : Filter(filterShaderFromUrl(filterFragmentUrl("blend/darken.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -32,7 +32,7 @@ class Darken : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class HardLight : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/hard-light.frag"))) {
|
class HardLight : Filter(filterShaderFromUrl(filterFragmentUrl("blend/hard-light.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ class HardLight : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFr
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Lighten : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/lighten.frag"))) {
|
class Lighten : Filter(filterShaderFromUrl(filterFragmentUrl("blend/lighten.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -50,7 +50,7 @@ class Lighten : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFrag
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Multiply : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/multiply.frag"))) {
|
class Multiply : Filter(filterShaderFromUrl(filterFragmentUrl("blend/multiply.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -59,7 +59,7 @@ class Multiply : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFra
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Normal : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/normal.frag"))) {
|
class Normal : Filter(filterShaderFromUrl(filterFragmentUrl("blend/normal.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -68,7 +68,7 @@ class Normal : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Overlay : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/overlay.frag"))) {
|
class Overlay : Filter(filterShaderFromUrl(filterFragmentUrl("blend/overlay.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -77,7 +77,7 @@ class Overlay : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFrag
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class Screen : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/screen.frag"))) {
|
class Screen : Filter(filterShaderFromUrl(filterFragmentUrl("blend/screen.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -87,18 +87,18 @@ class Screen : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragm
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class SourceIn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-in.frag")))
|
class SourceIn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-in.frag")))
|
||||||
class SourceOut : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-out.frag")))
|
class SourceOut : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-out.frag")))
|
||||||
class SourceAtop : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/source-atop.frag")))
|
class SourceAtop : Filter(filterShaderFromUrl(filterFragmentUrl("blend/source-atop.frag")))
|
||||||
class DestinationIn : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-in.frag")))
|
class DestinationIn : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-in.frag")))
|
||||||
class DestinationOut : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-out.frag")))
|
class DestinationOut : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-out.frag")))
|
||||||
class DestinationAtop : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/destination-atop.frag")))
|
class DestinationAtop : Filter(filterShaderFromUrl(filterFragmentUrl("blend/destination-atop.frag")))
|
||||||
class Xor : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/xor.frag")))
|
class Xor : Filter(filterShaderFromUrl(filterFragmentUrl("blend/xor.frag")))
|
||||||
|
|
||||||
class MultiplyContrast : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/multiply-contrast.frag")))
|
class MultiplyContrast : Filter(filterShaderFromUrl(filterFragmentUrl("blend/multiply-contrast.frag")))
|
||||||
|
|
||||||
class Passthrough : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/passthrough.frag")))
|
class Passthrough : Filter(filterShaderFromUrl(filterFragmentUrl("blend/passthrough.frag")))
|
||||||
class Add : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/add.frag"))) {
|
class Add : Filter(filterShaderFromUrl(filterFragmentUrl("blend/add.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
@@ -106,7 +106,7 @@ class Add : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragment
|
|||||||
clip = false
|
clip = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
class Subtract : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blend/subtract.frag"))) {
|
class Subtract : Filter(filterShaderFromUrl(filterFragmentUrl("blend/subtract.frag"))) {
|
||||||
@BooleanParameter("source clip")
|
@BooleanParameter("source clip")
|
||||||
var clip: Boolean by parameters
|
var clip: Boolean by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
|
||||||
import org.openrndr.extra.fx.ColorBufferDescription
|
import org.openrndr.extra.fx.ColorBufferDescription
|
||||||
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
@@ -13,8 +13,7 @@ import org.openrndr.math.Vector2
|
|||||||
* Approximate separated Gaussian blur
|
* Approximate separated Gaussian blur
|
||||||
*/
|
*/
|
||||||
@Description("Approximate Gaussian blur")
|
@Description("Approximate Gaussian blur")
|
||||||
class ApproximateGaussianBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
|
class ApproximateGaussianBlur : Filter(filterShaderFromUrl(filterFragmentUrl(("blur/approximate-gaussian-blur.frag")))) {
|
||||||
filterFragmentCode("blur/approximate-gaussian-blur.frag"))) {
|
|
||||||
/**
|
/**
|
||||||
* blur sample window, default value is 5
|
* blur sample window, default value is 5
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -2,13 +2,13 @@ package org.openrndr.extra.fx.blur
|
|||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.blend.Add
|
import org.openrndr.extra.fx.blend.Add
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("Bloom")
|
@Description("Bloom")
|
||||||
class Bloom(blur: Filter = ApproximateGaussianBlur()) : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom.frag"))) {
|
class Bloom(blur: Filter = ApproximateGaussianBlur()) : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom.frag"))) {
|
||||||
/**
|
/**
|
||||||
* the blur filter to use for the bloom, default is Approximate Gaussian Blur
|
* the blur filter to use for the bloom, default is Approximate Gaussian Blur
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
@@ -12,8 +12,7 @@ import org.openrndr.math.Vector2
|
|||||||
* BoxBlur implemented as a separable filter
|
* BoxBlur implemented as a separable filter
|
||||||
*/
|
*/
|
||||||
@Description("Box-blur")
|
@Description("Box-blur")
|
||||||
class BoxBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
|
class BoxBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/box-blur.frag"))) {
|
||||||
filterFragmentCode("blur/box-blur.frag"))) {
|
|
||||||
|
|
||||||
data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)
|
data class ColorBufferDescription(val width: Int, val height: Int, val contentScale: Double, val format: ColorFormat, val type: ColorType)
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,12 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
|
||||||
|
|
||||||
@Description("Frame blur")
|
@Description("Frame blur")
|
||||||
class FrameBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
|
class FrameBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/frame-blur.frag"))) {
|
||||||
filterFragmentCode("blur/frame-blur.frag"))) {
|
|
||||||
|
|
||||||
@DoubleParameter("blend", 0.0, 1.0)
|
@DoubleParameter("blend", 0.0, 1.0)
|
||||||
var blend: Double by parameters
|
var blend: Double by parameters
|
||||||
|
|||||||
@@ -1,8 +1,9 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
|
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
@@ -11,8 +12,7 @@ import org.openrndr.extra.parameters.IntParameter
|
|||||||
* Exact Gaussian blur, implemented as a single pass filter
|
* Exact Gaussian blur, implemented as a single pass filter
|
||||||
*/
|
*/
|
||||||
@Description("Gaussian blur")
|
@Description("Gaussian blur")
|
||||||
class GaussianBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
|
class GaussianBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/gaussian-blur.frag"))) {
|
||||||
filterFragmentCode("blur/gaussian-blur.frag"))) {
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The sample window, default value is 5
|
* The sample window, default value is 5
|
||||||
|
|||||||
@@ -1,15 +1,14 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("Hash blur")
|
@Description("Hash blur")
|
||||||
class HashBlur : Filter(Shader.createFromCode(Filter.filterVertexCode,
|
class HashBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/hash-blur.frag"))) {
|
||||||
filterFragmentCode("blur/hash-blur.frag"))) {
|
|
||||||
/**
|
/**
|
||||||
* Blur radius in pixels, default is 5.0
|
* Blur radius in pixels, default is 5.0
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package org.openrndr.extra.fx.blur
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
import org.openrndr.extra.parameters.BooleanParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
@@ -10,11 +10,11 @@ import org.openrndr.extra.parameters.IntParameter
|
|||||||
import org.openrndr.filter.color.delinearize
|
import org.openrndr.filter.color.delinearize
|
||||||
import org.openrndr.filter.color.linearize
|
import org.openrndr.filter.color.linearize
|
||||||
|
|
||||||
class BloomDownscale : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-downscale.frag"))) {
|
class BloomDownscale : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-downscale.frag"))) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class BloomUpscale : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-upscale.frag"))) {
|
class BloomUpscale : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-upscale.frag"))) {
|
||||||
var gain:Double by parameters
|
var gain:Double by parameters
|
||||||
var shape:Double by parameters
|
var shape:Double by parameters
|
||||||
var seed:Double by parameters
|
var seed:Double by parameters
|
||||||
@@ -26,7 +26,7 @@ class BloomUpscale : Filter(Shader.createFromCode(filterVertexCode, filterFragme
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
class BloomCombine: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-combine.frag"))) {
|
class BloomCombine: Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-combine.frag"))) {
|
||||||
var gain: Double by parameters
|
var gain: Double by parameters
|
||||||
var bias: ColorRGBa by parameters
|
var bias: ColorRGBa by parameters
|
||||||
|
|
||||||
@@ -37,7 +37,7 @@ class BloomCombine: Filter(Shader.createFromCode(filterVertexCode, filterFragmen
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Description("MipBloom")
|
@Description("MipBloom")
|
||||||
open class MipBloom<T:Filter>(val blur:T) : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("blur/bloom-combine.frag"))) {
|
open class MipBloom<T:Filter>(val blur:T) : Filter(filterShaderFromUrl(filterFragmentUrl("blur/bloom-combine.frag"))) {
|
||||||
var passes = 6
|
var passes = 6
|
||||||
|
|
||||||
@DoubleParameter("shape", 0.0, 4.0)
|
@DoubleParameter("shape", 0.0, 4.0)
|
||||||
|
|||||||
@@ -1,16 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.blur
|
package org.openrndr.extra.fx.blur
|
||||||
|
|
||||||
import org.openrndr.draw.ColorBuffer
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.draw.Shader
|
|
||||||
import org.openrndr.draw.colorBuffer
|
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.math.Vector2
|
import org.openrndr.math.Vector2
|
||||||
|
|
||||||
@Description("Zoom Blur")
|
@Description("Zoom Blur")
|
||||||
class ZoomBlur : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("blur/zoom-blur.frag"))) {
|
class ZoomBlur : Filter(filterShaderFromUrl(filterFragmentUrl("blur/zoom-blur.frag"))) {
|
||||||
var center: Vector2 by parameters
|
var center: Vector2 by parameters
|
||||||
|
|
||||||
@DoubleParameter("strength", 0.0, 1.0)
|
@DoubleParameter("strength", 0.0, 1.0)
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
package org.openrndr.extra.fx.color
|
package org.openrndr.extra.fx.color
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.math.Vector2
|
import org.openrndr.math.Vector2
|
||||||
import org.openrndr.resourceUrl
|
import org.openrndr.resourceUrl
|
||||||
|
|
||||||
@Description("Chromatic Aberration")
|
@Description("Chromatic Aberration")
|
||||||
class ChromaticAberration : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/chromatic-aberration.frag"))){
|
class ChromaticAberration : Filter(filterShaderFromUrl(filterFragmentUrl("color/chromatic-aberration.frag"))){
|
||||||
/**
|
/**
|
||||||
* aberration factor, default value is 8.0
|
* aberration factor, default value is 8.0
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package org.openrndr.extra.fx.color
|
package org.openrndr.extra.fx.color
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Color correction")
|
@Description("Color correction")
|
||||||
class ColorCorrection : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("color/color-correction.frag"))) {
|
class ColorCorrection : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-correction.frag"))) {
|
||||||
@DoubleParameter("brightness", -1.0, 1.0, order = 0)
|
@DoubleParameter("brightness", -1.0, 1.0, order = 0)
|
||||||
var brightness: Double by parameters
|
var brightness: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package org.openrndr.extra.fx.color
|
package org.openrndr.extra.fx.color
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
|
|
||||||
class ColorLookup(lookup: ColorBuffer) : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-lookup.frag"))) {
|
class ColorLookup(lookup: ColorBuffer) : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-lookup.frag"))) {
|
||||||
/** a color look-up texture */
|
/** a color look-up texture */
|
||||||
var lookup: ColorBuffer by parameters
|
var lookup: ColorBuffer by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -2,15 +2,15 @@ package org.openrndr.extra.fx.color
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
|
|
||||||
class ColorMix : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-mix.frag")))
|
class ColorMix : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-mix.frag")))
|
||||||
|
|
||||||
@Description("Tint")
|
@Description("Tint")
|
||||||
class ColorTint : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/color-tint.frag"))) {
|
class ColorTint : Filter(filterShaderFromUrl(filterFragmentUrl("color/color-tint.frag"))) {
|
||||||
@ColorParameter("tint")
|
@ColorParameter("tint")
|
||||||
var tint: ColorRGBa by parameters
|
var tint: ColorRGBa by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -2,15 +2,14 @@ package org.openrndr.extra.fx.color
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Luma map ")
|
@Description("Luma map ")
|
||||||
class LumaMap : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-map.frag"))) {
|
class LumaMap : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-map.frag"))) {
|
||||||
@ColorParameter("foreground color")
|
@ColorParameter("foreground color")
|
||||||
var foreground: ColorRGBa by parameters
|
var foreground: ColorRGBa by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.color
|
package org.openrndr.extra.fx.color
|
||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Luma map ")
|
@Description("Luma map ")
|
||||||
class LumaOpacity : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-opacity.frag"))) {
|
class LumaOpacity : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-opacity.frag"))) {
|
||||||
@DoubleParameter("foreground luma",0.0, 1.0)
|
@DoubleParameter("foreground luma",0.0, 1.0)
|
||||||
var foregroundLuma: Double by parameters
|
var foregroundLuma: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -2,15 +2,14 @@ package org.openrndr.extra.fx.color
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Luma threshold ")
|
@Description("Luma threshold ")
|
||||||
class LumaThreshold : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/luma-threshold.frag"))) {
|
class LumaThreshold : Filter(filterShaderFromUrl(filterFragmentUrl("color/luma-threshold.frag"))) {
|
||||||
@DoubleParameter("threshold value", 0.0, 1.0)
|
@DoubleParameter("threshold value", 0.0, 1.0)
|
||||||
var threshold: Double by parameters
|
var threshold: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.color
|
package org.openrndr.extra.fx.color
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Sepia")
|
@Description("Sepia")
|
||||||
class Sepia : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/sepia.frag"))) {
|
class Sepia : Filter(filterShaderFromUrl(filterFragmentUrl("color/sepia.frag"))) {
|
||||||
@DoubleParameter("amount", 0.0, 1.0)
|
@DoubleParameter("amount", 0.0, 1.0)
|
||||||
var amount: Double by parameters
|
var amount: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ package org.openrndr.extra.fx.color
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Set background")
|
@Description("Set background")
|
||||||
class SetBackground : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/set-background.frag"))) {
|
class SetBackground : Filter(filterShaderFromUrl(filterFragmentUrl("color/set-background.frag"))) {
|
||||||
|
|
||||||
@ColorParameter("background color")
|
@ColorParameter("background color")
|
||||||
var background: ColorRGBa by parameters
|
var background: ColorRGBa by parameters
|
||||||
|
|||||||
@@ -2,10 +2,10 @@ package org.openrndr.extra.fx.color
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
|
|
||||||
class SubtractConstant : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("color/subtract-constant.frag"))) {
|
class SubtractConstant : Filter(filterShaderFromUrl(filterFragmentUrl("color/subtract-constant.frag"))) {
|
||||||
var constant: ColorRGBa by parameters
|
var constant: ColorRGBa by parameters
|
||||||
|
|
||||||
init {
|
init {
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Block repeat")
|
@Description("Block repeat")
|
||||||
class BlockRepeat : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/block-repeat.frag"))) {
|
class BlockRepeat : Filter(filterShaderFromUrl(filterFragmentUrl("distort/block-repeat.frag"))) {
|
||||||
@DoubleParameter("block width", 0.0, 1.0, order = 0)
|
@DoubleParameter("block width", 0.0, 1.0, order = 0)
|
||||||
var blockWidth: Double by parameters
|
var blockWidth: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.math.Vector3
|
import org.openrndr.math.Vector3
|
||||||
|
|
||||||
@Description("Perturb")
|
@Description("Perturb")
|
||||||
class DisplaceBlend : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/displace-blend.frag"))) {
|
class DisplaceBlend : Filter(filterShaderFromUrl(filterFragmentUrl("distort/displace-blend.frag"))) {
|
||||||
var seed: Vector3 by parameters
|
var seed: Vector3 by parameters
|
||||||
|
|
||||||
@DoubleParameter("offset", -1.0, 1.0)
|
@DoubleParameter("offset", -1.0, 1.0)
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Fisheye")
|
@Description("Fisheye")
|
||||||
class Fisheye : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/fisheye.frag"))) {
|
class Fisheye : Filter(filterShaderFromUrl(filterFragmentUrl("distort/fisheye.frag"))) {
|
||||||
@DoubleParameter("strength", -1.0, 1.0, order = 0)
|
@DoubleParameter("strength", -1.0, 1.0, order = 0)
|
||||||
var strength: Double by parameters
|
var strength: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
@@ -9,7 +9,7 @@ import org.openrndr.math.Vector3
|
|||||||
import org.openrndr.math.Vector4
|
import org.openrndr.math.Vector4
|
||||||
|
|
||||||
@Description("Perturb")
|
@Description("Perturb")
|
||||||
class Perturb : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/perturb.frag"))) {
|
class Perturb : Filter(filterShaderFromUrl(filterFragmentUrl("distort/perturb.frag"))) {
|
||||||
var seed: Vector3 by parameters
|
var seed: Vector3 by parameters
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
import org.openrndr.extra.parameters.BooleanParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
@@ -9,7 +9,7 @@ import org.openrndr.math.Vector3
|
|||||||
import org.openrndr.math.transforms.transform
|
import org.openrndr.math.transforms.transform
|
||||||
|
|
||||||
@Description("Perspective plane")
|
@Description("Perspective plane")
|
||||||
class PerspectivePlane : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/perspective-plane.frag"))) {
|
class PerspectivePlane : Filter(filterShaderFromUrl(filterFragmentUrl("distort/perspective-plane.frag"))) {
|
||||||
// @DoubleParameter("camera x", -1.0, 1.0, order = 0)
|
// @DoubleParameter("camera x", -1.0, 1.0, order = 0)
|
||||||
var cameraX: Double = 0.0
|
var cameraX: Double = 0.0
|
||||||
// @DoubleParameter("camera y", -1.0, 1.0, order = 1)
|
// @DoubleParameter("camera y", -1.0, 1.0, order = 1)
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("Stack repeat")
|
@Description("Stack repeat")
|
||||||
class StackRepeat : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/stack-repeat.frag"))) {
|
class StackRepeat : Filter(filterShaderFromUrl(filterFragmentUrl("distort/stack-repeat.frag"))) {
|
||||||
@DoubleParameter("zoom", -1.0, 1.0, order = 0)
|
@DoubleParameter("zoom", -1.0, 1.0, order = 0)
|
||||||
var zoom: Double by parameters
|
var zoom: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Stretch waves")
|
@Description("Stretch waves")
|
||||||
class StretchWaves : Filter(filterShaderFromCode(filterFragmentCode("distort/stretch-waves.frag"))) {
|
class StretchWaves : Filter(filterShaderFromUrl(filterFragmentUrl("distort/stretch-waves.frag"))) {
|
||||||
@DoubleParameter("distortion", -0.0,1.0, 1)
|
@DoubleParameter("distortion", -0.0,1.0, 1)
|
||||||
var distortion: Double by parameters
|
var distortion: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("Tiles")
|
@Description("Tiles")
|
||||||
class Tiles : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/tiles.frag"))) {
|
class Tiles : Filter(filterShaderFromUrl(filterFragmentUrl("distort/tiles.frag"))) {
|
||||||
|
|
||||||
@DoubleParameter("rotation", -180.0, 180.0, order = 2)
|
@DoubleParameter("rotation", -180.0, 180.0, order = 2)
|
||||||
var rotation: Double by parameters
|
var rotation: Double by parameters
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.distort
|
package org.openrndr.extra.fx.distort
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("Horizontal wave")
|
@Description("Horizontal wave")
|
||||||
class HorizontalWave : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/horizontal-wave.frag"))) {
|
class HorizontalWave : Filter(filterShaderFromUrl(filterFragmentUrl("distort/horizontal-wave.frag"))) {
|
||||||
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
|
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
|
||||||
var frequency: Double by parameters
|
var frequency: Double by parameters
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ class HorizontalWave : Filter(Shader.createFromCode(filterVertexCode, filterFrag
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Description("Vertical wave")
|
@Description("Vertical wave")
|
||||||
class VerticalWave : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("distort/vertical-wave.frag"))) {
|
class VerticalWave : Filter(filterShaderFromUrl(filterFragmentUrl("distort/vertical-wave.frag"))) {
|
||||||
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
|
@DoubleParameter("frequency", 0.0, 64.0, order = 1)
|
||||||
var frequency: Double by parameters
|
var frequency: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.dither
|
package org.openrndr.extra.fx.dither
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
|
|
||||||
@Description("ADither")
|
@Description("ADither")
|
||||||
class ADither: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/a-dither.frag"))) {
|
class ADither: Filter(filterShaderFromUrl(filterFragmentUrl("dither/a-dither.frag"))) {
|
||||||
@IntParameter("pattern index", 0, 3)
|
@IntParameter("pattern index", 0, 3)
|
||||||
var pattern: Int by parameters
|
var pattern: Int by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
package org.openrndr.extra.fx.dither
|
package org.openrndr.extra.fx.dither
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("CMYK Halftone")
|
@Description("CMYK Halftone")
|
||||||
class CMYKHalftone: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/cmyk-halftone.frag"))) {
|
class CMYKHalftone: Filter(filterShaderFromUrl(filterFragmentUrl("dither/cmyk-halftone.frag"))) {
|
||||||
|
|
||||||
@DoubleParameter("scale", 1.0, 30.0, precision = 4)
|
@DoubleParameter("scale", 1.0, 30.0, precision = 4)
|
||||||
var scale: Double by parameters
|
var scale: Double by parameters
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
package org.openrndr.extra.fx.dither
|
package org.openrndr.extra.fx.dither
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
|
|
||||||
@Description("Crosshatch")
|
@Description("Crosshatch")
|
||||||
class Crosshatch: Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("dither/crosshatch.frag"))) {
|
class Crosshatch: Filter(filterShaderFromUrl(filterFragmentUrl("dither/crosshatch.frag"))) {
|
||||||
@DoubleParameter("threshold 1", 0.0, 1.0)
|
@DoubleParameter("threshold 1", 0.0, 1.0)
|
||||||
var t1: Double by parameters
|
var t1: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -2,17 +2,14 @@ package org.openrndr.extra.vfx
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
|
||||||
import org.openrndr.draw.filterShaderFromUrl
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
|
||||||
import org.openrndr.resourceUrl
|
|
||||||
|
|
||||||
@Description("Contour")
|
@Description("Contour")
|
||||||
class Contour : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("edges/contour.frag"))) {
|
class Contour : Filter(filterShaderFromUrl(filterFragmentUrl("edges/contour.frag"))) {
|
||||||
@DoubleParameter("levels", 1.0, 16.0)
|
@DoubleParameter("levels", 1.0, 16.0)
|
||||||
var levels: Double by parameters
|
var levels: Double by parameters
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
package org.openrndr.extra.fx.edges
|
package org.openrndr.extra.fx.edges
|
||||||
|
|
||||||
import org.openrndr.draw.*
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
|
||||||
import org.openrndr.extra.fx.ColorBufferDescription
|
import org.openrndr.extra.fx.ColorBufferDescription
|
||||||
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
import org.openrndr.math.Vector2
|
import org.openrndr.math.Vector2
|
||||||
|
|
||||||
|
|
||||||
internal class EdgesWork1 : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("edges/edges-work-1.frag"))) {
|
internal class EdgesWork1 : Filter(filterShaderFromUrl(filterFragmentUrl("edges/edges-work-1.frag"))) {
|
||||||
var delta: Vector2 by parameters
|
var delta: Vector2 by parameters
|
||||||
|
|
||||||
init {
|
init {
|
||||||
@@ -17,7 +17,7 @@ internal class EdgesWork1 : Filter(Shader.createFromCode(filterVertexCode, filte
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Description("Edges Work")
|
@Description("Edges Work")
|
||||||
open class EdgesWork : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("edges/edges-work-2.frag"))) {
|
open class EdgesWork : Filter(filterShaderFromUrl(filterFragmentUrl("edges/edges-work-2.frag"))) {
|
||||||
/**
|
/**
|
||||||
* radius, default value is 1.0
|
* radius, default value is 1.0
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -2,14 +2,14 @@ package org.openrndr.extra.fx.edges
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Luma Sobel")
|
@Description("Luma Sobel")
|
||||||
class LumaSobel : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("edges/luma-sobel.frag"))) {
|
class LumaSobel : Filter(filterShaderFromUrl(filterFragmentUrl("edges/luma-sobel.frag"))) {
|
||||||
|
|
||||||
@ColorParameter("background color")
|
@ColorParameter("background color")
|
||||||
var backgroundColor: ColorRGBa by parameters
|
var backgroundColor: ColorRGBa by parameters
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.Shader
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.BooleanParameter
|
import org.openrndr.extra.parameters.BooleanParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
@@ -9,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
|
|||||||
* Film grain filter
|
* Film grain filter
|
||||||
*/
|
*/
|
||||||
@Description("film grain")
|
@Description("film grain")
|
||||||
class FilmGrain : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("grain/film-grain.frag"))) {
|
class FilmGrain : Filter(filterShaderFromUrl(filterFragmentUrl("grain/film-grain.frag"))) {
|
||||||
|
|
||||||
@BooleanParameter("use color")
|
@BooleanParameter("use color")
|
||||||
var useColor: Boolean by parameters
|
var useColor: Boolean by parameters
|
||||||
|
|||||||
@@ -2,13 +2,13 @@ package org.openrndr.extra.fx.patterns
|
|||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@Description("Checkers pattern")
|
@Description("Checkers pattern")
|
||||||
class Checkers : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("patterns/checkers.frag"))) {
|
class Checkers : Filter(filterShaderFromUrl(filterFragmentUrl("patterns/checkers.frag"))) {
|
||||||
var background: ColorRGBa by parameters
|
var background: ColorRGBa by parameters
|
||||||
var foreground: ColorRGBa by parameters
|
var foreground: ColorRGBa by parameters
|
||||||
@DoubleParameter("size", 0.0, 1.0)
|
@DoubleParameter("size", 0.0, 1.0)
|
||||||
|
|||||||
@@ -2,23 +2,20 @@ package org.openrndr.extra.fx.shadow
|
|||||||
|
|
||||||
|
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
import org.openrndr.draw.ColorBuffer
|
import org.openrndr.draw.*
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.draw.Shader
|
|
||||||
import org.openrndr.draw.colorBuffer
|
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
|
||||||
import org.openrndr.extra.parameters.ColorParameter
|
import org.openrndr.extra.parameters.ColorParameter
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
import org.openrndr.extra.parameters.IntParameter
|
import org.openrndr.extra.parameters.IntParameter
|
||||||
import org.openrndr.math.Vector2
|
import org.openrndr.math.Vector2
|
||||||
|
|
||||||
private class Blend : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("shadow/dropshadow-blend.frag"))) {
|
private class Blend : Filter(filterShaderFromUrl(filterFragmentUrl("shadow/dropshadow-blend.frag"))) {
|
||||||
var shift: Vector2 by parameters
|
var shift: Vector2 by parameters
|
||||||
}
|
}
|
||||||
|
|
||||||
@Description("Drop shadow")
|
@Description("Drop shadow")
|
||||||
class DropShadow : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("shadow/dropshadow-blur.frag"))) {
|
class DropShadow : Filter(filterShaderFromUrl(filterFragmentUrl("shadow/dropshadow-blur.frag"))) {
|
||||||
|
|
||||||
@IntParameter("blur window", 1, 25)
|
@IntParameter("blur window", 1, 25)
|
||||||
var window: Int by parameters
|
var window: Int by parameters
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package org.openrndr.extra.fx.tonemap
|
package org.openrndr.extra.fx.tonemap
|
||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
import org.openrndr.extra.parameters.Description
|
import org.openrndr.extra.parameters.Description
|
||||||
import org.openrndr.extra.parameters.DoubleParameter
|
import org.openrndr.extra.parameters.DoubleParameter
|
||||||
|
|
||||||
@@ -10,7 +10,7 @@ import org.openrndr.extra.parameters.DoubleParameter
|
|||||||
* Uncharted 2 tonemap filter
|
* Uncharted 2 tonemap filter
|
||||||
*/
|
*/
|
||||||
@Description("Uncharted 2 tonemap")
|
@Description("Uncharted 2 tonemap")
|
||||||
class Uncharted2Tonemap : Filter(Shader.createFromCode(filterVertexCode, filterFragmentCode("tonemap/uncharted2-tonemap.frag"))) {
|
class Uncharted2Tonemap : Filter(filterShaderFromUrl(filterFragmentUrl("tonemap/uncharted2-tonemap.frag"))) {
|
||||||
|
|
||||||
@DoubleParameter("exposure bias", 0.0, 128.0)
|
@DoubleParameter("exposure bias", 0.0, 128.0)
|
||||||
var exposureBias:Double by parameters
|
var exposureBias:Double by parameters
|
||||||
|
|||||||
@@ -2,9 +2,10 @@ package org.openrndr.extra.fx.transform
|
|||||||
|
|
||||||
import org.openrndr.draw.Filter
|
import org.openrndr.draw.Filter
|
||||||
import org.openrndr.draw.Shader
|
import org.openrndr.draw.Shader
|
||||||
import org.openrndr.extra.fx.filterFragmentCode
|
import org.openrndr.draw.filterShaderFromUrl
|
||||||
|
import org.openrndr.extra.fx.filterFragmentUrl
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Vertically flips in the input image
|
* Vertically flips in the input image
|
||||||
*/
|
*/
|
||||||
class FlipVertically : Filter(Shader.createFromCode(Filter.filterVertexCode, filterFragmentCode("transform/flip-vertically.frag")))
|
class FlipVertically : Filter(filterShaderFromUrl(filterFragmentUrl("transform/flip-vertically.frag")))
|
||||||
@@ -8,8 +8,10 @@ import org.openrndr.KEY_LEFT_SHIFT
|
|||||||
import org.openrndr.KeyModifier
|
import org.openrndr.KeyModifier
|
||||||
import org.openrndr.Program
|
import org.openrndr.Program
|
||||||
import org.openrndr.color.ColorRGBa
|
import org.openrndr.color.ColorRGBa
|
||||||
|
import org.openrndr.dialogs.getDefaultPathForContext
|
||||||
import org.openrndr.dialogs.openFileDialog
|
import org.openrndr.dialogs.openFileDialog
|
||||||
import org.openrndr.dialogs.saveFileDialog
|
import org.openrndr.dialogs.saveFileDialog
|
||||||
|
import org.openrndr.dialogs.setDefaultPathForContext
|
||||||
import org.openrndr.draw.Drawer
|
import org.openrndr.draw.Drawer
|
||||||
import org.openrndr.extra.parameters.*
|
import org.openrndr.extra.parameters.*
|
||||||
import org.openrndr.internal.Driver
|
import org.openrndr.internal.Driver
|
||||||
@@ -222,7 +224,7 @@ class GUI : Extension {
|
|||||||
button {
|
button {
|
||||||
label = "Load"
|
label = "Load"
|
||||||
clicked {
|
clicked {
|
||||||
openFileDialog(supportedExtensions = listOf("json")) {
|
openFileDialog(supportedExtensions = listOf("json"), contextID = "gui.parameters") {
|
||||||
loadParameters(it)
|
loadParameters(it)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -230,7 +232,24 @@ class GUI : Extension {
|
|||||||
button {
|
button {
|
||||||
label = "Save"
|
label = "Save"
|
||||||
clicked {
|
clicked {
|
||||||
saveFileDialog(supportedExtensions = listOf("json")) {
|
val defaultPath = getDefaultPathForContext(contextID ="gui.parameters")
|
||||||
|
|
||||||
|
if (defaultPath == null) {
|
||||||
|
val local = File(".")
|
||||||
|
val data = File(local, "data")
|
||||||
|
if (data.exists() && data.isDirectory) {
|
||||||
|
val parameters = File(data, "parameters")
|
||||||
|
if (!parameters.exists()) {
|
||||||
|
if (parameters.mkdirs()) {
|
||||||
|
setDefaultPathForContext(contextID = "gui.parameters", file = parameters)
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
setDefaultPathForContext(contextID = "gui.parameters", file = parameters)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
saveFileDialog(suggestedFilename = "parameters.json", contextID = "gui.parameters", supportedExtensions = listOf("json")) {
|
||||||
saveParameters(it)
|
saveParameters(it)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user