亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mofang.java

?? java編寫的3D魔方源代碼
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
                colors[i]=Block.mianColor[0];
            }
        }

        for(i=0;i<14;i++)
        {
            if(i==0)
            {
                vert[27+i]=new Point3f(zuoBiaoZhouSmallDingDian,0.0f,0.0f);
                colors[27+i]=Block.mianColor[0];
            }
            else
            {
                z1=(float)(0.005f*Math.cos(i*2*Math.PI/12));
                x1=zuoBiaoZhouSmallWeiDian ;
                y1=(float)(0.005f*Math.sin(i*2*Math.PI/12));
                vert[27+i]=new Point3f(x1,y1,z1);
                colors[27+i]=Block.mianColor[1];
            }
        }


        int count[]=new int[2];
        count[0]=27 ;
        count[1]=14 ;

        TriangleFanArray tri=new TriangleFanArray(
        vert.length,
        TriangleFanArray.COORDINATES|TriangleStripArray.COLOR_3,
        count
        );
        tri.setCoordinates(0,vert);
        tri.setColors(0,colors);
        Appearance app=new Appearance();

        PolygonAttributes polyAttrib=new PolygonAttributes();
        polyAttrib.setCullFace(PolygonAttributes.CULL_NONE);
        //polyAttrib.setPolygonMode(PolygonAttributes.POLYGON_LINE);
        app.setPolygonAttributes(polyAttrib);

        Shape3D shape=new Shape3D(tri,app);

        //System.out.print("zuoBiaoZhuSmallX 創(chuàng)建 完成");

        trans.addChild(shape);


        //到這里,小坐標(biāo)軸對象創(chuàng)建完成


    }
    public static  void  zuoBiaoZhuSmallYShape3D(TransformGroup trans)
    {


        //創(chuàng)建小坐標(biāo)軸對象

        int i ;
        float x1,x2,y1,y2,z1,z2 ;

        Point3f[]vert=new Point3f[41];
        Color3f[]colors=new Color3f[41];
        for(i=0;i<27;i++)
        {
            if(i==0)
            {
                vert[i]=new Point3f(0.0f,zuoBiaoZhouSmallDingDian,0.0f);
                colors[i]=Block.mianColor[2];
            }
            else
            {
                x1=(float)(zuoBiaoZhouSmallDingXi*Math.cos(i*2*Math.PI/25));
                y1=zuoBiaoZhouSmallDingChang ;
                z1=(float)(zuoBiaoZhouSmallDingXi*Math.sin(i*2*Math.PI/25));
                vert[i]=new Point3f(x1,y1,z1);
                colors[i]=Block.mianColor[2];
            }
        }

        for(i=0;i<14;i++)
        {
            if(i==0)
            {
                vert[27+i]=new Point3f(0.0f,zuoBiaoZhouSmallDingDian,0.0f);
                colors[27+i]=Block.mianColor[2];
            }
            else
            {
                x1=(float)(0.005f*Math.cos(i*2*Math.PI/12));
                y1=zuoBiaoZhouSmallWeiDian ;
                z1=(float)(0.005f*Math.sin(i*2*Math.PI/12));
                vert[27+i]=new Point3f(x1,y1,z1);
                colors[27+i]=Block.mianColor[3];
            }
        }
        int count[]=new int[2];
        count[0]=27 ;
        count[1]=14 ;

        TriangleFanArray tri=new TriangleFanArray(
        vert.length,
        TriangleFanArray.COORDINATES|TriangleStripArray.COLOR_3,
        count
        );
        tri.setCoordinates(0,vert);
        tri.setColors(0,colors);
        Appearance app=new Appearance();

        PolygonAttributes polyAttrib=new PolygonAttributes();
        polyAttrib.setCullFace(PolygonAttributes.CULL_NONE);
        //polyAttrib.setPolygonMode(PolygonAttributes.POLYGON_LINE);
        app.setPolygonAttributes(polyAttrib);

        Shape3D shape=new Shape3D(tri,app);
        //System.out.print("zuoBiaoZhuSmallY 創(chuàng)建 完成");

        trans.addChild(shape);


        //到這里,小坐標(biāo)軸對象創(chuàng)建完成


    }

    public static  void  zuoBiaoZhuSmallZShape3D(TransformGroup trans)
    {


        //創(chuàng)建小坐標(biāo)軸對象

        int i ;
        float x1,x2,y1,y2,z1,z2 ;

        Point3f[]vert=new Point3f[41];
        Color3f[]colors=new Color3f[41];
        for(i=0;i<27;i++)
        {
            if(i==0)
            {
                vert[i]=new Point3f(0.0f,0.0f,zuoBiaoZhouSmallDingDian);
                colors[i]=Block.mianColor[4];
            }
            else
            {
                y1=(float)(zuoBiaoZhouSmallDingXi*Math.cos(i*2*Math.PI/25));
                z1=zuoBiaoZhouSmallDingChang ;
                x1=(float)(zuoBiaoZhouSmallDingXi*Math.sin(i*2*Math.PI/25));
                vert[i]=new Point3f(x1,y1,z1);
                colors[i]=Block.mianColor[4];
            }
        }

        for(i=0;i<14;i++)
        {
            if(i==0)
            {
                vert[27+i]=new Point3f(0.0f,0.0f,zuoBiaoZhouSmallDingDian);
                colors[27+i]=Block.mianColor[4];
            }
            else
            {
                y1=(float)(0.005f*Math.cos(i*2*Math.PI/12));
                z1=zuoBiaoZhouSmallWeiDian ;
                x1=(float)(0.005f*Math.sin(i*2*Math.PI/12));
                vert[27+i]=new Point3f(x1,y1,z1);
                colors[27+i]=Block.mianColor[5];
            }
        }
        int count[]=new int[2];
        count[0]=27 ;
        count[1]=14 ;

        TriangleFanArray tri=new TriangleFanArray(
        vert.length,
        TriangleFanArray.COORDINATES|TriangleStripArray.COLOR_3,
        count
        );
        tri.setCoordinates(0,vert);
        tri.setColors(0,colors);


        Appearance app=new Appearance();

        PolygonAttributes polyAttrib=new PolygonAttributes();
        polyAttrib.setCullFace(PolygonAttributes.CULL_NONE);
        //polyAttrib.setPolygonMode(PolygonAttributes.POLYGON_LINE);
        app.setPolygonAttributes(polyAttrib);

        Shape3D shape=new Shape3D(tri,app);

 

        //System.out.print("zuoBiaoZhuSmallZ 創(chuàng)建 完成");

        trans.addChild(shape);


        //到這里,小坐標(biāo)軸對象創(chuàng)建完成


    }
       public static Shape3D shapeMaker(Component observer,String filename,Point3f[] p)
       {

       //用材質(zhì),四頂點數(shù)組創(chuàng)建一個四邊面,需要applet對象observer


            //創(chuàng)建貼圖和外觀
            TextureLoader loader=new  TextureLoader(filename,observer);
            ImageComponent2D myImage=loader.getImage();
            Texture myTex=loader.getTexture();
            myTex.setImage(0,myImage);
            Appearance appear=new Appearance();
            appear.setTexture(myTex);

            //四邊形對象
            //QuadArray tri=new QuadArray(dingdian.length,QuadArray.COORDINATES|QuadArray.COLOR_3|QuadArray.TEXTURE_COORDINATE_2);
QuadArray tri=new QuadArray(4,QuadArray.COORDINATES|QuadArray.TEXTURE_COORDINATE_2);//GeometryArray
            tri.setCoordinates(0,p);
            //tri.setColors(0,color);

            //給四邊形對象配材質(zhì)
            TexCoord2f texCoords=new TexCoord2f();//材質(zhì)坐標(biāo)
            texCoords.set(0.0f,1.0f);//取左下角
            tri.setTextureCoordinate(0,0,texCoords);//為左上角
            texCoords.set(0.0f,0.0f);//
            tri.setTextureCoordinate(0,1,texCoords);//
            texCoords.set(1.0f,0.0f);//
            tri.setTextureCoordinate(0,2,texCoords);//
            texCoords.set(1.0f,1.0f);//
            tri.setTextureCoordinate(0,3,texCoords);//

            Shape3D shape=new Shape3D(tri,appear);
        return shape ;

        //到這里,6個面對象創(chuàng)建完成
    }
    public static void addText3DDonghua(TransformGroup parentTrg,String textString,Point3f myPoint3f,float sl,Color3f ambientColor,int donghua)
    {
     //s1定scale,myPoint3f定位置,daxiao是大小
     //字的左下角默認(rèn)左下角在中點,當(dāng)tl=0.1時,要向左移10才到左端

     //自定義trg
        Transform3D trgtra=new Transform3D();
        TransformGroup trg=new TransformGroup(trgtra);
        trg.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
        trg.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
        //trg.setCapability(TransformGroup.ENABLE_PICK_REPORTING);

     double tessellation=-0.0 ;
     String fontName="vadana" ;
        // Create the root of the branch graph
        // Create a Transformgroup to scale all objects so they
        // appear in the scene.
        TransformGroup objScale=new TransformGroup();
        Transform3D t3d=new Transform3D();
        // Assuming uniform size chars, set scale to fit string in view

        t3d.setScale(sl);

        objScale.setTransform(t3d);
        trg.addChild(objScale);

        // Create the transform group node and initialize it to the
        // identity.  Enable the TRANSFORM_WRITE capability so that
        // our behavior code can modify it at runtime.  Add it to the
        // root of the subgraph.
        TransformGroup objTrans=new TransformGroup();
        objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
        objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);

        objScale.addChild(objTrans);


        Font3D f3d ;
        if(tessellation>0.0)
        {
            f3d=new Font3D(new Font(fontName,Font.PLAIN,2),
            tessellation,
            new FontExtrusion());
        }
        else
        {
            f3d=new Font3D(new Font(fontName,Font.PLAIN,2),
            new FontExtrusion());
        }
        Text3D txt=new Text3D(f3d,textString,
        myPoint3f);
        Shape3D sh=new Shape3D();
        Appearance app=new Appearance();
        Material mm=new Material();
        mm.setLightingEnable(true);
        app.setMaterial(mm);
        sh.setGeometry(txt);
        sh.setAppearance(app);
        objTrans.addChild(sh);

        BoundingSphere bounds=
        new BoundingSphere(new Point3d(0.0,0.0,0.0),100.0);

        // Set up the ambient light

        AmbientLight ambientLightNode=new AmbientLight(ambientColor);
        ambientLightNode.setInfluencingBounds(bounds);
        trg.addChild(ambientLightNode);

        // Set up the directional lights
        Color3f light1Color=new Color3f(1.0f,1.0f,0.9f);
        Vector3f light1Direction=new Vector3f(1.0f,1.0f,1.0f);
        Color3f light2Color=new Color3f(1.0f,1.0f,0.9f);
        Vector3f light2Direction=new Vector3f(-1.0f,-1.0f,-1.0f);

        DirectionalLight light1
        =new DirectionalLight(light1Color,light1Direction);
        light1.setInfluencingBounds(bounds);
        trg.addChild(light1);

        DirectionalLight light2
        =new DirectionalLight(light2Color,light2Direction);
        light2.setInfluencingBounds(bounds);
        trg.addChild(light2);

