GLM Vector初始化

时间:2017-10-17 21:29:40

标签: c++ glm-math

关于GLM的一个简单问题。 我是C ++和GLM的新手,所以请耐心等待。

我不明白这行是做什么的:

glm::vec4 vec(1.0f, 0.0f, 0.0f, 1.0f);

什么是" vec" ?方法名称?构造函数?如果我重构它(重命名),它仍然有效。

我知道它必须是变量,但对我来说它看起来像是一种方法。

由于

1 个答案:

答案 0 :(得分:1)

glm :: vec4是一个包含4个分量x,y,z和w的矢量。

db.collection.aggregate({
    $project: {
        "tmp": { // we create a temporary field
            $objectToArray: "$$ROOT" // that contains our respective root document represented as an array of key-value pairs
        }
    }
}, {
    $unwind: "$tmp" // flatten the temporary array into multiple documents
}, {
    $match: {
        "tmp.v": { $not: { $type: "object" } } // filter all documents out that we do not want in our result
    }
}, {
    $group: { // group all documents together again
        "_id": "$_id", // into one bucket per original document ("_id")
        "tmp": {
            $push: "$tmp" // and create an array with all the key-value pairs that have survived our $match stage
        }
    }
}, {
    $replaceRoot: { // create a new top level document...
        "newRoot": {
            $arrayToObject: "$tmp" // ...out of the data we have left in our array
        }
    }
})

创建一个名为vec的变量vec4。向量的内容用

初始化
glm::vec4 vec(1.0f, 0.0f, 0.0f, 1.0f)