青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 319, comments - 22, trackbacks - 0, articles - 11
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

Quick3D 學習文檔 (QML) 轉載

Posted on 2011-08-04 21:14 RTY 閱讀(3735) 評論(0)  編輯 收藏 引用 所屬分類: 轉載隨筆QML

.介紹

quick3d是把qt3d部分以插件的形式導出,在QML中通過包含的形式來進行使用的。

quick3d部分,使用的包含有

import Qt3D 1.0
import Qt3D.Shapes 1.0

Import Qt3D 是包含主要的一些Qt3D模塊,而Qt3D.Shapes 包含的是一些立方體,球體,圓柱體等的信息,方便使用各種簡單模型。

.具體的說明(這里沒有按照原來的意思翻譯,只根據個人理解)

QML BillboardTransform Element 公告牌,實現一個變化使對象一直朝向攝像機。

QML Camera Element 攝像機,定義一個視口的位置和投影3D場景

QML Effect Element 定義一些簡單的效果,包含材質 紋理 燈光等

QML FloatingItem Element 定義一個二維放置在3D可視化區域內的深度

QML Item3D Element 將存儲一個3D對象,并且包含所有簡單3D操作的屬性和方法

QML Light Element 一些燈光參數的描述

QML LightModel Element 定義場景中燈光的模型

QML LookAtTransform Element 提供一種變化使對象面向攝像機,具體意思需要自己理解

QML Material Element 描述OpenGL中的材質屬性

QML Mesh Element 對載入一些模型文件的支持,還有一些操作等

QML Qt3d Element qt3d全局對象,為3d應用程序提供一些有用的功能

QML Rotation3D Element 提供3d空間中的旋轉變化

QML Scale3D Element 提供3d空間中的縮放變化

QML ShaderProgram Element 提供著色器語言的支持,這個需要GPU的支持。

QML StereoView Element 定義一個布局可以使用左右視角圖像,這個的作用是立體視覺效果,他分別從左右眼的方向對3D場景中的物體進行來渲染,需要硬件支持.

QML Translation3D Element 提供3d空間中的位置變化

QML Viewport Element 定義一個合理的3D視口


QML Capsule Element 描述一個囊

QML Cube Element 描述一個立方體

QML Cylinder Element 描述一個圓柱體

QML Line Element 描述線 可以是多條線

QML Point Element 描述點 可以是多個點

QML Quad Element 描述四邊形

QML Sphere Element 描述球體

QML Teapot Element 描述茶壺


簡單的quick3d

QML Viewport Element

QML Mesh Element

QML Item3D Element


import Qt 4.7
import Qt3D 1.0
Viewport {
    width: 640; height: 480
    camera: Camera {}
    light: Light {}
    Item3D {
        mesh: Mesh { source: "teapot.bez" }
        effect: Effect {}
    }
}

QML BillboardTransform Element

沒有成功,所以暫時不寫


QML Camera Element

QML Effect Element

QML Mesh Element

QML Item3D Element


設置攝像機的位置:0412 使用一張圖片作為 紋理,使用Mesh 載入obj模型


import Qt 4.7
import Qt3D 1.0
Viewport {
    id: viewport;
    width: 640; height: 480
    // 設置攝像機及指向的位置
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    // 添加一棵樹
    Item3D{
       id: tree
       mesh: Mesh { source: "tree.obj" }
       effect: Effect { blending: true; texture: "tree.png"}
       position: Qt.vector3d(0, 0, 0)
    }
}

QML FloatingItem Element

3D場景上使用2D元素

import Qt 4.7
import Qt3D 1.0
Viewport {
    id: viewport;
    width: 640; height: 480
    // 設置攝像機及指向的位置
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    // 添加一個2D的東西
    FloatingItem {
         anchors.fill: parent
         depth: -10
        Rectangle {
            x:100; y: 100; width: 100; height: 30;
            color: "#8f00ff00";
            Text {anchors.fill: parent; text:"OK"; color: "blue"}
        }
     }
    // 設置地面
    Item3D {
        id: ground
        mesh: Mesh { source:"ground.obj"} // 載入一個obj模型
        effect: Effect{
            color: "#604000";
            useLighting: false;
        }
    }
    // 添加一棵樹
    Item3D{
       id: tree
       mesh: Mesh { source: "tree.obj" }
       effect: Effect { blending: true; texture: "tree.png"}
       position: Qt.vector3d(0, 0, 0)
    }
}


QML Light Element

可以比對下打開燈光和不打開燈光效果的差別

