// @formatter:off /* * Unlicensed, generated by javafx.ftl */ package javafx.scene.shape; /** * {@link Shape3D}建構器。 * * @author JarReflectionDataLoader-1.0.0 * @version jfxrt.jar * @param <Z> 要建構的物件型態(需繼承{@link Shape3D}) * @param <B> 建構器本身的型態(需繼承{@link Shape3DMaker}) */ @javax.annotation.Generated("Generated by javafx.ftl") @SuppressWarnings("all") public class Shape3DMaker<Z extends Shape3D, B extends Shape3DMaker<Z, B>> extends javafx.scene.NodeMaker<Z, B> implements Shape3DMakerExt<Z, B> { private boolean hasCullFace; private javafx.scene.shape.CullFace valCullFace; private boolean hasDrawMode; private javafx.scene.shape.DrawMode valDrawMode; private boolean hasMaterial; private javafx.scene.paint.Material valMaterial; private boolean bound1CullFace; private boolean bound2CullFace; private javafx.beans.value.ObservableValue<? extends javafx.scene.shape.CullFace> obsrv1CullFace; private javafx.beans.property.Property<javafx.scene.shape.CullFace> obsrv2CullFace; private boolean bound1DrawMode; private boolean bound2DrawMode; private javafx.beans.value.ObservableValue<? extends javafx.scene.shape.DrawMode> obsrv1DrawMode; private javafx.beans.property.Property<javafx.scene.shape.DrawMode> obsrv2DrawMode; private boolean bound1Material; private boolean bound2Material; private javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Material> obsrv1Material; private javafx.beans.property.Property<javafx.scene.paint.Material> obsrv2Material; @Override public void applyTo(Z instance) { super.applyTo(instance); if (this.hasCullFace) instance.setCullFace(this.valCullFace); if (this.hasDrawMode) instance.setDrawMode(this.valDrawMode); if (this.hasMaterial) instance.setMaterial(this.valMaterial); if (this.bound1CullFace) instance.cullFaceProperty().bind(this.obsrv1CullFace); if (this.bound2CullFace) instance.cullFaceProperty().bindBidirectional(this.obsrv2CullFace); if (this.bound1DrawMode) instance.drawModeProperty().bind(this.obsrv1DrawMode); if (this.bound2DrawMode) instance.drawModeProperty().bindBidirectional(this.obsrv2DrawMode); if (this.bound1Material) instance.materialProperty().bind(this.obsrv1Material); if (this.bound2Material) instance.materialProperty().bindBidirectional(this.obsrv2Material); } /** * 設定屬性{@link Shape3D#setCullFace(javafx.scene.shape.CullFace)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B cullFace(javafx.scene.shape.CullFace value) { this.hasCullFace = true; this.valCullFace = value; return (B) this; } /** * 設定屬性{@link Shape3D#setDrawMode(javafx.scene.shape.DrawMode)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B drawMode(javafx.scene.shape.DrawMode value) { this.hasDrawMode = true; this.valDrawMode = value; return (B) this; } /** * 設定屬性{@link Shape3D#setMaterial(javafx.scene.paint.Material)}。 * * @param value 新的屬性值 * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public B material(javafx.scene.paint.Material value) { this.hasMaterial = true; this.valMaterial = value; return (B) this; } /** * 設定屬性{@link Shape3D#cullFaceProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindCullFace(javafx.beans.value.ObservableValue<? extends javafx.scene.shape.CullFace> source) { java.util.Objects.requireNonNull(source); this.bound1CullFace = true; this.obsrv1CullFace = source; this.bound2CullFace = false; this.obsrv2CullFace = null; return (B) this; } /** * 設定屬性{@link Shape3D#cullFaceProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalCullFace(javafx.beans.property.Property<javafx.scene.shape.CullFace> source) { java.util.Objects.requireNonNull(source); this.bound1CullFace = false; this.obsrv1CullFace = null; this.bound2CullFace = true; this.obsrv2CullFace = source; return (B) this; } /** * 設定屬性{@link Shape3D#drawModeProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindDrawMode(javafx.beans.value.ObservableValue<? extends javafx.scene.shape.DrawMode> source) { java.util.Objects.requireNonNull(source); this.bound1DrawMode = true; this.obsrv1DrawMode = source; this.bound2DrawMode = false; this.obsrv2DrawMode = null; return (B) this; } /** * 設定屬性{@link Shape3D#drawModeProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalDrawMode(javafx.beans.property.Property<javafx.scene.shape.DrawMode> source) { java.util.Objects.requireNonNull(source); this.bound1DrawMode = false; this.obsrv1DrawMode = null; this.bound2DrawMode = true; this.obsrv2DrawMode = source; return (B) this; } /** * 設定屬性{@link Shape3D#materialProperty}的連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindMaterial(javafx.beans.value.ObservableValue<? extends javafx.scene.paint.Material> source) { java.util.Objects.requireNonNull(source); this.bound1Material = true; this.obsrv1Material = source; this.bound2Material = false; this.obsrv2Material = null; return (B) this; } /** * 設定屬性{@link Shape3D#materialProperty}的雙向連結。 * * @param value 新的屬性連結(單向) * @return 目前的建構器(this) */ @SuppressWarnings("unchecked") public final B bindBidirectionalMaterial(javafx.beans.property.Property<javafx.scene.paint.Material> source) { java.util.Objects.requireNonNull(source); this.bound1Material = false; this.obsrv1Material = null; this.bound2Material = true; this.obsrv2Material = source; return (B) this; } }