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

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

Quick3D 學習文檔 (QML) 轉載

Posted on 2011-08-04 21:14 RTY 閱讀(3745) 評論(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>
            亚洲国产精品va| 老鸭窝亚洲一区二区三区| 先锋影音网一区二区| 国产精品黄色| 欧美一区在线看| 欧美激情在线有限公司| 日韩午夜激情电影| 欧美午夜精品| 欧美一区二区精品| 欧美黄色视屏| 亚洲欧美日本国产有色| 国产亚洲一区二区三区在线播放| 久久精品免视看| 亚洲久久视频| 老巨人导航500精品| 一区二区三区视频观看| 国产日韩欧美二区| 欧美精品一区二| 午夜一区二区三视频在线观看 | 亚洲综合视频一区| 国产一区二区三区免费观看| 裸体丰满少妇做受久久99精品| 99精品视频一区二区三区| 久久久夜色精品亚洲| 99精品欧美一区二区三区| 国产一区二区三区视频在线观看| 牛牛精品成人免费视频| 亚洲综合第一| 最新国产成人在线观看| 久久久久久一区二区| 亚洲视频一区二区免费在线观看| 黑人操亚洲美女惩罚| 欧美日韩综合另类| 久久香蕉精品| 先锋影院在线亚洲| 夜夜爽av福利精品导航| 欧美韩国日本一区| 久久久91精品国产一区二区三区 | 这里只有精品在线播放| 免播放器亚洲一区| 性色一区二区| 一区二区三区欧美日韩| 亚洲国产裸拍裸体视频在线观看乱了| 国产精品九九| 欧美日本中文字幕| 欧美.日韩.国产.一区.二区| 午夜激情综合网| 中国av一区| 亚洲精品影院| 91久久精品美女高潮| 久久综合九色综合欧美狠狠| 欧美影院在线| 午夜精品久久久久| 亚洲伊人色欲综合网| 日韩视频精品在线观看| 亚洲激情小视频| 一区二区视频欧美| 国内精品久久久| 国产一区二区三区四区hd| 国产欧美日韩视频一区二区三区 | 亚洲日韩欧美视频一区| 亚洲第一中文字幕在线观看| 韩国三级电影久久久久久| 国产伦精品一区二区三区高清版| 欧美系列一区| 欧美日韩一区二区视频在线观看| 欧美国产日韩一二三区| 欧美国产先锋| 欧美激情视频一区二区三区免费| 欧美a级大片| 欧美成人免费小视频| 欧美成人午夜免费视在线看片| 久久在线免费视频| 欧美高清视频免费观看| 欧美国产先锋| 欧美日韩人人澡狠狠躁视频| 欧美日韩国产美女| 国产精品啊v在线| 国产精品丝袜久久久久久app| 国产精品高潮久久| 国产日韩欧美成人| 永久91嫩草亚洲精品人人| 在线观看日韩一区| 亚洲精品系列| 亚洲小说区图片区| 欧美一区二区视频在线观看2020 | 日韩视频在线播放| 一区二区三区国产精品| 亚洲欧美区自拍先锋| 久久国内精品视频| 欧美成人久久| 亚洲精品影院在线观看| 亚洲专区一区二区三区| 久久久久久香蕉网| 欧美国产在线电影| 国产精品三区www17con| 黄色精品免费| 一区二区三区产品免费精品久久75 | 亚洲人午夜精品免费| 亚洲一区二区三区四区中文| 久久精品国产亚洲一区二区三区| 免费成人黄色av| 亚洲另类在线视频| 欧美一区国产二区| 欧美 日韩 国产 一区| 欧美午夜影院| 玉米视频成人免费看| 亚洲视频在线观看免费| 久久精品国产亚洲一区二区| 亚洲高清123| 亚洲欧美日韩中文视频| 久色成人在线| 国产精品一区视频| 亚洲区第一页| 久久国产主播精品| 亚洲精品美女在线| 久久久久.com| 国产精品大片wwwwww| 在线成人av.com| 亚洲欧美视频在线观看视频| 欧美成人a∨高清免费观看| 在线综合亚洲| 欧美国产视频在线观看| 国外成人免费视频| 亚洲综合欧美日韩| 亚洲高清视频中文字幕| 欧美一区二视频| 国产精品久久久久高潮| 亚洲福利免费| 久久久视频精品| 中文有码久久| 欧美极品一区二区三区| 激情久久久久久久| 性做久久久久久免费观看欧美| 亚洲国产精品黑人久久久| 欧美自拍丝袜亚洲| 国产欧美91| 亚洲伊人第一页| 日韩一本二本av| 欧美高清视频一区| 亚洲精品123区| 美女精品在线| 久久久福利视频| 国产视频一区在线观看一区免费| 亚洲午夜电影在线观看| 亚洲高清三级视频| 免费亚洲婷婷| 91久久精品国产91性色 | 亚洲二区视频在线| 久久久久亚洲综合| 国内成+人亚洲+欧美+综合在线| 午夜精品国产| 亚洲一品av免费观看| 国产精品家教| 欧美一级夜夜爽| 亚洲欧美综合精品久久成人| 国产精品久久国产愉拍| 亚洲淫片在线视频| 在线视频免费在线观看一区二区| 欧美电影免费观看| 日韩视频免费观看高清完整版| 欧美~级网站不卡| 你懂的国产精品永久在线| 亚洲黄色影院| 亚洲国产精品毛片| 欧美日本在线| 亚洲在线黄色| 亚洲欧美日韩一区在线| 国产日韩三区| 玖玖视频精品| 欧美不卡高清| 一本色道久久88综合亚洲精品ⅰ| 最新国产成人av网站网址麻豆| 欧美久久电影| 午夜精品久久久| 久久国产欧美日韩精品| 在线观看视频一区二区| 91久久在线观看| 国产精品va在线播放| 欧美一区二区三区日韩| 久久久噜噜噜| 亚洲精品中文字| 亚洲影院免费| 激情成人综合| 91久久黄色| 国产精品亚洲一区| 老妇喷水一区二区三区| 欧美精品粉嫩高潮一区二区 | 亚洲高清在线观看一区| 欧美日韩国产大片| 欧美在线视频免费播放| 久久深夜福利| 亚洲欧美国产日韩天堂区| 欧美亚洲视频一区二区| 依依成人综合视频| 一区二区av在线| 狠狠综合久久av一区二区小说| 欧美激情无毛| 国产日韩专区在线| 亚洲精品影视|