if(donghua==1)
{
        //給trg(自定義),加上旋轉(zhuǎn)插件
        Alpha alpha1=new Alpha(-1,Alpha.INCREASING_ENABLE|Alpha.DECREASING_ENABLE,0,0,5000,300,100000,5000,300,100000);
        RotationInterpolator myRoTate=new RotationInterpolator(alpha1,trg,trgtra,0.0f,(float)Math.PI*30);
myRoTate.setSchedulingBounds(bounds);
trg.addChild(myRoTate);
trgtra.rotZ(Math.PI/2);
trg.setTransform(trgtra);
System.out.println("\n文本 動畫 方案:"+donghua);
}
parentTrg.addChild(trg);
    }

}
//由于java數(shù)組的局限,整個程序使用0,1,2空間,為了方便計算,計算時要進(jìn)行坐標(biāo)變換

public class MoFang
{
    //該類含魔方的數(shù)據(jù)表示,blockArray為計算單步必需的,Position為便于人的視覺(用于操作和
    //顯示輸出)而添加的輔助結(jié)構(gòu),實際上,我們可以總是從blockArray算出來,但計算量大得驚人
    public static Block[][][]blockArray=new Block[3][3][3];
    //設(shè)魔方27塊
    public static Position[][][]positionArray=new Position[3][3][3];
    //魔方27個絕對位置