import Qt 4.7
import Qt3D 1.0
Viewport {
    width: 640; height: 480
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    light:  Light {
        position: Qt.vector3d(0, 4, 12);
        direction: Qt.vector3d(0, 0, 0);
    }
    Item3D {
        mesh: Mesh { source: "teapot.bez" }
        effect: Effect {}
    }
}

QML Qt3d Element

里面包含了一些有用的類型

Qt3d::matrix4x4 ( real m11, real m12, real m13, real m14, real m21, real m22, real m23, real m24, real m31, real m32, real m33, real m34, real m41, real m42, real m43, real m44 )

Qt3d::quaternion ( real scalar, real x, real y, real z )

Qt3d::vector2d ( real x, real y )

Qt3d::vector4d ( real x, real y, real z, real w )


QML Rotation3D Element

QML Scale3D Element

QML Translation3D Element

直接對一棵樹進行縮放 移動 旋轉操作

import Qt 4.7
import Qt3D 1.0
Viewport {
    width: 640; height: 480
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    // 添加地面
    Item3D {
         id: ground
         mesh: Mesh { source: "ground.obj" }
         effect: Effect {
             color: "#604000"
             useLighting: false
         }
     }
    Item3D {
        id: mainItem
        // 1棵樹旋轉
        Item3D{
           id: tree1
           mesh: Mesh { source: "tree.obj" }
           effect: Effect {
                  blending: true
                  texture: "tree.png"
            }
           position: Qt.vector3d(0, 0, 0)
           transform:[
               Rotation3D {id: tree1Rot; axis: Qt.vector3d(0, 1, 0);},
               Translation3D {id: tree1Tran; translate: Qt.vector3d(3, 0, 0)},
               Scale3D {id: tree1Scale;scale: 0.5 }
           ]
        }
    }
    ParallelAnimation{
        running: true;
        NumberAnimation { loops: Animation.Infinite; target: tree1Rot; 
                            property: "angle"; from: 0; to : 360.0; duration: 3000;}
        NumberAnimation { loops: Animation.Infinite; target: tree1Tran; 
                            property: "progress"; from: 0; to : 1; duration: 3000;}
        NumberAnimation { loops: Animation.Infinite; target: tree1Scale; 
                            property: "scale"; from: 0; to : 1; duration: 3000;}
    }
}

QML LookAtTransform Element

未知


QML LightModel Element

QML Material Element

這里是對茶壺表面的材質進行了光照的設置

import Qt 4.7
import Qt3D 1.0
Viewport {
    width: 640; height: 480
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    // 燈光
    light: Light {
        ambientColor: "black"; // 環境光
        constantAttenuation: 1;
        diffuseColor: "white"; // 慢發射
        specularColor: "white"; //鏡面光
    }
    // 設置場景的環境光
    lightModel: LightModel {
        ambientSceneColor: Qt.rgba(0.2, 0.2, 0.2, 1.0);
    }
    // 物體
    Item3D{
           id: teapot
           mesh: Mesh { source: "teapot.bez" }
           effect: Effect {
                  blending: true
                  material: Material {
                      id: teapotMate
                      ambientColor: "#cf00f010";
                      specularColor: "#cf030010";
                      diffuseColor: "#cf200310";
                 }
          }
    }
    ParallelAnimation{
        running: true;
        ColorAnimation { loops: Animation.Infinite; target: teapotMate;
            property: "ambientColor"; from: "#cf00f010"; to : "#a33ca326"; duration: 3000;}
        ColorAnimation { loops: Animation.Infinite; target: teapotMate;
            property: "specularColor"; from: "#cf030010"; to : "#3091f300"; duration: 3000;}
        ColorAnimation { loops: Animation.Infinite; target: teapotMate;
            property: "diffuseColor"; from: "#cf200310"; to : "#59649350"; duration: 3000;}
    }
}

QML ShaderProgram Element

對于這塊我不是很了解具體的例子可以查看

declarative/teapot-shader.qml

QML StereoView Element

import Qt 4.7
import Qt3D 1.0
StereoView{
     width: 640; height: 480
     //layout: StereoView.LeftRight
     FloatingItem {
         anchors.fill: parent
         depth: -10
         Image {
             anchors.fill: parent
             source: "tree.png"
         }
     }
     Viewport {
         anchors.fill: parent
         navigation: false
         camera: Camera {
             eye: Qt.vector3d(0, 0, 10)
             eyeSeparation: 0.08
         }
     // 添加地面
     Item3D {
          id: ground
          position: Qt.vector3d(-1.0, -1.0, -5.0)
          mesh: Mesh { source: "ground.obj" }
          effect: Effect {
              color: "#604000"
              useLighting: false
          }
      }
     }
}


