自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (8)
  • 收藏
  • 关注

原创 C++学习(三二九)osg::Geometry绘制到窗口的过程

1、生成Geometry的顶点属性包括位置、颜色、纹理坐标等2、生成渲染节点3、执行渲染操作形成窗口可见的点、线、面等。

2021-07-31 12:13:14 325

原创 C++学习(三二八)osg::State中_useVertexAttributeAliasing的作用

State::State(): Referenced(true){ #if !defined(OSG_GL_FIXED_FUNCTION_AVAILABLE) _useVertexAttributeAliasing = true; #else _useVertexAttributeAliasing = false; #endif}

2021-07-31 09:48:40 265

原创 C++学习(三二七)宏中# #@和##的作用

符号 # 也称为字符串化运算符(stringify operator 或 stringizing operator),它会把宏调用时的实参转换为字符串。符号 ## 则是连接符号,由两个井号组成,其功能是在带参数的宏定义中将两个子串联接起来,从而形成一个新的子串。...

2021-07-30 06:14:38 412

原创 C++学习(三二六)osgGA::PointerData的作用

主要用来记录当前鼠标点击事件的一些相关信息,比如当前点击位置,所在对象(窗口)及其尺寸。给鼠标点击事件提供更加丰富的参考信息。struct PointerData : public osg::Referenced{ osg::observer_ptr<osg::Object> object; float x, xMin, xMax; float y, yMin, yMax;};class OSGGA_EXPORT GUIEventAdapter : pub

2021-07-30 05:53:50 185

原创 C++学习(三二五)Qt和Android Studio调试区别

对于函数int func(func1(),func2());Qt调试顺序为func2 func1 funcAndroid Studio调试顺序为func1 func2 func

2021-07-30 05:15:31 417

原创 C++学习(三二四)osg标准漫游器StandardManipulator的_ga_t1 _ga_t0

_ga_t0表示最近的一个鼠标点击事件,ga_t1表示第二近的鼠标点击事件osgGA/StandardManipulatorosg::ref_ptr< const osgGA::GUIEventAdapter > _ga_t1;osg::ref_ptr< const osgGA::GUIEventAdapter > _ga_t0;

2021-07-29 06:20:24 340

原创 C++学习(三二三)osg的事件访问器EventVisitor

作用:对场景图节点Node进行更新。需要场景图节点定义回调函数osg::Callback。创建时机:调用时机: osgGA/EventVisitor inline void handle_callbacks_and_traverse(osg::Node& node) { handle_callbacks(node.getStateSet()); osg::Callback* cal.

2021-07-29 05:36:25 307

原创 C++学习(三二二)Android Windows屏幕坐标

最外面一层是屏幕,左上角是坐标原点,向右向下是x、y正方向。这和Windows屏幕坐标是一样的。

2021-07-29 04:38:41 335

原创 C++学习(三二一)GUIEventAdapter::MOVE与GUIEventAdapter::DRAG区别

MOVE没有鼠标左键按下移动,DRAG鼠标左键按下移动osgGA/GUIEventAdapterclass OSGGA_EXPORT GUIEventAdapter : public Event{ enum EventType { NONE = 0, PUSH = 1<<0, RELEASE = 1<<1

2021-07-24 08:13:59 589

原创 C++学习(三二零)osg漫游器Manipulator自带的鼠标拖拽事件Drag响应

_viewer->setCameraManipulator( new osgGA::TrackballManipulator() );

2021-07-23 06:04:07 752

原创 C++学习(三一九)Android的MotionEvent

ACTION_DOWN:手指按下ACTION_MOVE:手指移动ACTION_UP:手指离开屏幕上述这个动作所产生的一系列事件,被称为一个事件流,它包括一个ACTION_DOWN事件,很多个ACTION_MOVE事件,和一个ACTION_UP事件。ACTION_CANCEL:取消当前手势。一般来说,如果一个子视图接收了父视图分发给它的ACTION_DOWN事件,那么与ACTION_DOWN事件相关的事件流就都要分发给这个子视图,但是如果父视图希望拦截其中的一些事件,不再继续转发事件给

2021-07-21 06:25:30 126

原创 C++学习(三一八)Android的Logcat

logcat是Android中一个命令行工具,可以用于得到程序的log信息。要仅显示感兴趣的信息,您可以创建过滤器、修改消息中显示的信息量、设置优先级、仅显示通过应用代码生成的消息以及搜索日志。默认情况下,logcat 仅显示与最近运行的应用相关的日志输出。如果应用抛出异常,logcat 会显示一条消息,后跟相关联的堆栈轨迹,其中包含指向相应代码行的链接。 Log.e(String, String)(错误) Log.w(String, String)(警告) Log.i(Stri

2021-07-21 06:17:23 397 1

原创 C++学习(三一七)ASCII码表

ASCII ((American Standard Code for Information Interchange):美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。ASCII第一次以规范标准的类型发表是在1967年,最后一次更新则是在1986年,到目前为止共定义了128个字符 [1] 。...

2021-07-19 06:24:15 2866

原创 C++学习(三一六)事件响应返回值

return true 代表事件已处理,不用再传递false 代表事件未处理,继续向后传递找到适合处理的函数

2021-07-18 19:24:13 103

原创 C++学习(三一五)osg漫游器Manipulator自带事件Event响应

osgGA/StandardManipulator.cppbool StandardManipulator::handleKeyDown( const GUIEventAdapter& ea, GUIActionAdapter& us ){ if( ea.getKey() == GUIEventAdapter::KEY_Space ) { flushMouseEventStack(); _thrown = false; ...

2021-07-18 19:22:32 250

原创 C++学习(三一四)osg漫游器Manipulator例子

osg::ref_ptr<osgGA::KeySwitchMatrixManipulator> _manipulator; _manipulator = new osgGA::KeySwitchMatrixManipulator; _manipulator->addMatrixManipulator( '1', "Trackball", new osgGA::TrackballManipulator() ); _manipulator->...

2021-07-18 08:50:44 1339

原创 C++学习(三一三)EventQueue创建时机

osgGA::EventQueue在osgViewer::View创建时创建。osgViewer/View.cppView::View(): _fusionDistanceMode(osgUtil::SceneView::PROPORTIONAL_TO_SCREEN_DISTANCE), _fusionDistanceValue(1.0f){ // OSG_NOTICE<<"Constructing osgViewer::View"<<std::

2021-07-18 08:18:16 218

原创 C++学习(三一二)glVertexAttribPointer和glVertexAttrib*的关系

参考openGL之API学习(一六六)glVertexAttrib*函数和openGL之API学习(三十一)glVertexAttribPointer。

2021-07-18 06:27:25 298

原创 C++学习(三一一)AttributeDispatchers和VertexAttribArrayDispatch关系

区别如下:

2021-07-17 17:20:02 213

原创 C++学习(三一零)glEnableVertexAttribArray和glVertexAttribPointer的顺序关系

没有顺序关系,可前可后。

2021-07-17 16:46:47 217

原创 C++学习(三零九)osg::VertexArrayState的作用

osg/VertexArrayState class OSG_EXPORT VertexArrayState : public osg::Referenced{};

2021-07-17 12:07:47 398

原创 C++学习(三零八)osg::Geometry的顶点数据上传到GPU的过程

osg/VertexArrayState.cppinline void callVertexAttribPointer(GLExtensions* ext, const osg::Array* new_array, const GLvoid * ptr) { if (new_array->getPreserveDataType()) { if (new_array->getDataType()==GL_FLOAT) ...

2021-07-17 09:00:56 256

原创 openGL之API学习(一六八)gl_SecondaryColor

The GL stores both a primary four-valued RGBA color and a secondary four-valued RGBA color (where alpha is always set to 0.0) that is associated with every vertex.The secondary color is interpolated and applied to each fragment during rasterization when

2021-07-17 08:43:16 281

原创 openGL之API学习(一六七)默认着色器 顶点属性索引 别名索引

opengl在调用glDrawElements或glDrawArrays进行绘制时,如果没有指定用户自定义的顶点、片段等着色器,opengl会为用户设置一个默认的着色器,类似于顶点着色器#version 330void main(){ }片段着色器#version 330void main(){ }在顶点着色器中默认使用gl_Vertex绘制顶点。在片段着色器中默认使用gl_Color绘制颜色。gl_Vertex、gl_Color一般通过glVer

2021-07-17 08:22:06 756

原创 openGL之API学习(一六六)glVertexAttrib*函数

指定通用顶点属性的值void glVertexAttrib1f( GLuint index,GLfloat v0);void glVertexAttrib2f( GLuint index,GLfloat v0, GLfloat v1);void glVertexAttrib3f( GLuint index,GLfloat v0,GLfloat v1,GLfloat v2);void glVertexAttrib4f( GLuint index,GLfloat v0,GLfl...

2021-07-13 06:55:19 1026

原创 C++学习(三零七)AttributeDispatchers详解

用于管理将各种属性数组(例如存储在 osg::Geometry 中)分派到 OpenGL 的助手类。osg/AttributeDispatchers.cpp/** Helper class for managing the dispatch to OpenGL of various attribute arrays such as stored in osg::Geometry.*/class OSG_EXPORT AttributeDispatchers : public osg::Refere

2021-07-12 06:08:54 218

原创 C++学习(三零六)osg设置背景颜色

camera->setClearColor() 默认颜色值:

2021-07-11 08:46:05 1168

原创 C++学习(三零五)osg开启 关闭光照效果

osg::ref_ptr<osg::StateSet> state = root->getOrCreateStateSet();state->setMode(GL_LIGHTING, osg::StateAttribute::ON);state->setMode(GL_LIGHTING, osg::StateAttribute::OFF);

2021-07-11 07:01:21 1358 1

原创 C++学习(三零四)osg材质Material使用

osg::ref_ptr<osg::Material> material = new osg::Material; osg::Vec4 redColor(1.0, 0.0, 0.0, 1.0); material->setAmbient(osg::Material::FRONT_AND_BACK, redColor); material->setDiffuse(osg::Material::FRONT_AND_BACK,redColor); mate.

2021-07-10 19:52:53 501 1

原创 C++学习(三零三)osg绘制直线 折线

//绘制折线osg::ref_ptr<osg::Geode> geode = new osg::Geode;_root->addChild(geode);//设置顶点数组osg::ref_ptr<osg::Vec3Array> vex = new osg::Vec3Array;vex->push_back(osg::Vec3(-3.0, 0.0, 0.0));vex->push_back(osg::Vec3(3.0, 0.0, 0.0));vex-&.

2021-07-10 19:06:16 1076

原创 C++学习(三零二)知识图谱中的几种关系

1、强关系数据库表中同一行的两个知识2、中关系文档中同一段落的两个知识3、弱关系文档中不同段落的两个知识

2021-07-10 08:08:00 416

原创 C++学习(三零一)吹气球效应

1、气球越吹越大2、薄弱的部位相比结实的部位涨开的速度更大应用:1、股市投资越是涨的股票越是涨

2021-07-10 07:50:35 237

原创 C++学习(三零零)windows如何查看so文件里的函数

需要用到cygwin下的realelf工具1、查看so文件的头部信息$ readelf -h D:/android-ndk-r19c/toolchains/llvm/prebuilt/windows-x86_64/sysroot/usr/lib/aarch64-linux-android/28/libGLESv2.soELF Header: Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 Class:

2021-07-10 07:23:09 2949 1

原创 C++学习(二九九)undefined reference to `glActiveShaderProgramEXT‘

缺少动态库,添加D:\android-ndk-r19c\toolchains\llvm\prebuilt\windows-x86_64\sysroot\usr\lib\aarch64-linux-android\28\libGLESv3.soAccording to the Khronos OpenGL ES Registry, the extension header for GLES 3.0 is actually <GLES2/gl2ext.h>. gl3ext.h should be

2021-07-08 06:22:16 295

原创 C++学习(二九八)Firefox运行慢的原因

1、长时间打开2、编译程序时

2021-07-05 06:54:27 80

glview631-setup.exe

直观的查看支持的OpenGL的特性和扩展,你也可以下载OpenGL Extensions Viewer,这个软件也有多个平台的版本。

2021-08-15

osgAndroidExampleGLES2重新组织TestNativeCPlusPlus

osgAndroidExampleGLES2是Eclipse下工程文件,理论上Android Studio也是可以打开执行的,但由于种种原因,无法在Andoid Studio上执行。该程序完全基于Android Studio,用CMake组织C++代码,用Gradle作为构建工具,对osgAndroidExampleGLES2进行了重新配置,可以Android Studio3.5上运行、调试。

2021-06-19

NVIDIA_Nsight_Tegra_Release_3.6.19217.7511.exe

NVIDIA® Nsight™ Tegra®, Visual Studio Edition brings Microsoft Visual Studio to Android, allowing for seamless GDB and JDB remote debugging to all Android devices capable of native application debugging, supporting all Android ABIs – ARM v7, ARM v8, x86, x64.

2021-02-11

wgl相关函数.pdf

wgl是Windows操作系统和OpenGL做交互的一系列扩展api,该文档提供了wgl相关函数及其使用说明。

2020-05-31

mapx功能说明

对mapx的功能有很详细的说明,是开发地理信息系统的一个很好插件

2012-02-23

google输入法

很好用的输入法软件,可以方便的在中英文之间切换,并且字库的命中率也相当高

2008-07-13

瑞星最新杀毒

瑞星最新出的杀毒软件

2008-02-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除