revisi 16/12/2024

This commit is contained in:
2024-12-16 15:02:46 +07:00
parent f6ee4817e6
commit eceb94d524
9 changed files with 224 additions and 200 deletions

View File

@@ -1,125 +1,124 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.CheckBox?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.Slider?>
<?import javafx.scene.image.Image?>
<?import javafx.scene.image.ImageView?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.layout.BorderPane?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.VBox?>
<?import javafx.geometry.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.image.*?>
<?import javafx.scene.layout.*?>
<AnchorPane xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1" fx:controller="id.co.gtc.erhacam.Cameradetail">
<AnchorPane prefHeight="280.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="id.co.gtc.erhacam.Cameradetail">
<children>
<BorderPane layoutX="200.0" layoutY="64.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<top>
<AnchorPane prefHeight="30.0">
<GridPane layoutX="5.0" layoutY="5.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="-Infinity" minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<AnchorPane minHeight="30.0" GridPane.rowIndex="1">
<children>
<Label fx:id="cameratitle" alignment="CENTER" layoutX="240.0" layoutY="14.0" text="Camera Title" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
</children>
</AnchorPane>
</top>
<bottom>
<AnchorPane prefHeight="30.0">
<children>
<Label fx:id="camerastatus" alignment="CENTER" layoutX="252.0" layoutY="6.0" text="Camera Status" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
</children>
</AnchorPane>
</bottom>
<center>
<AnchorPane fx:id="streamanchor" minHeight="240.0">
<children>
<HBox alignment="CENTER" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<GridPane AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" percentWidth="20.0" />
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<ImageView fx:id="camerastream" fitHeight="240.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@gtcbackground.png" />
</image>
</ImageView>
</children>
</HBox>
</children>
<BorderPane.margin>
<Insets />
</BorderPane.margin>
</AnchorPane>
</center>
<right>
<AnchorPane prefWidth="150.0">
<children>
<VBox AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<children>
<Label text="Brightness" />
<Slider fx:id="brightnessSlider" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label text="Contrast" />
<Slider fx:id="contrastSlider" layoutX="10.0" layoutY="28.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="42.0" text="Saturation" />
<Slider fx:id="saturationSlider" layoutX="10.0" layoutY="60.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="74.0" text="Hue" />
<Slider fx:id="hueSlider" layoutX="10.0" layoutY="92.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="106.0" text="Gain" />
<Slider fx:id="gainSlider" layoutX="10.0" layoutY="124.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="138.0" text="Exposure" />
<Slider fx:id="exposureSlider" layoutX="10.0" layoutY="156.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Button maxWidth="1.7976931348623157E308" mnemonicParsing="false" onAction="#resetClick" text="Reset">
<VBox.margin>
<Insets left="5.0" right="5.0" top="5.0" />
</VBox.margin>
</Button>
<HBox>
<AnchorPane>
<children>
<CheckBox fx:id="AutoFocus" minWidth="40.0" mnemonicParsing="false" text="AF">
<HBox.margin>
<Insets right="5.0" />
</HBox.margin>
</CheckBox>
<CheckBox fx:id="AutoExposure" minWidth="40.0" mnemonicParsing="false" text="AE">
<HBox.margin>
<Insets right="5.0" />
</HBox.margin>
</CheckBox>
<CheckBox fx:id="AutoWhiteBalance" minWidth="40.0" mnemonicParsing="false" text="AWB">
<HBox.margin>
<Insets right="5.0" />
</HBox.margin>
</CheckBox>
<Label fx:id="cameratitle" alignment="CENTER" style="-fx-border-color: black;" text="Camera Title" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
</children>
<VBox.margin>
<Insets top="5.0" />
</VBox.margin>
</HBox>
</AnchorPane>
<AnchorPane GridPane.columnIndex="1">
<children>
<Label fx:id="camerastatus" alignment="CENTER" style="-fx-border-color: black;" text="Camera Status" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
</children>
</AnchorPane>
</children>
</VBox>
</GridPane>
</children>
</AnchorPane>
</right>
</BorderPane>
<AnchorPane prefHeight="200.0" prefWidth="200.0">
<children>
<GridPane layoutX="-28.0" layoutY="-29.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" percentWidth="70.0" prefWidth="100.0" />
<ColumnConstraints fillWidth="false" maxWidth="-Infinity" minWidth="-Infinity" percentWidth="10.0" prefWidth="100.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<AnchorPane GridPane.columnIndex="1">
<children>
<VBox maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="240.0" prefWidth="140.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<children>
<Label text="Brightness" />
<Slider fx:id="brightnessSlider" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label text="Contrast" />
<Slider fx:id="contrastSlider" layoutX="10.0" layoutY="28.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="42.0" text="Saturation" />
<Slider fx:id="saturationSlider" layoutX="10.0" layoutY="60.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="74.0" text="Hue" />
<Slider fx:id="hueSlider" layoutX="10.0" layoutY="92.0" min="-100.0" prefHeight="14.0" prefWidth="63.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="106.0" text="Gain" />
<Slider fx:id="gainSlider" layoutX="10.0" layoutY="124.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Label layoutX="10.0" layoutY="138.0" text="Exposure" />
<Slider fx:id="exposureSlider" layoutX="10.0" layoutY="156.0" min="-100.0">
<VBox.margin>
<Insets />
</VBox.margin>
</Slider>
<Button maxWidth="1.7976931348623157E308" mnemonicParsing="false" onAction="#resetClick" text="Reset">
<VBox.margin>
<Insets left="5.0" right="5.0" top="5.0" />
</VBox.margin>
</Button>
</children>
</VBox>
</children>
</AnchorPane>
<AnchorPane fx:id="streamanchor">
<children>
<HBox alignment="CENTER" prefHeight="240.0" prefWidth="700.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
<ImageView fx:id="camerastream" fitHeight="240.0" pickOnBounds="true" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<image>
<Image url="@gtcbackground.png" />
</image>
</ImageView>
</children>
</AnchorPane>
</children>
</GridPane>
</children>
</AnchorPane>
</children>
</GridPane>
</children>
<padding>
<Insets bottom="5.0" left="5.0" right="5.0" top="5.0" />
</padding>
</AnchorPane>

