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

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

Quick3D 學習文檔 (QML) 轉載

Posted on 2011-08-04 21:14 RTY 閱讀(3737) 評論(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>
            亚洲福利在线看| 亚洲国产婷婷综合在线精品| 午夜在线电影亚洲一区| 久久精品国产久精国产思思| 国产一区二区三区高清播放| 久久视频在线免费观看| 亚洲国产精品99久久久久久久久| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 欧美激情精品久久久久久黑人| 亚洲精品免费网站| 欧美日韩综合网| 欧美亚洲日本国产| 欧美国产激情| 亚洲在线播放| 在线看日韩av| 欧美日韩一区二区三| 久久精品男女| 亚洲人成人99网站| 久久久国产精品亚洲一区| 亚洲国产裸拍裸体视频在线观看乱了中文 | 亚洲另类视频| 国产精品日韩久久久久| 久久中文字幕一区| 在线一区观看| 欧美99久久| 亚洲一区二区三区四区五区午夜| 国产自产精品| 欧美日韩国产色视频| 久久国产精品久久国产精品| 亚洲精品久久久一区二区三区| 欧美一区二区成人| 亚洲精品日产精品乱码不卡| 国产亚洲精品美女| 欧美日韩三级视频| 久久亚洲综合色| 亚洲一区图片| 亚洲久久视频| 免费成人av| 欧美一区二区三区精品电影| 日韩一级精品视频在线观看| 黄色精品一二区| 国产精品久久77777| 免费看亚洲片| 欧美在线影院| 午夜精品国产| 一区二区欧美在线观看| 亚洲第一视频网站| 久久嫩草精品久久久精品| 亚洲一区二区成人| 亚洲乱码视频| 亚洲国产精品高清久久久| 国产午夜精品理论片a级大结局| 欧美日韩一级片在线观看| 欧美大成色www永久网站婷| 久久久99国产精品免费| 亚洲欧美日韩在线不卡| 夜夜躁日日躁狠狠久久88av| 亚洲国产精品嫩草影院| 欧美成人xxx| 欧美.com| 欧美大片国产精品| 麻豆91精品| 美国成人直播| 久久免费视频在线| 久久理论片午夜琪琪电影网| 久久精品一本久久99精品| 欧美尤物一区| 久久成人免费网| 欧美一区成人| 久久精品一区二区三区不卡| 久久www免费人成看片高清| 午夜视频一区| 欧美一区综合| 久久精品一区中文字幕| 久久亚洲图片| 美女露胸一区二区三区| 欧美黄色精品| 亚洲三级影院| 一本色道久久综合亚洲精品高清| 日韩一级裸体免费视频| 在线一区二区视频| 亚洲一区久久| 欧美一级电影久久| 久久久精品午夜少妇| 免费在线日韩av| 欧美激情一区二区三区蜜桃视频| 欧美日韩精品在线观看| 国产精品xxx在线观看www| 国产乱码精品一区二区三区av | 韩国免费一区| 亚洲国产成人高清精品| 日韩视频精品在线观看| 亚洲一级黄色片| 欧美尤物巨大精品爽| 久热国产精品| 亚洲国产日韩综合一区| 一区二区欧美国产| 香蕉视频成人在线观看| 免费在线欧美视频| 欧美日韩亚洲一区在线观看| 国产精品一二| 亚洲国产99| 亚洲五月六月| 久久久久久久综合色一本| 欧美国产视频日韩| 在线一区二区三区四区五区| 久久久精品国产免大香伊| 免费av成人在线| 国产精品美女久久久浪潮软件| 国产伊人精品| 亚洲作爱视频| 玖玖在线精品| 一级日韩一区在线观看| 久久久久免费观看| 国产精品成人aaaaa网站| 精品福利免费观看| 亚洲小说欧美另类社区| 你懂的一区二区| 亚洲视频精选在线| 欧美成人在线免费视频| 国产女主播在线一区二区| 日韩视频免费在线| 久久久99国产精品免费| 99天天综合性| 免费久久99精品国产自在现线| 国产精品亚洲综合一区在线观看 | 久久久精品久久久久| 亚洲日本中文| 久久久综合精品| 国产噜噜噜噜噜久久久久久久久| 日韩视频不卡| 免费黄网站欧美| 先锋亚洲精品| 欧美午夜宅男影院| 亚洲精品乱码久久久久久| 久久深夜福利| 亚洲图片激情小说| 欧美日韩视频在线一区二区| 亚洲国产精品123| 久久久91精品国产一区二区精品| 亚洲色无码播放| 欧美日韩国产一中文字不卡| 亚洲欧洲视频在线| 久久综合国产精品| 欧美亚洲视频在线观看| 国产精品久久久久三级| 一区电影在线观看| 亚洲第一精品久久忘忧草社区| 久久久久久精| 国内精品久久久久久影视8 | 久久五月激情| 性做久久久久久久久| 国产精品美女| 亚洲综合清纯丝袜自拍| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲欧美日本视频在线观看| 亚洲精品免费一区二区三区| 欧美精品一区二区三区在线播放| 亚洲电影免费在线| 母乳一区在线观看| 久久久欧美精品| 亚洲国产99| 亚洲国产精品第一区二区三区| 久久综合久久综合这里只有精品 | 久久福利一区| 国产一区二区三区免费观看| 久久国产精品一区二区三区四区| 亚洲欧美精品中文字幕在线| 国产乱肥老妇国产一区二| 欧美在线|欧美| 性做久久久久久久久| 黄色在线一区| 欧美激情精品久久久久久久变态 | 美女被久久久| 久久综合电影| 日韩视频在线播放| 亚洲精品在线免费观看视频| 欧美视频中文在线看 | 日韩网站免费观看| 欧美四级电影网站| 香蕉av福利精品导航| 欧美一区二区性| 亚洲电影下载| 亚洲毛片在线观看.| 欧美日韩一区二区视频在线 | 裸体素人女欧美日韩| 日韩视频免费在线| 一区二区三区久久| 国产一区二区成人| 欧美国产日韩二区| 国产精品国产精品| 久久久久久亚洲综合影院红桃| 两个人的视频www国产精品| 亚洲美女毛片| 亚洲欧美国产制服动漫| 亚洲国产精品成人va在线观看| 亚洲精品偷拍| 国产一级揄自揄精品视频| 亚洲国产日韩美| 国产精品日韩精品欧美在线|