    //用于處理對魔方的操作,共27種操作
    //doType:'X','Y','Z'
    //Floor:-1,0,1
    //totateArg:90 180 -90
    public static void doIt(char doType,int Floor,int totateArg)
    {
        System.out.println("\n處理操作:"+doType);
        System.out.println("層數(shù):"+(Floor-1));
        System.out.println("角度:"+totateArg+"\n");

                   if(!Block.closeDonghua)  //動畫打開才等待
{

  while(Block.yunXingThread!=0)
  {System.out.print('.');

  }


}
        switch(doType)
        {
            case 'Z' :
            for(int i=0;i<=2;i++)
            for(int j=0;j<=2;j++)
            //for(int k=0;k<=2;k++)
            {
             if(Block.closeDonghua)//動畫關(guān)閉才變換中間塊
{
                  if(i==1&&j==1)
                {
                    continue ;
                }
}

                int changBlockX=positionArray[i][j][Floor].x ;
                int changBlockY=positionArray[i][j][Floor].y ;
                int changBlockZ=positionArray[i][j][Floor].z ;
                Block changBlock=blockArray[changBlockX][changBlockY][changBlockZ];
                changBlock.xyzChange('Z',totateArg);

            }

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品高潮呻吟| 91精品国产91综合久久蜜臀| 国产农村妇女毛片精品久久麻豆| 精品一区二区三区久久| 久久久亚洲精品一区二区三区 | 91精品国产综合久久久久久久| 一区二区三区美女视频| 欧美日韩一区在线| 蜜臀av性久久久久av蜜臀妖精| 久久久午夜精品理论片中文字幕| 国产传媒欧美日韩成人| 最好看的中文字幕久久| 欧美日韩色综合| 精品一区二区三区香蕉蜜桃| 中文字幕欧美日韩一区| 欧美在线一区二区三区| 久久成人久久爱| 国产精品久久久久久久蜜臀 | 欧美日韩国产成人在线91| 蜜桃av一区二区在线观看| 久久免费看少妇高潮| 91日韩一区二区三区| 日产精品久久久久久久性色| 国产午夜一区二区三区| 色狠狠桃花综合| 毛片av中文字幕一区二区| 国产精品狼人久久影院观看方式| 欧美视频中文一区二区三区在线观看| 麻豆精品一二三| 亚洲欧洲性图库| 欧美tk—视频vk| 色菇凉天天综合网| 国产一区二区三区在线观看免费| 亚洲免费色视频| 亚洲成人av福利| 26uuu成人网一区二区三区| 91福利资源站| 国产99久久久国产精品潘金| 亚洲成人精品一区| 国产精品国产自产拍在线| 日韩免费视频线观看| 色美美综合视频| 国产成人精品亚洲日本在线桃色| 天天影视网天天综合色在线播放| 欧美激情资源网| 精品久久久久久久人人人人传媒| 欧洲一区在线电影| 99热精品国产| 国产成人亚洲精品狼色在线| 人人精品人人爱| 亚洲已满18点击进入久久| 中文字幕一区二区三区精华液| 欧美成人三级电影在线| 欧美精品一卡二卡| 欧美在线视频不卡| 91香蕉视频黄| 成人性色生活片免费看爆迷你毛片| 日本人妖一区二区| 日韩有码一区二区三区| 依依成人精品视频| 亚洲天堂福利av| 亚洲国产精品v| 久久日韩粉嫩一区二区三区| 日韩欧美精品三级| 欧美精品v日韩精品v韩国精品v| 色菇凉天天综合网| 91久久精品一区二区三区| 99视频国产精品| 不卡的av在线| 91美女片黄在线| 一本一本久久a久久精品综合麻豆| 国产99久久精品| 国产成人精品一区二区三区四区| 国产精品综合av一区二区国产馆| 久久69国产一区二区蜜臀| 美女网站视频久久| 免费观看一级特黄欧美大片| 日本午夜精品一区二区三区电影 | 国产精品国产自产拍高清av王其| 国产日韩一级二级三级| 国产精品区一区二区三区| 中文字幕中文在线不卡住| 国产精品久久网站| 中文字幕亚洲电影| 亚洲久草在线视频| 亚洲bt欧美bt精品777| 欧美aaaaaa午夜精品| 久久精品国产精品亚洲精品| 麻豆成人久久精品二区三区红| 九色|91porny| jiyouzz国产精品久久| 一本到不卡免费一区二区| 在线观看av一区二区| 91超碰这里只有精品国产| 亚洲精品一区二区三区蜜桃下载| 国产日韩欧美精品在线| 亚洲婷婷综合久久一本伊一区| 亚洲另类在线视频| 日本美女一区二区三区视频| 伦理电影国产精品| 欧美电视剧在线观看完整版| 久久精品一区四区| 最近日韩中文字幕| 日本成人在线网站| 国产91精品精华液一区二区三区| 色综合久久综合网97色综合| 欧美蜜桃一区二区三区| 337p粉嫩大胆噜噜噜噜噜91av | 欧美精品一区二区三区久久久| 国产午夜精品一区二区三区四区| 亚洲欧美福利一区二区| 日韩精品91亚洲二区在线观看 | 日韩欧美在线观看一区二区三区| 久久久99免费| 一区二区三区在线视频免费观看| 青青青爽久久午夜综合久久午夜| 国产激情视频一区二区三区欧美| 欧美性欧美巨大黑白大战| 精品国产网站在线观看| 亚洲日本在线看| 狠狠色狠狠色综合系列| 日本丶国产丶欧美色综合| 精品国产一区二区三区忘忧草| 亚洲色大成网站www久久九九| 看电视剧不卡顿的网站| 一本久久精品一区二区| 欧美精品一区二区三| 亚洲大尺度视频在线观看| 国产丶欧美丶日本不卡视频| 欧美视频自拍偷拍| 国产精品乱码妇女bbbb| 麻豆精品国产91久久久久久 | 欧美性猛交xxxxxx富婆| 久久色中文字幕| 五月天欧美精品| 91亚洲精品乱码久久久久久蜜桃 | 亚洲国产精品一区二区久久 | 精品欧美乱码久久久久久1区2区| 亚洲欧美日韩久久| 福利一区二区在线| 精品免费国产一区二区三区四区| 午夜欧美2019年伦理| 91在线国内视频| 国产日韩欧美精品综合| 久久国产尿小便嘘嘘尿| 欧美区在线观看| 亚洲永久免费视频| 91亚洲精品乱码久久久久久蜜桃| 国产日韩在线不卡| 国产尤物一区二区| 精品福利一区二区三区| 日韩国产欧美视频| 欧美疯狂做受xxxx富婆| 亚洲一二三四在线| 欧美三区免费完整视频在线观看| 综合欧美亚洲日本| 91猫先生在线| 玉足女爽爽91| 日韩精品中文字幕在线不卡尤物 | 六月丁香婷婷色狠狠久久| 欧美剧情片在线观看| 一区二区三区欧美日| 99久久婷婷国产综合精品电影| 久久久久九九视频| 激情久久久久久久久久久久久久久久| 欧美伦理电影网| 性做久久久久久久免费看| 在线观看日韩国产| 亚洲va欧美va国产va天堂影院| 欧美做爰猛烈大尺度电影无法无天| 中文字幕一区二区三区视频| av一区二区不卡| 亚洲欧美日韩国产另类专区| 91色九色蝌蚪| 亚洲午夜电影在线| 在线不卡免费欧美| 免费成人av在线播放| 精品国内二区三区| 国产美女在线观看一区| 国产精品欧美久久久久一区二区| 国产凹凸在线观看一区二区| 国产精品国产三级国产普通话三级| caoporm超碰国产精品| 亚洲欧美福利一区二区| 欧美日韩国产bt| 麻豆极品一区二区三区| 国产日韩成人精品| 91香蕉视频污在线| 亚洲国产精品视频| 日韩精品一区二区三区老鸭窝| 国产福利精品导航| 亚洲裸体在线观看| 日韩一区二区三区电影| 国产一区二区三区久久悠悠色av | 精品国产污网站| 粉嫩av亚洲一区二区图片| 一区二区三区在线视频免费观看| 欧美美女喷水视频| 国产98色在线|日韩| 一区二区三区成人在线视频|