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

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久久精品66| 亚洲免费影视第一页| 国产欧美一区二区三区视频| 欧美一区二区三区精品| 欧美亚洲免费电影| 一区二区三区自拍| 欧美高清在线视频| 欧美日韩国产综合新一区| 中文精品视频一区二区在线观看| 亚洲视频日本| 国产日韩专区在线| 欧美成人免费全部| 欧美体内she精视频在线观看| 欧美亚洲综合在线| 欧美亚洲综合在线| 亚洲激情视频在线播放| 一区二区三区国产在线| 国产毛片一区二区| 欧美国产精品专区| 国产精品色在线| 男同欧美伦乱| 欧美色播在线播放| 噜噜噜久久亚洲精品国产品小说| 欧美1区2区| 久久久国产亚洲精品| 欧美va天堂va视频va在线| 亚洲欧美成人一区二区在线电影| 久久精品国产亚洲aⅴ| 妖精视频成人观看www| 香蕉乱码成人久久天堂爱免费| 亚洲大胆人体视频| 午夜亚洲视频| 中文在线不卡| 蜜臀av一级做a爰片久久| 亚洲欧美日韩精品久久亚洲区| 老司机精品视频一区二区三区| 亚洲男女毛片无遮挡| 免费不卡在线视频| 欧美在线日韩| 欧美视频国产精品| 欧美国产精品专区| 韩国一区二区三区美女美女秀| 亚洲毛片av| 亚洲人www| 久久精品国产久精国产爱| 亚洲永久字幕| 欧美日韩一二区| 欧美激情亚洲另类| 狠狠综合久久av一区二区小说| 一区二区三区视频观看| 91久久精品国产91久久| 久久五月婷婷丁香社区| 久久九九精品| 国产午夜精品在线| 亚洲欧美日韩精品| 午夜久久久久久| 欧美日韩性视频在线| 亚洲国产美女| 亚洲欧洲综合另类| 欧美电影美腿模特1979在线看| 蜜臀91精品一区二区三区| 国产热re99久久6国产精品| 一本久久知道综合久久| 国产精品99久久不卡二区| 欧美精品免费看| 91久久亚洲| 一区二区三区不卡视频在线观看 | 一色屋精品视频免费看| 欧美一区二区三区四区在线| 欧美亚洲免费电影| 国产日韩欧美在线视频观看| 亚洲一区二区高清视频| 久久国产精品亚洲77777| 国产一区视频在线观看免费| 久久精品国产99国产精品澳门| 久色婷婷小香蕉久久| 亚洲第一主播视频| 免费成人在线观看视频| 亚洲精品国产精品乱码不99按摩 | 亚洲美女av在线播放| 欧美第一黄色网| 亚洲免费观看在线视频| 午夜精品影院在线观看| 国产一区二区三区在线观看精品| 欧美一区二区三区视频在线观看| 久久野战av| 日韩视频在线一区| 国产精品二区二区三区| 欧美一级电影久久| 免费在线视频一区| 在线亚洲观看| 国模私拍视频一区| 欧美福利电影网| 亚洲一区免费看| 欧美成人中文字幕在线| 一区二区三区产品免费精品久久75| 欧美先锋影音| 久久青青草综合| aaa亚洲精品一二三区| 欧美在线观看www| 亚洲每日在线| 国产一区二区中文| 欧美精品三区| 久久精品国产69国产精品亚洲 | 亚洲国产一区在线| 香蕉成人啪国产精品视频综合网| 伊人狠狠色j香婷婷综合| 欧美激情中文不卡| 久久国产精彩视频| 一区二区三区精密机械公司| 老鸭窝毛片一区二区三区| 一区二区成人精品 | 欧美日韩国产专区| 久久久精品日韩| 亚洲无吗在线| 亚洲精品一区二区在线观看| 久久影视精品| 久久成人精品一区二区三区| 一区二区黄色| 亚洲精品护士| 一区在线播放| 国产视频一区在线观看一区免费| 欧美日韩播放| 欧美激情第五页| 美女亚洲精品| 久久久久国产精品www| 午夜电影亚洲| 亚洲欧美日韩综合国产aⅴ| aⅴ色国产欧美| 日韩一二三区视频| 亚洲欧洲另类国产综合| 免费久久精品视频| 免费成人网www| 蜜桃av一区二区在线观看| 久久国产直播| 久久精品国产第一区二区三区| 亚洲影院在线| 亚洲视频导航| 国产精品99久久久久久久vr| 一本久久精品一区二区| 亚洲美女av网站| 日韩系列欧美系列| 99精品热视频| 亚洲曰本av电影| 亚洲一区三区视频在线观看| 亚洲无线一线二线三线区别av| 亚洲美女淫视频| 中文日韩在线| 亚洲欧美日本日韩| 久久精品国产免费看久久精品| 午夜在线一区| 久久久久久网| 欧美高清在线精品一区| 亚洲电影视频在线| 99国内精品| 亚洲欧美日韩精品久久亚洲区 | 欧美成人激情在线| 亚洲国产成人不卡| 99精品视频网| 欧美影院在线播放| 久久久亚洲精品一区二区三区 | 麻豆久久精品| 欧美黄免费看| 国产精品日韩在线一区| 国产亚洲欧美激情| 亚洲国产高清一区| 亚洲特黄一级片| 久久久久久久久伊人| 欧美激情亚洲激情| 国产精品99久久久久久久久| 欧美亚洲自偷自偷| 欧美大片在线看免费观看| 国产精品久久久久久久久久久久| 国产日韩欧美在线看| 亚洲第一成人在线| 亚洲午夜av在线| 欧美日韩国语| 国产精品网站在线| 欧美激情导航| 久久视频在线视频| 亚洲欧洲一区二区三区| 亚洲淫片在线视频| 久久亚洲私人国产精品va| 欧美日韩国产成人| 激情91久久| 亚洲专区国产精品| 欧美a级片网| 亚洲欧美日韩国产综合在线| 免费国产一区二区| 国产欧美日韩一区| 国产精品99久久99久久久二8| 久久久999精品视频| 中文精品视频| 欧美日韩大陆在线| 亚洲高清在线| 久久米奇亚洲| 午夜久久tv|