View File

@@ -1,17 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.ScrollPane?>
<?import javafx.scene.control.TextArea?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.layout.ColumnConstraints?>
<?import javafx.scene.layout.GridPane?>
<?import javafx.scene.layout.RowConstraints?>
<?import javafx.scene.layout.VBox?>
<?import javafx.geometry.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minHeight="-Infinity" minWidth="-Infinity" prefHeight="768.0" prefWidth="1024.0" xmlns="http://javafx.com/javafx/22" xmlns:fx="http://javafx.com/fxml/1" fx:controller="id.co.gtc.erhacam.CaptureView">
<AnchorPane fx:id="CaptureViewAnchor" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" minHeight="-Infinity" minWidth="-Infinity" prefHeight="768.0" prefWidth="1024.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="id.co.gtc.erhacam.CaptureView">
<children>
<GridPane layoutX="99.0" layoutY="147.0" style="-fx-grid-lines-visible: true;" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<columnConstraints>
@@ -45,12 +38,12 @@
<children>
<AnchorPane prefHeight="200.0" prefWidth="200.0">
<children>
<Label layoutX="28.0" layoutY="8.0" prefHeight="30.0" prefWidth="154.0" text="Directory" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="5.0" />
<Label layoutX="28.0" layoutY="8.0" prefHeight="30.0" prefWidth="154.0" text="Save Directory" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="5.0" />
</children>
</AnchorPane>
<AnchorPane prefHeight="200.0" prefWidth="200.0" GridPane.rowIndex="1">
<children>
<Label layoutX="31.0" layoutY="6.0" prefHeight="30.0" prefWidth="154.0" text="Prefix" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="5.0" />
<Label layoutX="31.0" layoutY="6.0" prefHeight="30.0" prefWidth="154.0" text="Patient ID" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="5.0" />
</children>
</AnchorPane>
<AnchorPane prefHeight="200.0" prefWidth="200.0" GridPane.columnIndex="1">
@@ -90,7 +83,7 @@
</AnchorPane>
<AnchorPane prefHeight="200.0" prefWidth="200.0" GridPane.columnIndex="2">
<children>
<Button layoutX="59.0" layoutY="23.0" mnemonicParsing="false" onAction="#TakePhotos" prefHeight="70.0" prefWidth="170.0" text="Take Photos" wrapText="true" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="0.0" />
<Button fx:id="btnTakePhoto" layoutX="59.0" layoutY="23.0" mnemonicParsing="false" onAction="#TakePhotos" prefHeight="70.0" prefWidth="170.0" text="Take Photos" wrapText="true" AnchorPane.bottomAnchor="5.0" AnchorPane.leftAnchor="5.0" AnchorPane.rightAnchor="5.0" AnchorPane.topAnchor="0.0" />
</children>
</AnchorPane>
</children>
@@ -108,7 +101,10 @@
</ScrollPane>
</children>
</VBox>
</children></AnchorPane>
</children>
<padding>
<Insets top="5.0" />
</padding></AnchorPane>
</children>
</GridPane>
</children>