mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-02-16 10:30:42 +00:00
Put image based color samplers in own packages
This commit is contained in:
@@ -7,8 +7,8 @@ import java.util.function.Supplier;
|
||||
import com.dfsek.terra.addons.image.config.ImageLoader;
|
||||
import com.dfsek.terra.addons.image.config.sampler.RotateColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.config.sampler.ConstantColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.config.sampler.SingleColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.config.sampler.TileColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.config.sampler.image.SingleImageColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.config.sampler.image.TileImageColorSamplerTemplate;
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.manifest.api.AddonInitializer;
|
||||
@@ -44,8 +44,8 @@ public class ImageLibraryAddon implements AddonInitializer {
|
||||
.then(event -> {
|
||||
CheckedRegistry<Supplier<ObjectTemplate<ColorSampler>>> colorSamplerRegistry = event.getPack().getOrCreateRegistry(
|
||||
COLOR_PICKER_REGISTRY_KEY);
|
||||
colorSamplerRegistry.register(addon.key("SINGLE_IMAGE"), SingleColorSamplerTemplate::new);
|
||||
colorSamplerRegistry.register(addon.key("TILED_IMAGE"), TileColorSamplerTemplate::new);
|
||||
colorSamplerRegistry.register(addon.key("SINGLE_IMAGE"), SingleImageColorSamplerTemplate::new);
|
||||
colorSamplerRegistry.register(addon.key("TILED_IMAGE"), TileImageColorSamplerTemplate::new);
|
||||
colorSamplerRegistry.register(addon.key("COLOR"), ConstantColorSamplerTemplate::new);
|
||||
colorSamplerRegistry.register(addon.key("ROTATE"), RotateColorSamplerTemplate::new);
|
||||
});
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
package com.dfsek.terra.addons.image.config.sampler;
|
||||
|
||||
import com.dfsek.tectonic.api.config.template.annotations.Value;
|
||||
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.SimpleColorSampler;
|
||||
|
||||
|
||||
public class SingleColorSamplerTemplate extends ColorSamplerTemplate {
|
||||
@Value("outside-image")
|
||||
private ColorSampler fallback;
|
||||
|
||||
@Override
|
||||
public ColorSampler get() {
|
||||
return new SimpleColorSampler(image, fallback, alignment);
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
package com.dfsek.terra.addons.image.config.sampler;
|
||||
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.TileColorSampler;
|
||||
|
||||
|
||||
public class TileColorSamplerTemplate extends ColorSamplerTemplate {
|
||||
|
||||
@Override
|
||||
public ColorSampler get() {
|
||||
return new TileColorSampler(image, alignment);
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.dfsek.terra.addons.image.config.sampler;
|
||||
package com.dfsek.terra.addons.image.config.sampler.image;
|
||||
|
||||
import com.dfsek.tectonic.api.config.template.annotations.Default;
|
||||
import com.dfsek.tectonic.api.config.template.annotations.Value;
|
||||
@@ -6,10 +6,10 @@ import com.dfsek.tectonic.api.config.template.object.ObjectTemplate;
|
||||
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.transform.Alignment;
|
||||
import com.dfsek.terra.addons.image.sampler.image.transform.Alignment;
|
||||
|
||||
|
||||
public abstract class ColorSamplerTemplate implements ObjectTemplate<ColorSampler> {
|
||||
public abstract class ImageColorSamplerTemplate implements ObjectTemplate<ColorSampler> {
|
||||
|
||||
@Value("path")
|
||||
protected Image image;
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.dfsek.terra.addons.image.config.sampler.image;
|
||||
|
||||
import com.dfsek.tectonic.api.config.template.annotations.Value;
|
||||
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.image.SingleImageColorSampler;
|
||||
|
||||
|
||||
public class SingleImageColorSamplerTemplate extends ImageColorSamplerTemplate {
|
||||
@Value("outside-image")
|
||||
private ColorSampler fallback;
|
||||
|
||||
@Override
|
||||
public ColorSampler get() {
|
||||
return new SingleImageColorSampler(image, fallback, alignment);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.dfsek.terra.addons.image.config.sampler.image;
|
||||
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.image.TileImageColorSampler;
|
||||
|
||||
|
||||
public class TileImageColorSamplerTemplate extends ImageColorSamplerTemplate {
|
||||
|
||||
@Override
|
||||
public ColorSampler get() {
|
||||
return new TileImageColorSampler(image, alignment);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,11 @@
|
||||
package com.dfsek.terra.addons.image.sampler;
|
||||
package com.dfsek.terra.addons.image.sampler.image;
|
||||
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
import com.dfsek.terra.addons.image.sampler.transform.ImageTransformation;
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.image.transform.ImageTransformation;
|
||||
|
||||
|
||||
public class SimpleColorSampler implements ColorSampler {
|
||||
public class SingleImageColorSampler implements ColorSampler {
|
||||
|
||||
private final Image image;
|
||||
|
||||
@@ -12,7 +13,7 @@ public class SimpleColorSampler implements ColorSampler {
|
||||
|
||||
private final ImageTransformation transformation;
|
||||
|
||||
public SimpleColorSampler(Image image, ColorSampler fallback, ImageTransformation transformation) {
|
||||
public SingleImageColorSampler(Image image, ColorSampler fallback, ImageTransformation transformation) {
|
||||
this.image = image;
|
||||
this.fallback = fallback;
|
||||
this.transformation = transformation;
|
||||
@@ -1,18 +1,19 @@
|
||||
package com.dfsek.terra.addons.image.sampler;
|
||||
package com.dfsek.terra.addons.image.sampler.image;
|
||||
|
||||
import net.jafama.FastMath;
|
||||
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
import com.dfsek.terra.addons.image.sampler.transform.ImageTransformation;
|
||||
import com.dfsek.terra.addons.image.sampler.ColorSampler;
|
||||
import com.dfsek.terra.addons.image.sampler.image.transform.ImageTransformation;
|
||||
|
||||
|
||||
public class TileColorSampler implements ColorSampler {
|
||||
public class TileImageColorSampler implements ColorSampler {
|
||||
|
||||
private final Image image;
|
||||
|
||||
private final ImageTransformation transformation;
|
||||
|
||||
public TileColorSampler(Image image, ImageTransformation transformation) {
|
||||
public TileImageColorSampler(Image image, ImageTransformation transformation) {
|
||||
this.image = image;
|
||||
this.transformation = transformation;
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.dfsek.terra.addons.image.sampler.transform;
|
||||
package com.dfsek.terra.addons.image.sampler.image.transform;
|
||||
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.dfsek.terra.addons.image.sampler.transform;
|
||||
package com.dfsek.terra.addons.image.sampler.image.transform;
|
||||
|
||||
import com.dfsek.terra.addons.image.image.Image;
|
||||
|
||||
Reference in New Issue
Block a user