CubicCurve是JavaFX的一部分。CubiCurve类在(x,y)坐标空间中定义了三次Bézier参数曲线段。三次曲线穿过起点和终点,还穿过两个控制点。控制点被指定为贝塞尔控制点。
该类的构造函数是:
- CubicCurve():创建三次曲线的新实例
- CubicCurve(double startX, double startY, double controlX1, double controlY1, double controlX2, double controlY2, double endX, double endY):创建具有指定起点和终点以及两个控制点的三次曲线实例。
常用方法
方法 | 说明 |
---|---|
getControlX1() | 返回第一个控制点的x坐标 |
getControlY1() | 返回第一个控制点的y坐标 |
getControlX2() | 返回第二个控制点的x坐标 |
getControlY2() | 返回第二个控制点的y坐标 |
getEndX() | 返回终点的x坐标 |
getEndY() | 返回终点的y坐标 |
getStartX() | 返回起点的x坐标 |
getStartY() | 返回起点的y坐标 |
setControlX1(double value) | 设置第一个控制点的x坐标 |
setControlY1(double value) | 设置第一个控制点的y坐标 |
setControlX2(double value) | 设置第二个控制点的x坐标 |
setControlY2(double value) | 设置第二个控制点的y坐标 |
setEndX(double value) | 设置终点的x坐标 |
setEndY(double value) | 设置终点的y坐标 |
setStartX(double value) | 设置起点的x坐标 |
setStartY(double value) | 设置起点的y坐标 |
Java程序创建三次曲线
该程序创建一个以名称cubic_curve表示的CubicCurve(两个控制点s,起点和终点作为参数传递)。 CubicCurve将在场景内创建,而场景又将在场景内托管。函数setTitle()用于为舞台提供标题。然后创建一个组,并将cubic_curve附加到该组。最后,调用show()方法以显示最终结果。
// Java program to create a cubic curve
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.shape.DrawMode;
import javafx.scene.layout.*;
import javafx.event.ActionEvent;
import javafx.scene.shape.CubicCurve;
import javafx.scene.control.*;
import javafx.stage.Stage;
import javafx.scene.Group;
public class cubic_curve_0 extends Application {
// launch the application
public void start(Stage stage)
{
// set title for the stage
stage.setTitle("creating cubic_curve");
// create a cubic_curve
CubicCurve cubic_curve = new CubicCurve(10.0f, 10.0f, 200.0f, 140.0f, 120.0f, 240.0f, 160.0f, 70.0f);
// create a Group
Group group = new Group(cubic_curve);
// translate the cubic_curve to a position
cubic_curve.setTranslateX(100);
cubic_curve.setTranslateY(100);
// create a scene
Scene scene = new Scene(group, 500, 300);
// set the scene
stage.setScene(scene);
stage.show();
}
public static void main(String args[])
{
// launch the application
launch(args);
}
}
输出:
Java程序创建三次曲线并为三次曲线设置填充
该程序创建一个由名称cubic_curve表示的CubicCurve(使用setControlX1(),setControlY1(),setControlX2(),setControlY2(),setStartX(),setStartY(),setEndX()设置两个控制点,起点和终点) ,以及setEndY()函数)。 CubicCurve将在场景内创建,而场景又将在场景内托管。 setTitle()函数用于为舞台提供标题。然后创建一个组,并附加了三次曲线。该组被附加到场景中。最后,调用show()方法以显示最终结果.setFill()函数用于设置三次曲线的填充。
// Java program to create a cubic curve and set a fill for cubic curve
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.shape.DrawMode;
import javafx.scene.layout.*;
import javafx.event.ActionEvent;
import javafx.scene.shape.CubicCurve;
import javafx.scene.control.*;
import javafx.stage.Stage;
import javafx.scene.Group;
import javafx.scene.paint.Color;
public class cubic_curve_1 extends Application {
// launch the application
public void start(Stage stage)
{
// set title for the stage
stage.setTitle("creating cubic_curve");
// create a cubic_curve
CubicCurve cubic_curve = new CubicCurve();
// set start
cubic_curve.setStartX(10.0f);
cubic_curve.setStartY(10.0f);
// set control coordinates
cubic_curve.setControlX1(200.0f);
cubic_curve.setControlY1(140.0f);
cubic_curve.setControlX2(120.0f);
cubic_curve.setControlY2(240.0f);
// set end coordinates
cubic_curve.setEndX(160.0f);
cubic_curve.setEndY(70.0f);
// create a Group
Group group = new Group(cubic_curve);
// translate the cubic_curve to a position
cubic_curve.setTranslateX(100);
cubic_curve.setTranslateY(100);
// set fill for the cubic curve
cubic_curve.setFill(Color.BLUE);
// create a scene
Scene scene = new Scene(group, 500, 300);
// set the scene
stage.setScene(scene);
stage.show();
}
public static void main(String args[])
{
// launch the application
launch(args);
}
}
输出:
注意:以上程序可能无法在在线IDE中运行,请使用离线编译器
参考:
https://docs.oracle.com/javase/8/javafx/api/javafx/scene/shape/CubicCurve.html
相关用法
- JavaFX 类 Box用法及代码示例
- JavaFX 类 Arc用法及代码示例
- JavaFX 类 PointLight用法及代码示例
- JavaFX 类 Line用法及代码示例
- JavaFX 类 Polygon用法及代码示例
- JavaFX 类 CheckMenuItem用法及代码示例
- JavaFX 类 Circle用法及代码示例
- JavaFX 类 Polyline用法及代码示例
- JavaFX 类 Ellipse用法及代码示例
- JavaFX 类 Sphere用法及代码示例
- JavaFX 类 ContextMenu用法及代码示例
- JavaFX 类 QuadCurve用法及代码示例
- JavaFX 类 Cylinder用法及代码示例
- JavaFX 类 RadioButton用法及代码示例
- JavaFX 类 DatePicker用法及代码示例
注:本文由纯净天空筛选整理自andrew1234大神的英文原创作品 JavaFX | CubicCurve with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。