java吧 关注:1,270,808贴子:12,779,682
  • 10回复贴,共1

用javafx绘制笑脸,出现图形重合无法显示,求大神

只看楼主收藏回复

效果如图,第二张图是把椭圆的代码注释掉了显示的



IP属地:北京来自Android客户端1楼2016-06-10 18:13回复
    求大神


    IP属地:北京来自Android客户端2楼2016-06-10 18:15
    回复
      2025-07-24 07:56:33
      广告
      不感兴趣
      开通SVIP免广告
      import javafx.application.Application;
      import javafx.collections.ObservableList;
      import javafx.scene.Scene;
      import javafx.stage.Stage;
      import javafx.scene.layout.Pane;
      import javafx.scene.shape.Circle;
      import javafx.scene.paint.Color;
      import javafx.scene.shape.Ellipse;
      import javafx.scene.shape.Arc;
      import javafx.scene.shape.ArcType;
      import javafx.scene.shape.Polygon;
      public class T14_11 extends Application{
      public static void main(String[] args) {
      launch(args);
      }
      public void start (Stage primaryStage)
      {
      Pane pane =new Pane();
      Circle cir1=new Circle();
      Scene scene=new Scene(pane,500,500);
      double x,y;
      x=pane.getHeight()/2;
      y=pane.getWidth()/2;
      cir1.setCenterX(x);//脸
      cir1.setCenterY(y);
      cir1.setRadius(200);
      cir1.setStroke(Color.BLACK);
      cir1.setFill(Color.WHITE);
      pane.getChildren().add(cir1);
      Circle cir2=new Circle();//右眼
      cir2.setCenterX(x/1.5);
      cir2.setCenterY(y/1.5);
      cir2.setRadius(15);
      cir2.setStroke(Color.WHITE);
      cir2.setFill(Color.BLACK);
      pane.getChildren().add(cir2);
      Circle cir3=new Circle();//左眼
      cir3.setCenterX(x/0.75);
      cir3.setCenterY(y/1.5);
      cir3.setRadius(15);
      cir3.setStroke(Color.WHITE);
      cir3.setFill(Color.BLACK);
      pane.getChildren().add(cir3);
      /* Ellipse ell1=new Ellipse();//右眼眶
      ell1.setCenterX(x/1.5);
      ell1.setCenterY(y/1.5);
      ell1.setRadiusX(35);
      ell1.setRadiusY(25);
      ell1.setStroke(Color.BLACK);
      ell1.setFill(Color.WHITE);
      pane.getChildren().add(ell1);
      Ellipse ell2=new Ellipse();//左眼眶
      ell2.setCenterX(x/0.75);
      ell2.setCenterY(y/1.5);
      ell2.setRadiusX(35);
      ell2.setRadiusY(25);
      ell2.setStroke(Color.BLACK);
      ell2.setFill(Color.WHITE);
      pane.getChildren().add(ell2);
      */
      Arc arc1=new Arc();//嘴巴
      arc1.setCenterX(x);
      arc1.setCenterY(y/0.75);
      arc1.setRadiusX(100);
      arc1.setRadiusY(50);
      arc1.setStartAngle(180);
      arc1.setLength(180);
      arc1.setFill(Color.WHITE);
      arc1.setType(ArcType.OPEN);
      arc1.setStroke(Color.BLACK);
      pane.getChildren().add(arc1);
      primaryStage.setTitle("Exercise14_11");
      primaryStage.setScene(scene);
      primaryStage.show();
      }
      }


      IP属地:北京4楼2016-06-10 18:38
      回复
        没人吗


        IP属地:北京来自Android客户端5楼2016-06-10 18:42
        回复
          不错啊,javafx我好像只看到英文书籍,楼主看英文文档的吗?


          IP属地:广东来自Android客户端6楼2016-06-11 10:14
          回复
            修行一场自己的


            IP属地:广东来自手机贴吧7楼2016-08-07 13:18
            回复
              推动你的事业,不要让你的事业来推动你。


              来自iPhone客户端8楼2016-08-07 13:35
              回复
                泣中离开。繁花似锦不常开,指间流云不常


                IP属地:广东来自手机贴吧9楼2016-08-07 13:53
                回复
                  2025-07-24 07:50:33
                  广告
                  不感兴趣
                  开通SVIP免广告
                  添加顺序写错了,后面的把前面的覆盖了


                  IP属地:河北10楼2017-07-03 21:30
                  收起回复
                    把ellipse的setfill参数改成null


                    IP属地:广东11楼2017-12-01 19:55
                    回复