osg::ref_ptr<osg::Node> OSG_Qt_::createSimple()
{
osg::ref_ptr<osg::Geode> geode = new osg::Geode;
osg::ref_ptr<osg::Geometry> geometry = new osg::Geometry; //申请顶点
osg::ref_ptr<osg::Vec3Array> coords = new osg::Vec3Array;
//申请颜色
osg::ref_ptr<osg::Vec4Array> colors = new osg::Vec4Array;
//申请法向量
osg::ref_ptr<osg::Vec3Array> norms = new osg::Vec3Array; //设置顶点关联方式
geometry->addPrimitiveSet(new osg::DrawArrays(osg::PrimitiveSet::Mode::QUADS,,)); coords->push_back(osg::Vec3(-10.0,0.0,-10.0));
coords->push_back(osg::Vec3(10.0, 0.0, -10.0));
coords->push_back(osg::Vec3(10.0, 0.0, 10.0));
coords->push_back(osg::Vec3(-10.0, 0.0, 10.0)); //颜色赋值
colors->push_back(osg::Vec4f(1.0,0.0,0.0,1.0));
colors->push_back(osg::Vec4f(0.0, 1.0, 0.0, 1.0));
colors->push_back(osg::Vec4f(0.0, 0.0, 1.0, 1.0));
colors->push_back(osg::Vec4f(1.0, 1.0, 0.0, 1.0)); //法向量赋值
norms->push_back(osg::Vec3(0.0,-1.0,0.0)); //设置顶点
geometry->setVertexArray(coords.get());
//设置颜色
geometry->setColorArray(colors.get());
//颜色绑定方式
geometry->setColorBinding(osg::Geometry::AttributeBinding::BIND_PER_VERTEX);
//设置法向量
geometry->setNormalArray(norms.get());
//法向量绑定
geometry->setNormalBinding(osg::Geometry::AttributeBinding::BIND_OVERALL); geode->addDrawable(geometry.get());
return geode;
}

osg create shape的更多相关文章

  1. osg define shape(create box)

    #ifdef _WIN32 #include <Windows.h> #endif // _WIN32 #include <osgViewer/Viewer> #include ...

  2. 使用Object.create 克隆对象以及实现单继承

    var Plane = function () { this.blood = 100; this.attack = 1; this.defense = 1; }; var plane = new Pl ...

  3. 构造函数创建对象和Object.create()实现继承

    第一个方法用构造函数创建对象,实现方法的继承 /*创建一个对象把所有公用的属性和方法,放进去*/ function Person() { this.name = "W3cplus" ...

  4. 前端开发者进阶之ECMAScript新特性【一】--Object.create

    Object.create(prototype, descriptors) :创建一个具有指定原型且可选择性地包含指定属性的对象 参数:prototype 必需.  要用作原型的对象. 可以为 nul ...

  5. firefox-Developer开发者站点——关于Object.create()新方法的介绍

    https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Object/create Objec ...

  6. What Shape Layers Are-CAShapeLayer

    矢量图.gpu直接使用.占用内存小 What Shape Layers Are Shape layers are layers capable of defining shapes as vector ...

  7. ECMAScript新特性【一】--Object.create

    Object.create(prototype, descriptors) :创建一个具有指定原型且可选择性地包含指定属性的对象 参数: prototype 必需.  要用作原型的对象. 可以为 nu ...

  8. 转载:Object的create方法文档

    源地址:https://developer.mozilla.org/zh-CN/docs/JavaScript/Reference/Global_Objects/Object/create#.E4.B ...

  9. OSG学习:转动的小汽车示例

    由于只是简单的示例,所以小汽车的模型也比较简单,是由简单的几何体组成. 代码如下: #include <osg\ShapeDrawable> #include <osg\Animat ...

随机推荐

  1. PAT基础级-钻石段位样卷2-7-6 帅到没朋友 (20 分)

    当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友.本题就要求你找出那些帅到没有朋友的人. 输入格式: 输入第一行给出一个正整数N(≤),是已知朋友圈的个数:随后N行,每行首先给出一个 ...

  2. VSCode安装程序——java开发

    文章:微软为 Java 开发者推出 VSCode 安装程序 文章介绍微软为VSCode提供了开发程序,方便java开发者更好的使用VSCode

  3. 创建第一kubernetes应用以及基本操作(六)

    1.创建一个测试用的deployment kubectl run net-test --image=alpine --replicas= sleep 2.查看获取IP情况 [root@linux ~] ...

  4. python logging记录日志的方式

    python的logging模块提供了标准的日志接口,可以通过它存储各种格式的日志,日志级别等级:critical > error > warning > info > deb ...

  5. 《TheOne团队》团队作业三:团队项目原型设计与开发

    项目 内容 作业所属课程 http://www.cnblogs.com/nwnu-daizh/ 作业要求 https://www.cnblogs.com/nwnu-daizh/p/10761596.h ...

  6. 通过trace分析优化器如何选择执行计划

    1. mysql> show variables like "optimizer_trace%"\G;*************************** 1. row * ...

  7. MOS管做开关之初理解

    杰杰 物联网IoT开发 2017-10-12 大家好,我是杰杰.       今晚,设计电路搞了一晚上,终于从模电渣渣的我,把MOS管理解了那么一丢丢,如有写的不好的地方,请指出来.谢谢.      ...

  8. git 廖雪峰博客笔记

    其他参考 http://www.softwhy.com/article-8498-1.html 本地模拟多用户来学习 参考   其实就是克隆两个目录,两个目录的git config 不同的名字和邮箱, ...

  9. aws使用之负载均衡elb要点

    目录: 1.创建负载 2.目标群组 3.使用注意事项 4.总结 创建负载 alb负载 https://docs.aws.amazon.com/zh_cn/elasticloadbalancing/la ...

  10. python版本下载时时,官方目录web-based与executable和embeddable 的区别

    背景:安装python时不知道选择哪个版本以及他们之间的意思. 1.X86和X86-64的区别:系統是32 bit 的版本还是 64bit 的 2.web-based ,executable , em ...