QML Capsule Element 描述一個囊

QML Cube Element 描述一個立方體

QML Cylinder Element 描述一個圓柱體

QML Line Element 描述線 可以是多條線

QML Point Element 描述點 可以是多個點

QML Quad Element 描述四邊形

QML Sphere Element 描述球體

QML Teapot Element 描述茶壺

import Qt 4.7
import Qt3D 1.0
import Qt3D.Shapes 1.0
Viewport {
    width: 640; height: 480
    camera: Camera {
        eye: Qt.vector3d(0, 4, 12);
    }
    // 燈光
    light: Light {
        ambientColor: "black"; // 環境光
        constantAttenuation: 1;
        diffuseColor: "white"; // 慢發射
        specularColor: "white"; //鏡面光
    }
    // 設置場景的環境光
    lightModel: LightModel {
        ambientSceneColor: Qt.rgba(0.2, 0.2, 0.2, 1.0);
    }
    // 囊狀
    Capsule {
        radius: 0.5
        length: 3.0
        scale: 0.5
        position: Qt.vector3d(-2, 1, 0);
        effect: Effect {
            color: "#aaca00"
        }
    }
    // 立方體
    Cube {
        scale: 0.5
        position: Qt.vector3d(-1, 1, 0);
        effect: Effect {
            color: "#aaca00"
            texture: "qtlogo.png"
        }
    }
    // 圓柱體
    Cylinder {
         radius: 0.5
         length: 3.0
         scale: 0.5
         position: Qt.vector3d(0, 1, 0);
         effect: Effect {
             color: "#aaca00"
         }
     }
    // 
    Line {
        vertices: [
           0, 0, 0,
           0, 0, 1,
           0, 1, 1
        ]
        position: Qt.vector3d(-2.0, 0, 0);
        effect: Effect {
            color: "#aaca00"
        }
    }
    // 
    Point {
        vertices: [
           0, 0, 0,
           1, 1, 1,
           -1, -1, -1
                ]
        pointSize: 0.5;
        position: Qt.vector3d(1, -1, 0);
        effect: Effect {
            color: "white"
        }
    }
    // 四邊形
    Quad {
        scale: 0.5
        position: Qt.vector3d(0, 0, 0);
        effect: Effect {
            color: "#aaca00"
            texture: "qtlogo.png"
        }
    }
    // 球體
    Sphere {
        radius: 0.5
        position: Qt.vector3d(-2, -1, 0);
        effect: Effect {
            color: "#aaca00"
        }
    }
    // 茶壺
    Teapot {
        scale: 0.5
        position: Qt.vector3d(-1, -1, 0);
        effect: Effect {
            color: "#aaca00"
            texture: "qtlogo.png"
            decal: true
        }
    }
}

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一区二区高清在线| 欧美日韩国产精品一卡| 蜜桃av一区二区三区| 欧美在线国产| 久久精品99国产精品酒店日本| 亚洲性感美女99在线| 亚洲综合色在线| 欧美一区二区视频在线观看| 久久精品九九| 欧美二区视频| 99国产麻豆精品| 亚洲欧美激情一区| 欧美淫片网站| 欧美91大片| 国产精品久久精品日日| 国产真实乱子伦精品视频| 伊人天天综合| 在线亚洲免费| 久久久久久久激情视频| 欧美激情亚洲视频| 亚洲永久免费精品| 麻豆亚洲精品| 国产精品久久久久久久久搜平片| 好吊妞**欧美| 亚洲视屏一区| 欧美成人国产| 亚洲欧美日韩高清| 欧美国产日韩一区二区| 国产欧亚日韩视频| 日韩视频一区二区三区| 久久精品首页| 一区二区三区毛片| 免费成人毛片| 国产又爽又黄的激情精品视频 | 亚洲国产精品小视频| 亚洲影院在线观看| 欧美成人一区二区三区片免费| 这里是久久伊人| 免费在线亚洲| 精品999在线播放| 羞羞色国产精品| 亚洲伦理网站| 欧美成人精品在线| 在线不卡欧美| 久久久精品一品道一区| 亚洲一区二区三区乱码aⅴ蜜桃女 亚洲一区二区三区乱码aⅴ | 欧美日本久久| 国产视频亚洲| 亚洲欧美成人一区二区三区| 亚洲二区在线观看| 日韩午夜在线观看视频| 狂野欧美激情性xxxx欧美| 国产午夜精品全部视频播放 | 免费欧美在线| 韩国久久久久| 亚洲欧美精品suv| 亚洲九九精品| 老司机午夜精品视频| 国语精品中文字幕| 久久精品国产一区二区三区免费看 | 91久久夜色精品国产九色| 久久久av网站| 国产精品99久久久久久久久| 欧美激情亚洲| 99国产精品久久久久老师| 欧美风情在线观看| 欧美成人免费全部观看天天性色| 亚洲国产精品va| 欧美大片一区二区三区| 免费在线观看日韩欧美| 亚洲精品乱码久久久久久久久| 亚洲高清不卡在线| 欧美二区在线| 亚洲久久成人| 一区二区欧美亚洲| 国产麻豆精品视频| 噜噜噜久久亚洲精品国产品小说| 久久伊人一区二区| 亚洲精品少妇| 中文精品视频一区二区在线观看| 国产精品高潮呻吟久久av无限 | 午夜亚洲激情| 国内精品模特av私拍在线观看| 久热精品视频在线观看一区| 欧美1区2区视频| 亚洲已满18点击进入久久 | 欧美激情欧美激情在线五月| 一本色道久久88亚洲综合88| 一本久久精品一区二区| 国产精品一级久久久| 久久人人爽国产| 欧美激情一二三区| 性久久久久久| 免费亚洲一区二区| 亚洲综合首页| 久久久亚洲高清| 夜夜嗨av一区二区三区四区| 亚洲欧美视频在线观看| 亚洲国产激情| 性欧美办公室18xxxxhd| 亚洲国产精品欧美一二99| 欧美日韩国产va另类| 国产精品视频最多的网站| 久久漫画官网| 欧美精品www在线观看| 羞羞漫画18久久大片| 牛牛影视久久网| 性色av一区二区三区在线观看| 久久久久久欧美| 亚洲欧美日韩精品久久亚洲区| 久久精品国产一区二区电影| 夜夜嗨网站十八久久| 羞羞漫画18久久大片| 亚洲乱码视频| 久久久久久网址| 午夜精品美女久久久久av福利| 久久综合伊人77777麻豆| 亚洲自拍电影| 欧美高清在线视频| 久久伊人亚洲| 国产欧美日韩精品一区| 亚洲人成网在线播放| 很黄很黄激情成人| 亚洲视屏在线播放| 一区二区精品国产| 久久久夜夜夜| 欧美专区日韩专区| 欧美日韩亚洲一区二区三区在线 | 日韩视频中文| 玉米视频成人免费看| 亚洲一区二区三区国产| 一本色道久久加勒比88综合| 久热成人在线视频| 久久亚洲二区| 国产一区二区三区直播精品电影 | 久久久久国产精品一区三寸| 先锋影音网一区二区| 欧美日韩国产精品专区| 欧美国产精品劲爆| 一区免费观看| 久久激情网站| 欧美黄色免费网站| 欧美电影在线播放| 亚洲人午夜精品免费| 蜜臀av性久久久久蜜臀aⅴ四虎| 麻豆freexxxx性91精品| 韩日欧美一区二区| 久久视频在线看| 欧美大片第1页| 99re66热这里只有精品4| 欧美伦理91i| 一区二区三区日韩欧美| 午夜精品久久久久久99热软件| 国产精品免费在线| 欧美亚洲视频| 蜜桃av噜噜一区二区三区| 亚洲精品国产视频| 欧美日韩黄色大片| 一区二区黄色| 久久www成人_看片免费不卡| 韩日成人在线| 欧美激情久久久久| 国产精品theporn88| 久久综合九色综合欧美狠狠| 国产一区二区三区在线观看免费| 午夜精品久久久久久久久| 久久精品国产77777蜜臀| 国产一区在线播放| 欧美**人妖| aⅴ色国产欧美| 亚欧成人精品| 在线成人国产| 欧美久久视频| 亚洲欧美日韩精品在线| 老鸭窝毛片一区二区三区| 亚洲精品欧美专区| 欧美日韩一区二区三区免费看| 亚洲欧美国产精品桃花| 免费久久99精品国产自| 日韩视频一区二区在线观看| 欧美日韩精品免费在线观看视频| 午夜精品一区二区三区在线| 欧美激情一级片一区二区| 亚洲摸下面视频| 在线国产精品播放| 欧美日韩一区二区视频在线观看| 亚洲欧美另类中文字幕| 欧美激情女人20p| 亚洲视频在线二区| 国内精品视频在线播放| 欧美日韩国产精品成人| 久久综合九色99| 亚洲字幕在线观看| 亚洲精品久久久久久下一站| 久久久久成人精品| 午夜视频一区二区| 亚洲精品视频免费观看| 影音先锋日韩有码| 国产日韩欧美三区| 欧美性猛交视频|