// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.paint; /** * {@link PhongMaterial}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link PhongMaterial}) * @param <B> 建構器本身的型態(需繼承{@link PhongMaterialMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class PhongMaterialMaker<Z extends PhongMaterial, B extends PhongMaterialMaker<Z, B>> extends javafx.scene.paint.MaterialMaker<Z, B> implements PhongMaterialMakerExt<Z, B> { private boolean hasBumpMap; private javafx.scene.image.Image valBumpMap; private boolean hasDiffuseColor; private javafx.scene.paint.Color valDiffuseColor; private boolean hasDiffuseMap; private javafx.scene.image.Image valDiffuseMap; private boolean hasSelfIlluminationMap; private javafx.scene.image.Image valSelfIlluminationMap; private boolean hasSpecularColor; private javafx.scene.paint.Color valSpecularColor; private boolean hasSpecularMap; private javafx.scene.image.Image valSpecularMap; private boolean hasSpecularPower; private double valSpecularPower; private boolean bound1BumpMap; private boolean bound2BumpMap; private javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> obsrv1BumpMap; private javafx.beans.property.Property<javafx.scene.image.Image> obsrv2BumpMap; private boolean bound1DiffuseColor; private boolean bound2DiffuseColor; private javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Color> obsrv1DiffuseColor; private javafx.beans.property.Property<javafx.scene.paint.Color> obsrv2DiffuseColor; private boolean bound1DiffuseMap; private boolean bound2DiffuseMap; private javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> obsrv1DiffuseMap; private javafx.beans.property.Property<javafx.scene.image.Image> obsrv2DiffuseMap; private boolean bound1SelfIlluminationMap; private boolean bound2SelfIlluminationMap; private javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> obsrv1SelfIlluminationMap; private javafx.beans.property.Property<javafx.scene.image.Image> obsrv2SelfIlluminationMap; private boolean bound1SpecularColor; private boolean bound2SpecularColor; private javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Color> obsrv1SpecularColor; private javafx.beans.property.Property<javafx.scene.paint.Color> obsrv2SpecularColor; private boolean bound1SpecularMap; private boolean bound2SpecularMap; private javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> obsrv1SpecularMap; private javafx.beans.property.Property<javafx.scene.image.Image> obsrv2SpecularMap; private boolean bound1SpecularPower; private boolean bound2SpecularPower; private javafx.beans.value.ObservableValue<? extends Number> obsrv1SpecularPower; private javafx.beans.property.Property<Number> obsrv2SpecularPower; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasBumpMap) instance.setBumpMap(this.valBumpMap); if (this.hasDiffuseColor) instance.setDiffuseColor(this.valDiffuseColor); if (this.hasDiffuseMap) instance.setDiffuseMap(this.valDiffuseMap); if (this.hasSelfIlluminationMap) instance.setSelfIlluminationMap(this.valSelfIlluminationMap); if (this.hasSpecularColor) instance.setSpecularColor(this.valSpecularColor); if (this.hasSpecularMap) instance.setSpecularMap(this.valSpecularMap); if (this.hasSpecularPower) instance.setSpecularPower(this.valSpecularPower); if (this.bound1BumpMap) instance.bumpMapProperty().bind(this.obsrv1BumpMap); if (this.bound2BumpMap) instance.bumpMapProperty().bindBidirectional(this.obsrv2BumpMap); if (this.bound1DiffuseColor) instance.diffuseColorProperty().bind(this.obsrv1DiffuseColor); if (this.bound2DiffuseColor) instance.diffuseColorProperty().bindBidirectional(this.obsrv2DiffuseColor); if (this.bound1DiffuseMap) instance.diffuseMapProperty().bind(this.obsrv1DiffuseMap); if (this.bound2DiffuseMap) instance.diffuseMapProperty().bindBidirectional(this.obsrv2DiffuseMap); if (this.bound1SelfIlluminationMap) instance.selfIlluminationMapProperty().bind(this.obsrv1SelfIlluminationMap); if (this.bound2SelfIlluminationMap) instance.selfIlluminationMapProperty().bindBidirectional(this.obsrv2SelfIlluminationMap); if (this.bound1SpecularColor) instance.specularColorProperty().bind(this.obsrv1SpecularColor); if (this.bound2SpecularColor) instance.specularColorProperty().bindBidirectional(this.obsrv2SpecularColor); if (this.bound1SpecularMap) instance.specularMapProperty().bind(this.obsrv1SpecularMap); if (this.bound2SpecularMap) instance.specularMapProperty().bindBidirectional(this.obsrv2SpecularMap); if (this.bound1SpecularPower) instance.specularPowerProperty().bind(this.obsrv1SpecularPower); if (this.bound2SpecularPower) instance.specularPowerProperty().bindBidirectional(this.obsrv2SpecularPower); } /** * 設定屬性{@link PhongMaterial#setBumpMap(javafx.scene.image.Image)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B bumpMap(javafx.scene.image.Image value) { this.hasBumpMap = true; this.valBumpMap = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setDiffuseColor(javafx.scene.paint.Color)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B diffuseColor(javafx.scene.paint.Color value) { this.hasDiffuseColor = true; this.valDiffuseColor = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setDiffuseMap(javafx.scene.image.Image)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B diffuseMap(javafx.scene.image.Image value) { this.hasDiffuseMap = true; this.valDiffuseMap = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setSelfIlluminationMap(javafx.scene.image.Image)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B selfIlluminationMap(javafx.scene.image.Image value) { this.hasSelfIlluminationMap = true; this.valSelfIlluminationMap = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setSpecularColor(javafx.scene.paint.Color)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B specularColor(javafx.scene.paint.Color value) { this.hasSpecularColor = true; this.valSpecularColor = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setSpecularMap(javafx.scene.image.Image)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B specularMap(javafx.scene.image.Image value) { this.hasSpecularMap = true; this.valSpecularMap = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#setSpecularPower(double)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B specularPower(double value) { this.hasSpecularPower = true; this.valSpecularPower = value; return (B) this; } /** * 設定屬性{@link PhongMaterial#bumpMapProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBumpMap(javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1BumpMap = true; this.obsrv1BumpMap = source; this.bound2BumpMap = false; this.obsrv2BumpMap = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#bumpMapProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalBumpMap(javafx.beans.property.Property<javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1BumpMap = false; this.obsrv1BumpMap = null; this.bound2BumpMap = true; this.obsrv2BumpMap = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#diffuseColorProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindDiffuseColor(javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Color> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseColor = true; this.obsrv1DiffuseColor = source; this.bound2DiffuseColor = false; this.obsrv2DiffuseColor = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#diffuseColorProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalDiffuseColor(javafx.beans.property.Property<javafx.scene.paint.Color> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseColor = false; this.obsrv1DiffuseColor = null; this.bound2DiffuseColor = true; this.obsrv2DiffuseColor = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#diffuseMapProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindDiffuseMap(javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseMap = true; this.obsrv1DiffuseMap = source; this.bound2DiffuseMap = false; this.obsrv2DiffuseMap = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#diffuseMapProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalDiffuseMap(javafx.beans.property.Property<javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1DiffuseMap = false; this.obsrv1DiffuseMap = null; this.bound2DiffuseMap = true; this.obsrv2DiffuseMap = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#selfIlluminationMapProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSelfIlluminationMap(javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1SelfIlluminationMap = true; this.obsrv1SelfIlluminationMap = source; this.bound2SelfIlluminationMap = false; this.obsrv2SelfIlluminationMap = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#selfIlluminationMapProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSelfIlluminationMap(javafx.beans.property.Property<javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1SelfIlluminationMap = false; this.obsrv1SelfIlluminationMap = null; this.bound2SelfIlluminationMap = true; this.obsrv2SelfIlluminationMap = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularColorProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSpecularColor(javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Color> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularColor = true; this.obsrv1SpecularColor = source; this.bound2SpecularColor = false; this.obsrv2SpecularColor = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularColorProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSpecularColor(javafx.beans.property.Property<javafx.scene.paint.Color> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularColor = false; this.obsrv1SpecularColor = null; this.bound2SpecularColor = true; this.obsrv2SpecularColor = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularMapProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSpecularMap(javafx.beans.value.ObservableValue<? extends javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularMap = true; this.obsrv1SpecularMap = source; this.bound2SpecularMap = false; this.obsrv2SpecularMap = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularMapProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSpecularMap(javafx.beans.property.Property<javafx.scene.image.Image> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularMap = false; this.obsrv1SpecularMap = null; this.bound2SpecularMap = true; this.obsrv2SpecularMap = source; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularPowerProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindSpecularPower(javafx.beans.value.ObservableValue<? extends Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularPower = true; this.obsrv1SpecularPower = source; this.bound2SpecularPower = false; this.obsrv2SpecularPower = null; return (B) this; } /** * 設定屬性{@link PhongMaterial#specularPowerProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalSpecularPower(javafx.beans.property.Property<Number> source) { java.util.Objects.requireNonNull(source); this.bound1SpecularPower = false; this.obsrv1SpecularPower = null; this.bound2SpecularPower = true; this.obsrv2SpecularPower = source; return (B) this; } /** * 建構{@link PhongMaterial}物件。 * * @return 新的{@link PhongMaterial}物件實體 */ @Override @SuppressWarnings("unchecked") public PhongMaterial build() { PhongMaterial instance = new PhongMaterial(); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link PhongMaterial}物件。 * * @return 新的{@link PhongMaterial}物件實體 */ @SuppressWarnings("unchecked") public PhongMaterial build(javafx.scene.paint.Color arg0) { PhongMaterial instance = new PhongMaterial(arg0); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } /** * 建構{@link PhongMaterial}物件。 * * @return 新的{@link PhongMaterial}物件實體 */ @SuppressWarnings("unchecked") public PhongMaterial build(javafx.scene.paint.Color arg0, javafx.scene.image.Image arg1, javafx.scene.image.Image arg2, javafx.scene.image.Image arg3, javafx.scene.image.Image arg4) { PhongMaterial instance = new PhongMaterial(arg0, arg1, arg2, arg3, arg4); this.applyTo((Z) instance); this.doAfterBuild((Z) instance); return instance; } }