我想用JavaFX 8(3D)绘制3D图形.我已经知道3D绘图球的一些基础知识,首先着色球体并添加阴影,然后是球体的一些光和初始化.我的问题是我想通过使用圆柱体来加入球体,但是如果在两个球体之间存在例如2个圆柱体,则它必须是弧形或弯曲的圆柱体(我不知道这是否可能).我已经尝试过,但没有任何东西出现,即使出现了一些东西,它只是一个圆柱体(不像一条线条那么小).
另一个问题,我想知道旋转如何在这种情况下有所帮助.
最后一个问题,是否可以制作滚动条或仅使用Zoom事件?谢谢.

照片取自:这里
这是我的代码:
import java.util.ArrayList;
import java.util.Random;
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.PerspectiveCamera;
import javafx.scene.PointLight;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.paint.PhongMaterial;
import javafx.scene.shape.CullFace;
import javafx.scene.shape.DrawMode;
import javafx.scene.shape.Sphere;
import javafx.stage.Stage;
public class Graphe3D extends Application {
Group root;
PhongMaterial material;
ArrayList<Sphere> sphere;
@Override
public void start(Stage primaryStage) {
sphere=new ArrayList<>();
root=new Group();
material= new PhongMaterial();
for(int i=0;i<3;i++){
sphere.add(new Sphere(50));
//Sphere Color
material.setDiffuseColor(Color.RED);
//Shadow Color
material.setSpecularColor(Color.rgb(30, 30, 30));
//Init Sphere
sphere.get(i).setMaterial(material);
sphere.get(i).setTranslateX(new Random().nextInt(600));//set location X,Y and Z
sphere.get(i).setTranslateY(new …Run Code Online (Sandbox Code Playgroud)