自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (29)
  • 收藏
  • 关注

原创 C++多线程系列(C++11)——条件变量condition_variable(六)

Data 2018/11/13 Add By WJB在客户端显示服务发送的数据时,一般处理方法:首先创建一个deque作为缓存,接受的服务端push进deque中,客户端有一个线程取deque中数据,如图所示。简单的处理代码如下:mutex m_mutex;deque<int> g_deque1;void Function_1(){ int count = ...

2018-11-14 00:10:20 302

原创 引用glew库有些方法在lib库中找不到问题

Data 2018/7/5 by WJB       使用OpenGL半年多了,主要是用QT封装的OpenGL方法,初始化很简单,还有就是学习教程,环境搭建也是跟着教程写的遇到问题比较少,但是需要自己写程序创建初始环境时遇到很多问题。      在引用glew时除了Init方法可以用外所有方法都无法调用,开始怀疑自己的lib有问题,64位和32位不断跟换尝试,但是仍然解决不了,最后在看到我原来教程...

2018-07-05 08:58:19 1088 1

原创 OpenGL透明效果源码(VS2015/x64)

Data 2018/7/4  by WJB知识点:       Blend 混合是将源色和目标色以某种方式混合生成特效的技术。混合常用来绘制透明或半透明的物体。在混合中起关键作用的α值实际上是将源色和目标色按给定比率进行混合,以达到不同程度的透明。α值为0则完全透明,α值为1则完全不透明。混合操作只能在RGBA模式下进行,颜色索引模式下无法指定α值。物体的绘制顺序会影响到OpenGL的混合处理。g...

2018-07-04 13:58:37 625 1

原创 C++ 封装分数类(加减乘除大于小于)

C++ 封装分数类,话少说直接上代码/*****************************************************************************************/fraction.h代码#pragma once#include <iostream>using namespace  std;class fraction{public...

2018-02-08 17:26:02 1989 3

原创 Cesium 修改鼠标样式

cesium 修改鼠标样式

2022-08-02 10:54:14 2038 2

原创 ArcGIS JavaScript for API(007)featurelayer 要素查询,查询指定范围内包含要素featurelayer .queryFeatures。

我们在做系统开发时,经常会遇到,要查询指定范围内包含的要素。原理很简单就是面内包含的要素。arcgis featurelayer 可以实现这个功能。使用到的接口 是featurelayer .queryFeatures(options),返回结果是FeatureSet。我实现了一个 以鼠标点击点为中心,指定为半径范围内包含的要素。layer.queryFeatures({ geometry: geo, // 查询中心点

2022-05-10 10:59:03 1866 4

原创 排序算法 C++实现(4)——堆排序

1,定义堆排序是利用堆这种数据结构而设计的一种排序算法,堆排序是一种选择排序;简单的说,堆是一种完全二叉树,根据父子节点之间的大小关系的不同还可以细分为「大顶堆」和「小顶堆」。大顶堆是指任一节点的值都大于或等于其左右孩子的值,小顶堆是指任一节点的值都小于或等于其左右孩子的值。下图分别是大顶堆和小顶堆的结构。我们以大顶堆为例,演示一下堆排序过程。现在我们有一个待排序数组[2,7,4,3,1,9,5],初始状态是这样的:2,排序过程原理找出最大数值然后放到末尾,次末尾,依次排放.

2022-05-09 18:01:08 665 1

原创 排序算法 C++实现(3)——简单选择排序

1,原理定义 它的基本思想是:第一次从 数组中选取最小值,与arr[0]交换,第二次从剩余的数中选取最小值,与arr[1]|交换,以此类推,得到一个按排序码从小到大排列的有序序列。 优点是数据移动次数减少。2,原理图片展示3,代码实现C++ 代码实现如下:// SimpleSelect.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include<iostream>//测试数组 ...

2022-05-07 18:20:10 592

原创 排序算法 C++实现(2)——shell排序,希尔排序

1,排序原理希尔排序,也称递减增量排序算法,是直接插入排序算法的一种高速而稳定的改进版本。希尔排序是把记录按下标的一定增量分组,对每组使用直接插入排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减至1时,整个文件恰被分成一组,算法便终止。2,原理图3,实现代码:#include "stdafx.h"#include<iostream>//测试数组 正确顺序维 2,3,7,12,15,31,34,45,54,64,86int data[]..

2022-05-06 16:35:14 494 1

原创 排序算法 C++实现(1)——直接插入法

1,基本原理 直接插⼊排序(Straight-Insertion-Sort)是⼀种最简单的排序⽅法,其基本操作是将⼀条记录插⼊到已排好的有序表中,从⽽得到⼀个新的、记录数量增1的有序表。 通俗⼀点的讲,就是把数组中的元素⼀个个取出来,每取出⼀个就组成⼀个有序列表,直到将元素取完为⽌。例如:[20, 9, 14, 15, 30]这样⼀个数组,以升序为例,取第⼀个数时,组成有序列表20;取第⼆个数时,组成有序列表9,20;取第三个数时,组成9,14,20;取第四个数时,组成9,14,15,...

2022-05-06 15:16:33 1112 1

原创 ArcGIS JavaScript for API(006)basemap 提供的不同地图

arcgis 提供了很多在线地图,在创建map是可以直接引用,本篇文章介绍一下,arcgis提供的不同类型的地图。1,basemap 创建代码如下: const map = new Map({ basemap: 底图名称 }); const view2 = new MapView({ container: "view2Div", map: map, });名称 效果 dark-gray

2022-05-06 11:49:58 1228 1

原创 ArcGIS JavaScript for API(005)二三维切换

二三维切换基本思路:创建两个视图器,二维视图器 MapView和三维视图器SceneView; 两个视图器共用一个div容易,两个视图器的container相同,每次只放入一个视图器; 二三维场景切换时 要使用同一个viewpoint信息,确保切换后视点相同;具体代码如下所示:<html> <head> <meta charset="utf-8" /> <meta name="viewport" content="initial

2022-05-06 11:02:41 1460 1

原创 html img 标签,属性 比例不变修改大小

img 标签,首先明确img是单标签不是成对出现的即 <img> 即可。src 属性 就是图片的地址<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content...

2022-04-29 14:40:08 2791 1

原创 ArcGIS JavaScript for API(004)二三维联动 双屏

二三维联动具体思路如下:1,分别创建一个MapView和SceneView 然后分别放入两个div 中,div如何分布看自己的需求、2,通过view.watch()函数监测 鼠标事件,并传给另一个view。3,通过设置viewpoint 保持两个view的同步。具体代码如下:<html> <head> <meta charset="utf-8" /> <meta name="viewport" content="initia

2022-04-27 14:14:23 2089

原创 ArcGIS JavaScript for API(003):geojsonlayer

根据图层名字就可以明白,这类图层数据源就是geojson,即json串格式的地理空间数据,属于矢量数据。有了KML和shp为什么还要geojson呢?也许甲方爸爸只有这个数据,哈哈哈……,不要深究为什么用这个格式,掌握这个技能才是重点!如果手上没有现成的数据可以从这个地址下载,河北省市级面数据,注意:下载需要一个积分,如果没有积分可留言留下邮箱地址,我回尽快发送给您。市级河北省面数据,geojson格式,-Javascript文档类资源-CSDN下载实例代码如下:<!DOCTYP

2022-04-26 16:47:39 2419 3

原创 ArcGIS JavaScript for API(002)弹窗 view 属性Popup

首先创建arcgis api 基础环境,最基础的地图显示,代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initi

2022-04-24 21:44:33 3381

原创 JavaScript 异步 setTimeout promise async await

异步在此就不再赘述,下面主要说一下JS中异步的实现方式。1,setTimeout 计时器 ,实现代码如下<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=

2022-04-22 23:00:07 1471

原创 arcgis与pgSQL发布feature access

Arcgis连接pgsql 发布服务操作系统win10;arcgis 10.6 ;pgsql 9.4 64位;arcgis server 10.4 postgis pg94x64 ArcGIS Server 10.4.1.ecp说明:pgsql必须得用64位,因为arcgis desktop10.6 支持pg 9.4 9.4 9.6 ,arcgis server10.4 支持9.2 9.3 9.4 所以选择了pg9.4正常安装arcgis desktop,arcgis server,pgsql,.

2022-04-20 09:43:44 1169 1

原创 问题记录0001-npm ERR syscall rename errno -4058 解决

npm ERR! code ENOENTnpm ERR! syscall renamenpm ERR! path "user"\AppData\Roaming\npm\node_modules\.staging\js2cp-28011c0d\node_modules\fs-extranpm ERR! dest "user"\AppData\Roaming\npm\node_modules\.staging\fs-extra-d19736e5 npm ERR! errno -4058npm E.

2022-04-02 09:44:31 2433

原创 ArcGIS JavaScript for API(001):加载ArcGISServer MapServer

根据工作需要最近在调研 arcgis api。地图显示:1,基础地图显示 :在创建map时,定义“basemap”,即可显示arcgis预设地图。const map = new Map({ basemap: 'streets-night-vector' });2,加载指定地图服务地图-arcgis server地图源:arcgis server 发布地图网上教程很多,在此不再赘述;加载arcgis server地图功能实现很简单,主要是选对laye

2022-03-29 15:35:12 2682

原创 Cesium001-坐标介绍

1,WGS84经纬度坐标;系统中没有具体的对象。2,WGS84弧度坐标(Cartographic);对象创建:new Cesium.Cartographic(lon,lat,alt);lon:经度,lat:维度,alt:海拔3,笛卡尔空间直角坐标系(Cartesian3);对象创建: new Cesium.Cartesian3(x,y,z);x:x轴坐标,y:y轴坐标,z:z轴坐标4,平面坐标系(Cartesian2);对象创建: new Cesium.Cartesia.

2022-02-11 15:20:05 334 1

原创 1024节日快乐

节日快乐啦啦啦啦啦

2021-10-24 22:43:39 50

原创 VS code 自动调整代码格式

Date 20210802 By WJB使用vscode编写代码时,代码格式调整比较麻烦,多余空格,多余空行等,代码不够美观,可读性差。可以通过vscode 设置(setting)实现代码自动格式化调整。设置过程如下:点击 vscode 软件 左下角设置按钮打开设置界面后,右上角有个转为json的按钮,点击该按钮转为json。在数组中添加"editor.formatOnType":true,"editor.formatOnSave":tr...

2021-08-02 11:39:39 18409 3

原创 vue框架中子组件与父组件之间的通信

Date2021-06-09 By WJBVue框架中强调单向数据流。对于 Vue 来说,组件之间的数据传递具有单向数据流这样的特性。所有的 prop 都使得其父子 prop 之间形成了一个单向下行绑定:父级 prop 的更新会向下流动到子组件中,但是反过来则不行。这样会防止从子 组件意外改变父级组件的状态,从而导致你的应用的数据流向难以理解。额外的,每次父级组件发生更新时,子组件中所有的 prop 都将会刷新为 最新的值。这意味着你不应该在一个子组件内部改变 prop。如果你这样做 了,Vue 会

2021-06-09 11:31:56 460 3

原创 mustache模板引擎-指令 v-html

mustache模板引擎-指令都是以 v-开头。v-for 即循环生成标签。注意:代码中用了vue框架和模板字符,

2021-06-07 19:40:54 130

原创 mustache模板引擎-指令 v-for

Date 2021-06-07mustache模板引擎-指令都是以 v-开头。v-for 即循环生成标签。要注意的是每个标签最好有固定稳定的keyzh

2021-06-07 19:06:30 130

原创 ES6语法糖-模板字符

Date 2021-06-07 By WJB关于语法糖的理解:是指计算机语言中添加的某种语法,这种语法对语言的功能并没有什么影响,但是更方便程序员使用,通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。...

2021-06-07 10:58:30 125

原创 ES6语法糖-速写方法

Date 2021-06-07关于语法糖的理解:是指计算机语言中添加的某种语法,这种语法对语言的功能并没有什么影响,但是更方便程序员使用,通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。...

2021-06-07 10:45:55 121

原创 ES6语法糖-速写属性

关于语法糖的理解:是指计算机语言中添加的某种语法,这种语法对语言的功能并没有什么影响,但是更方便程序员使用,通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。...

2021-06-07 10:21:17 138

原创 Vue-router中对path的误解和说明-path的正确理解。

Date 20210603 By WJB由于工作需要,最近开始学习Vue框架,遇到的第一个问题是关于路由(router)方面的问题。管理路由的解释网上有很多文章

2021-06-03 15:04:58 8272

原创 JavaScript-临时性死区(TDC)-解决变量提升造成的冗余

Date 20201211 By WJB暂时性死区 ( temporal dead zone ): 变量所在作用域开始到变量声明的位置 之间的区域 称为临时性死区。在以前文章《JavaScript-var-变量提升》(https://blog.csdn.net/wangjianbo09/article/details/110931338)...

2020-12-11 10:50:32 781

原创 JavaScript-var-变量提升

DATE 20201209 By WJB变量提升就是作用域中声明的变量在代码预编译时会将所有的变量声明语句提升到最前边。例如index.html<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8"> <title>lesson1</title> </head> <body&..

2020-12-09 18:03:52 843

原创 JavaScript-如何动态导入模块

Data20201209 By WJB模块加载分为静态加载和动态加载。该文章讲解如何动态加载模块,也就是在程序运行过程中,遇到某个操作或者某个事件时加载需要的模块。代买展示1,模块代码md.js export function add(a,b) { return a+b; }2, html文件moduldome.html(1)静态加载<!doctype html><html lang="en"> <head&g

2020-12-09 12:54:32 2731

原创 vcpkg:If you are sure you want to rebuild the above packages, run the command with the --recurse opt

使用vcpkg时编译osgearth时遇到如下问题:If you are sure you want to rebuild the above packages, run the command with the --recurse option;暂时没有解决,希望各位大神指点一下。如果又解决方案会尽快更新。

2020-08-25 17:17:18 1322 3

原创 cvpkg错误记录:msys-pacman-x64-windows-err 已解决

在使用vcpkg时,遇到了关于pacman的错误,错误日志如下: error: failed to init transaction (unable to lock database) error: could not lock database: File exists if you're sure a package manager is not already running, you can remove /var/lib/pacman/db.lck暂时没有找到解决方法,广大码...

2020-08-20 13:06:29 756

原创 C++中回调函数使用详解方法大全

引言:在C++编程,尤其时写Qt程序时,需要大量使用回调函数,在网上也有很多大牛对回调函数的使用进行了讲解,但是很多都是针对某一个或者两个特定的类型的。我在这篇文章中对网上关于回调函数的使用进行了归纳总结,并且对每一种类型的回调函数都写了一个简单的例子来实现,每个例子都可以在vs2015中编译通过,由于使用了C++11的新标准,所以在vc6.0中可能没法直接编译通过。一、普通函数作为回调函数普通函数作为回调函数时,使用普通的函数指针进行传入。例:#include <iostream

2020-07-15 13:54:44 3345

原创 D3D学习笔记(1)—— SO 阶段介绍 AutoDraw使用条件

Date 2020-04-14 Add by WJB D3D10 新特性 流输出(stream out)so阶段。它允许GPU向绑定在管线SO阶段上的顶点缓冲区V写入几何数据。几何着色器输出的顶点都会被写入到V中。...

2020-04-16 16:23:11 300

转载 单精度,双精度和精度(转载)

浮点数是计算机上最常用的数据类型之一,有些语言甚至数值只有浮点型(Perl,Lua同学别跑,说的就是你)。常用的浮点数有双精度和单精度。除此之外,还有一种叫半精度的东东。双精度64位,单精度32位,半精度自然是16位了。半精度是英伟达在2002年搞出来的,双精度和单精度是为了计算,而半精度更多是为了降低数据传输和存储成本。很多场景对于精度要求也没那么高,例如分布式深度学习里面,如果...

2020-03-16 10:29:29 1876

原创 D3D10 截图功能 保存Texture到本地

Date 20200311 By Wjb直接上代码: ID3D10Resource* pScreen; mRenderTargetView->GetResource(&pScreen); D3D10_TEXTURE2D_DESC texDesc; texDesc.ArraySize = 1; texDesc.CPUAccessFlags = 0...

2020-03-11 13:53:32 802 2

原创 C++ 动态加载dll,GetProcAddress用法的一些误解

Date 20200212 By WJB昨天在写代码时,需要动态加载一个dll动态库,在网上找方法,很快就找到了。代码很简单只有几行,但是尝试了很久才成功,主要是在获取接口时,方法名称这个参数理解错误。测试过程:1,首先创建一个动态库。接口如下:extern "C" __declspec(dllexport) int myfunc(int a){ return a;...

2020-02-12 15:26:35 2810

设计模式之 适配器 Adapter C++ 源码

设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,设计模式之 适配器 Adapter C++ 源码 vs2019 工具,

2022-09-22

设计模型之桥接模式 bridge C++实现源码,vs2019

设计模型之桥接模式 bridge C++实现源码,vs2019

2022-09-20

市级河北省面数据,geojson格式,

市级河北省面数据,geojson格式,wgs84坐标,可用于arcgis api 创建geojsonlayer

2022-04-26

arcgis 10.6-pgsql 9.4 64位-arcgis server 10.4-postgis pg94x64

arcgis 10.6 ;pgsql 9.4 64位;arcgis server 10.4  postgis pg94x64 ArcGIS Server 10.4.1.ecp arcgis 10.6 ;pgsql 9.4 64位;arcgis server 10.4  postgis pg94x64 ArcGIS Server 10.4.1.ecp arcgis 10.6 ;pgsql 9.4 64位;arcgis server 10.4  postgis pg94x64 ArcGIS Server 10.4.1.ecp 文章中有下载地址和提取码,本人亲自试验,绝对有效,如安装失败请留样联系

2022-04-20

osgEarth用户手册.pdf

该文档是osgearth入门文档,从编译开始,到每个模块的使用,是osgearth入门的很好的一个文档。

2020-09-01

callbacktest.zip

与《C++回调函数使用大全》文章对应,是该文章例子的代码。每一种用法一个类,一共七种用法,callbackone 到 callbackseven。

2020-07-15

SaveTextureToFile.zip

该程序演示了如何保存d3d后台绘制结果,类似于截图功能,以DDS文件保存。

2020-03-11

MyExamples.zip

该资源包括两个项目,一个是dll动态库代码,另一个是动态加载dll库的测试代码。这是工程没有解决方案,自己创建一个解决方案在手动加入这两个项目即可。

2020-02-12

release.rar

vs2015 Qribbon动态库,release和debug。附加实例程序,一个简单程序,测试库的可用性。另一个全接口程序,可以开发时借鉴。 如果想要其他版本的动态库可以留言

2019-07-26

Rain_Example.rar

该程序是vs2015 32位的工程,主要是应用了glut辅助库。该程序用固定管线实现了下雨和雾的效果。

2019-07-22

BuildAll.rar

该实例展示如何引用glew源码,编译在不同vs版本之间的移植。

2019-07-19

qt二维地图 qt图像显示框架

在线下载Google地图 影像 矢量切片和地形晕眩图,实时显示,如果下载后编译无法通过,请项目中的文件移除后重新添加,VS2015+qt591

2019-03-22

单例实现源码singleton-C++

实现了单例模型。 vs2015的工程

2019-02-26

颜色拾取器

该程序可以拾取鼠标点的颜色,该程序可以拾取鼠标点的颜色,

2018-09-06

一个实例告诉你什么是封装继承和多态二

该实例我是一篇文章的源代码,解释了什么是封装继承和多态,地址https://blog.csdn.net/wangjianbo09/article/details/82222807

2018-08-30

一个实例告诉你什么是封装继承和多态

该实例我是一篇文章的源代码,解释了什么是封装继承和多态,地址https://blog.csdn.net/wangjianbo09/article/details/82222807

2018-08-30

OpenGL透明效果源码

VS2015/x64演示了OpenGL透明效果,本实例是三维实体绘制透明演示

2018-07-04

openglVOB三角形

opengl通过vob模式绘制三角形opengl通过vob模式绘制三角形

2018-04-21

opengl纹理贴图源码

VA模式实现纹理贴图源码VA模式实现纹理贴图源码VA模式实现纹理贴图源码VA模式实现纹理贴图源码VA模式实现纹理贴图源码

2018-04-11

OpenglVA模式绘制三角形

OpenglVA模式绘制三角形,解压时请要去掉文件夹名字中的空格

2018-04-08

windows API编写OpenGL窗体源码

调用微软的接口编写opengl窗体调用微软的接口编写opengl窗体调用微软的接口编写opengl窗体调用微软的接口编写opengl窗体

2018-04-08

openGLVBO模式绘制三角形源码

openGLVBO模式绘制三角形,窗体用微软的接口直接绘制的

2018-03-08

C++使用SQLite实例

程序展示用C++使用轻量级数据库Sqlite,展示了数据的创建,表的创建,数据储存

2018-02-25

MD5C++源码MD5C++源码

MD5C++源码,测试代码,说明了如何对象文件和字符串的区别MD5C++源码,测试代码,说明了如何对象文件和字符串的区别

2018-02-25

C++生成随机数

用C++可以生成任意区间的整数,小数的生成功能没有开发,网友可以自己做

2018-02-06

QT 子窗体透明源码

可以将一个子窗体设置为透明,隐藏菜单,可以任意拖动可以将一个子窗体设置为透明,隐藏菜单,可以任意拖动

2018-02-06

opengl基本元素绘制

用微软接口编写窗体,没有引入其他库,va模式下点,线,三角形,多边形的各种形式的绘制

2018-02-05

opengl绘制天空盒子素材PMB

opengl绘制天空盒子素材PMB,上下左右前后六中BMP图片

2018-01-23

OPENGL窗体源码

直接调用Windows借口创建OPenGL窗体,不需要其他库,直接调用Windows借口创建OPenGL窗体,不需要其他库,

2018-01-07

随机整数生成器

可以生成指定范围内制定个数的随机数,暂时不支持小数

2018-01-05

时间戳转换器

时间戳和本地时间互相转换,实时显示本地时间和时间戳

2018-01-04

空空如也

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

TA关注的人

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