![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++
文章平均质量分 62
丘上人
如果感觉不好,那就自己动手
展开
-
C++ vs2015下的虚函数表 vtable
vs2015下的虚函数表原创 2022-08-02 16:11:11 · 304 阅读 · 0 评论 -
qt模块feature QT_FEATURE_* qt_lib_*.pri QT_CONFG qtConfig
qt模块 feature QT_FEATURE_* qt_lib_*.pri QT_CONFG qtConfig原创 2022-12-04 22:26:09 · 1037 阅读 · 0 评论 -
detach() 与 写时拷贝 (copy-on-write,COW)
detach() 与 写时拷贝原创 2022-12-03 12:38:52 · 108 阅读 · 0 评论 -
qt example plugandpaint 插件 动态库 pnp_extrafiltersd.dll无法加载问题
qt debug 动态库 插件 无法加载原创 2022-11-21 13:15:43 · 713 阅读 · 0 评论 -
QString::asprintf QString::vasprintf
QString::asprintf QString::vasprintf原创 2022-09-26 17:02:51 · 3909 阅读 · 0 评论 -
VS调试正在运行的exe程序
vs 调试运行时exe原创 2022-09-05 11:57:34 · 3240 阅读 · 0 评论 -
Q_ENUM Q_ENUMS Q_ENUM_NS Q_FLAG Q_FLAGS Q_FLAG_NS
Q_ENUM Q_ENUMS Q_ENUM_NS Q_FLAG Q_FLAGS Q_FLAG_NS原创 2022-09-03 22:15:25 · 1065 阅读 · 0 评论 -
Q_PLUGIN_METADATA Q_INTERFACE Q_DECLARE_INTERFACE qt_pluginMetaData
Q_PLUGIN_METADATA Q_DECALER_INTERFACE Q_INTERFACE QT_MOC_EXPORT_PLUGIN qt_plugin_instance原创 2022-09-02 11:18:24 · 2105 阅读 · 5 评论 -
Src\qtbase\src\corelib\kernel\qobjectdefs_impl.h QtPrivate 解读 “SignalArgs” : 此包扩展中的元素数与“II”中的元素数不匹配
QtPrivate解读 List List_Left List_Select IndexLists Indexs FunctionPointer Functor FunctorCall ApplyReturnValue RemoveRef“SignalArgs” : 此包扩展中的元素数与“II”中的元素数不匹配原创 2022-08-18 22:16:36 · 407 阅读 · 0 评论 -
QScopedPointerDeleter (void) sizeof(IsIncompleteType);
Qt (void) sizeof(IsIncompleteType);原创 2022-08-17 10:54:50 · 406 阅读 · 0 评论 -
C++ 函数指针 类成员函数函数指针
C++ 函数指针 类成员函数函数指针原创 2022-08-16 19:14:11 · 401 阅读 · 0 评论 -
C++ 全局常量 静态常量 常量存储区 只读
C++ 全局只读量原创 2022-08-16 11:27:36 · 1163 阅读 · 0 评论 -
opengl glfw demo 下载,在windows vs2015中运行
opengl demo的下载,在vs2015中配置、运行原创 2022-07-20 19:33:34 · 287 阅读 · 0 评论 -
arcgis qt sdk 画圆
使用版本10.2.1https://community.esri.com/thread/203779-draw-circles-and-sectors-on-the-mapSimpleLineSymbol* circleOutline = new SimpleLineSymbol(SimpleLineSymbolStyle::Solid, QColor(Qt::lightGray), 2,...转载 2018-08-17 11:56:30 · 529 阅读 · 0 评论 -
cuda cuvid problems note D3Dtexture opengl texture mapped
1、cuda驱动api与cuda runtime 混合使用造成问题。目的:将画面cuvid解析出来的yuv 渲染 到 texture(opengl的或D3d的)上因为官网给出的demo 是利用cuda驱动api来进行开发的。而官网给出的从texture映射到cuda中的案例只有cuda runtime api的(在10.1版本中已经被deprecated 了)。并且也没有从cuda驱动中找到从...原创 2019-04-08 15:06:04 · 623 阅读 · 0 评论 -
unigine 渲染dynamicobject
ObjectDynamicPtr dynamic;TextureRenderPtr texture_render;TexturePtr texture;void fun1() // 放到init中{ int width = 128; int height = 128; texture_render = TextureRender::create(); t...原创 2019-06-17 17:39:49 · 312 阅读 · 1 评论 -
unigine texture texturerender shader
unigine texture 有一个很好用的地方,如果外部没有什么地方依赖texture的width、height、format,则可以通过load和setimage方式直接替换texture中的贴图。texture实际渲染过程中是通过调用 texture.bind(int)来将texture 绑定到shader中对应的纹理中的。(渲染的结果可以通过TextureRender.bind...原创 2019-04-01 17:26:56 · 351 阅读 · 2 评论 -
unigine ObjectDynamic ffp 对比 及shader使用
Ffp 是用于独立的渲染的,能结合shader textureRender render renderstate等灵活的将画面渲染出来。使用可以比较灵活。但是ffp有顶点限制,并且效率也是比较低的,需要每帧从cpu传送顶点去进行绘制,最关键是能传入的顶点的index是unsigned short类型的,数量有限。适用于顶点数小,并且每帧顶点都变化的对象渲染。ObjectDynamic 就...原创 2019-04-05 12:40:45 · 330 阅读 · 0 评论 -
D3d/opengl texture yuv yuv420p nv12 yv12 等等 显示 以及传入shaderresource
为何要用nv12 或nv21?官方解释是方便渲染使用。个人理解 :方便将nv12(DXGI_FORMAT_NV12)或nv21(DXGI_FORMAT_NV21)数据放到一个texture中,然后通过shader进行渲染。nv12与nv21区别是u与v的存放空间的位置问题,一个在前一个在后。下面是msdn中对nv12 aligned 格式的图例描述(y:width,height ;uv:wi...原创 2019-03-27 12:13:55 · 4967 阅读 · 0 评论 -
qt creator cdb terminated
使用qt creator ,正确配置vs编译器和cdb调试器。经常碰到 “the CDB process terminated”错误。没有找到cbd的日志,并且直观上也没有多余的消息,不是很熟练的人经常会头疼。比如导入一个新的工程想调试出现这个问题。原因可能有1、80%以上 程序依赖的 dll库缺失 或者 程序依赖的dll版本不对。(直接双击运行exe程序,就会报出缺了什么库,或...原创 2018-03-06 17:42:58 · 1494 阅读 · 0 评论 -
D3D11 texture 创建 NV12 YV12 YUV420 cpu 访问 内存分布 拷贝 map updateresource copyresource
nv12 详细介绍:https://docs.microsoft.com/zh-cn/windows/desktop/api/dxgiformat/ne-dxgiformat-dxgi_format(关于查看msdn文档,对于所有的windows的类型,在vs下鼠标移动到对应的类型或其属性或枚举下,按f1浏览器就能调到对应的官方文档对应的网页,还是相当方便的)nv12、yuv420、yv12等......原创 2019-04-12 16:45:36 · 5009 阅读 · 0 评论 -
vs D3D11 调试 错误信息显示
D3D11 程序调用经常碰到莫名其妙的错误。错误码一般就是E_INVALIDARG。具体原因大概是为了对外尽量减少暴露 以及 利用返回错误来避免一些低效的程序操作。但是调试时发现其实是有错误信息显示的,如下:经过一番查找,这个日志的输出与D3D device 创建时有关。UINT createDeviceFlags = 0;#ifdef _DEBUGcreateDeviceF...原创 2019-04-13 12:31:05 · 1526 阅读 · 0 评论 -
unigine 多视口(viewport) 地形与贴图相对的运动
版本2.5~2.7.3unigine中的globalterrain有点类似于decal,猜测可能是为了节省texture数量。并且是以主相机视角来实现的。当你在辅助相机的viewport中看地形时,会发现地形的画面会与地形的mesh做相对运动。解决办法是,主相机不动。移动辅助相机。...原创 2019-05-10 16:40:03 · 328 阅读 · 0 评论 -
cudaErrorInvalidResourceHandle cudaGraphicsMapResources
在主线程中创建的cudaGraphicsResource 对象,主线程中进行cudaGraphicsMapResources 操作是正确的,但是在子线程中进行cudaGraphicsMapResources 操作却出错了,报错:400(cudaErrorInvalidResourceHandle)。猜测应该是map操作不能夸线程的。同样的,d3d中也是context在哪个线程创建,则需要在对应...原创 2019-05-09 11:56:59 · 2449 阅读 · 0 评论 -
C/C++ 中 前置++ 与 后置++ 逗号表达式 括号
使用vs2015请看如下反汇编: int m = 2;00007FF6C78A5B88 mov dword ptr [m],2 m++;00007FF6C78A5B90 mov eax,dword ptr [m] //inc m00007FF6C78A5B94 inc eax 00007FF6C78A5B96 m...原创 2019-04-24 20:15:42 · 550 阅读 · 0 评论 -
unigine EllipsoidPtr get center 获取粗略球心坐标 获取当前位置粗略重力方向
GeodeticPivotPtr pivot = GeodeticPivot::cast(Editor::get()->getNodeByName("GeodeticPivot")); pivot->setOrigin(Vec3(0, 90, 0)); EllipsoidPtr e = pivot->getEllipsoid(); Mat4 mat...原创 2019-06-17 17:36:19 · 256 阅读 · 0 评论 -
unigine objectglobleterrain
//render height outif (App::get()->clearMouseButtonState(App::BUTTON_LEFT)) { Vec3 pos = Game::get()->getPlayer()->getWorldPosition(); vec3 dir = Game::get()->getPlayer()->getDi...原创 2019-06-17 17:35:06 · 216 阅读 · 0 评论 -
unigine geopivot 经纬度 空间坐标 三维平铺坐标
unigine中的geopivot 作用是进行 经纬度与空间坐标系之间的换算 以及 经纬度到三维平铺坐标之间的换算(先理解区分下经纬度 三维空间坐标 三维平铺坐标 这三个的概念:首先在unigine中如果没有geopivot节点,那么就只有一个三维空间坐标的概念。如果加入geopivot节点并且将其他节点放置到这个geopivot节点下,(如果其他的物体比较大,比如使用一个globalwat...原创 2019-06-17 17:33:59 · 291 阅读 · 0 评论 -
unigine intersection 射线检测 ObjectTerrainGlobal 失效
2.7.1最近碰到这样的问题,在init中使用射线检测函数无效,确认正确设置好点和mask解决办法:在init中最开始加入ObjectTerrainGlobalPtr terrain = ObjectTerrainGlobal::cast(Editor::get()->getNodeByName("Landscape"));terrain->setForceInt...原创 2019-04-19 12:00:55 · 190 阅读 · 0 评论 -
unigine 三维旋转矩阵(mat3,quat) scale translate 变换矩阵(mat4) 和forward up right 关系 normal binormal tangent
三维中旋转矩阵可以用mat3或quat表示。 两者可以转换。在数学上,旋转和反射对应线代中的正交变换。每行(或每列)相互正交的矩阵且每行(或每列)模长为1,叫正交矩阵。unigine中是右手坐标系。顺时针方向的角度为正,逆时针方向角度为负知道y,z 求x:cross(y,z);(trick:将所求的轴朝向自己的反方向,顺时针代入已知的轴,只是在求轴的时候从这个视角,理解旋转的时候需要让轴朝...原创 2018-03-08 11:14:51 · 7873 阅读 · 1 评论 -
arcgis qt sdk demo 奔溃
使用arcgis qt sdk版本 100.2.1制作arcgis项目,出现一个崩溃问题,原始的arcgis demo都是能正常运行,但是加入我的项目后出现崩溃问题。经过排除法,有两点1、在main中widget初始化之前加入#ifdef Q_OS_WIN // Force usage of OpenGL ES through ANGLE on Windows QCoreApplica...原创 2018-07-10 15:53:17 · 563 阅读 · 0 评论 -
mfc 窗口内嵌
1、创建资源。2、设置资源属性 (1)style :child(2)bounder:none3、创建窗口,通过 参考:https://blog.csdn.net/yu5103428/article/details/48003251http://blog.sina.com.cn/s/blog_86ec70170102vk0i.html...原创 2018-09-06 10:37:06 · 622 阅读 · 0 评论 -
qt QWidget background layer 层次 猜想
使用qt版本5.11.0 window10. 经过试验,qt中的qwidget 的background 可以理解为至少有两个层次。试验如下:1、Qpainter 对QPixmap进行画图。(wb.png)QPixmap pix("E:/temp1/wb.png");QPainter painter(&pix);painter.fillRect(pix.re...原创 2018-09-06 15:07:00 · 702 阅读 · 0 评论 -
vs 调试 输出 显示指针数组中每项的值
使用vs版本vs2013vs 调试时显示指针 数组的值有几种 方式1、变量本 身是一个数组,不是指向数组的指针,则鼠标移动到变量上时可以直接看到。2、变量是指向指针的数组,通常能看到第一项的值, 可以通过下面两种方法来查看。 (1)监视窗口中输入 :var,num,如下(2)命令窗口中输入 :? var,num 或者Debug.print var,num 如下...原创 2018-09-10 16:17:42 · 4789 阅读 · 0 评论 -
c++ 获取数组长度
1、对于数组或者传递的数组参数,可以直接使用如下的宏或者类似的函数来获取。#define getArrayLen(array,len) {len = sizeof(array)/sizeof(array[0]);}2、对于指向数组的指针,可以通过指针来获取数组大小。需要先了解下数组申请时的结构,如下 申请时或在所有元素前多出一个单元存放数组的大小。所以只要找到那个单元就能知道数组大小...原创 2018-09-13 11:38:41 · 12815 阅读 · 0 评论 -
qt 源码文件 字符编码 查看 转变
qt中QString采用的是两字节UCS-2编码, 而qt工程文件中(qtcreator下文件中的文字编码), 默认情况下采用的是utf8编码。所以如果默认是utf8编码,而从别的地方拷贝一个unicode编码(windows下一般采用UCS-2编码)的文件过来时,会有一堆问题,最简单的方法先将文件编码转换成utf8编码再加入。(理解unicode、ucs-2、utf8,可以参考https://b...原创 2018-10-17 12:08:11 · 1664 阅读 · 1 评论 -
tcp 杂记
1、bind的作用。在tcp中, 表明要绑定到哪个端口和ip,bind函数中需要指定Ip和port。下面是tcp中server端和client端的bind的作用在server端,是必须要进行bind的,一定需要指定server使用哪个端口。ip可以设置为0.0.0.0(Any),表示去监听电脑上的任意的网卡或者network adapter 。 在client端,可以bind,但是尽量不要b...原创 2018-12-13 17:56:47 · 358 阅读 · 0 评论 -
unigine qt project crash in start
with unigine 2.7.1 qt frameafter set the D3d11AppQt as sub widget of other widget (the crash bug will not occure in center widget),and start the engine , unigine will get crash over here.after d...原创 2018-12-19 18:30:34 · 266 阅读 · 0 评论 -
qt space margin layout stretch 空间
使用qt为windows qt5.11 先上图:使用qtlayout 的时候,经常会碰到一些空余空间的问题。margin 表示的是内部内容离容器四周边界的距离,只有四周,内部的控件之间的不算margin,上图中layout默认margin是9个像素。可以看到widget默认的margin 是0,而layout有默认的margin 值四周都为9个像素。而layout内部的元素之间的间隔...原创 2018-12-20 11:26:47 · 1428 阅读 · 0 评论 -
qt qwidget qlabel qbutton 组件 背景图 加 半透颜色 半透效果
使用qt版本 qt5.11.0类似上面的效果。在底图上涂上一层半透的颜色。(一个应用是调色板的半透颜色显示)方案:先用setstylesheet 的border-image绘制背景图,然后再组件的paintevent(QPaintEvent*)中绘制半透颜色。代码如下。class MyLabel:public QLabel{public: MyLabel(QWidg...原创 2018-09-05 17:58:06 · 1548 阅读 · 0 评论