自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

那又怎样的博客

脚踏实地才能仰望星空

  • 博客(125)
  • 收藏
  • 关注

原创 Osg行星轨道鼠标获取事件

要求:星球轨道默认隐藏,鼠标点击某星球,显示该星球轨道;点击空白处隐藏所有轨道;点击其他星球隐藏当前轨道,显示新选中星球轨道。实际效果:核心代码://对象选取事件处理器void CPickHander::pick(osg::ref_ptr<osgViewer::View> view, float x, float y){ osg::ref_ptr<osg::Node> rpNode = new osg::Node(); osg::ref_ptr<osg

2021-04-14 02:18:41 710

原创 osg绘制球体

Osg有一些基本图元,如图那么如何利用基本图元画球呢?最主要的是如何求出球的表面顶点坐标呢?可以参考这篇文章https://blog.csdn.net/majing19921103/article/details/45017547这篇文章里参数坐标转换为三维坐标是正确的,但是后面画球有点乱了,上极点和下极点不一样然后自己实现了下画球,不过参数坐标转三维坐标是基于上面文章的核心代码://参数坐标(u, v)转化为三维坐标(x, y, z)osg::Vec3 CTestBall::getVe

2021-04-09 23:52:43 2044 1

原创 Osg项目搭建的注意事项

一、测试环境是否搭建成功最近搭建Osg环境,这个编译速度真是蛋疼,如何搭建Osg环境大家网上一搜就行了,搭建好后,命令行输入这些命令如果显示正常就说明环境搭建好了1:osgversion显示版本信息2:osgviewer cow.osg显示小牛模型3:osglogo显示osg的logo二、配置项目新建控制台项目,设置三个地方:1:项目-属性-VC++ - 包含目录(cmake configure时CMAKE_INSTALL_PREFIX的include路径)//我当时搭建环境弄乱

2021-04-08 23:02:30 434

原创 Qt基础

一些小问题:1:公司是vs开发qt,qt的ui拖控件,然后vs输入ui不会提示,需要右击.ui文件编译tips2:可以右键通过git,vs code到当前目录,cmd或者powershell的话,按住shift然后鼠标右键,就可以看到在此处打开powershell窗口,发布程序很方便3:Qt4在Vs上qDebug会乱码//头文件#include <QTextCodec>//main函数里 QApplication a(argc, argv); //解决vs控制台输出中文

2021-03-31 22:04:46 427

原创 ExcelDataReader读取Excel

本篇主要讲如何读取Excel文件并且上传到数据库SqlServer,首先准备data.xlsx文件,我就随便新建一个表格data.xlsx,里面有person和time两张工作表:新建数据库Demo_UploadExcel,然后新建两张表person和data那么如何读取Excel文件中person和time两张表呢?要引用NuGet包:ExcelDataReader和ExcelDataR...

2019-10-29 20:44:04 8556 2

原创 9父子组件之间通讯

1:父组件传给子组件1) 父组件给子组件传值步骤如下:a. 父组件调用子组件时传入数据比如定义两个组件home和head,父组件home里定义数据str,home组件调用head组件时:<app-head [data]="str"></app-head>b. 子组件引入input模块import { Component, OnInit,Input} from...

2019-10-11 21:22:39 225

原创 C#多线程

1:通过委托启动线程(委托的BeginInvoke和EndInvoke方法)提到委托,就要用常见的泛型委托Action和Func了Action委托:是泛型的,有参数没有返回值,<>内参数类型就是方法里的参数类型Func委托:也是泛型的,有参数有返回值,<>中前面是方法的参数类型,最后一个是返回值类型使用这两个泛型委托,就不用自己去定义,很方便。首先定义一个方法...

2019-09-25 22:41:46 309

原创 C#知识补充(反射和特性)

1:元数据有关程序及其类型的数据即为元数据,被保存在程序的程序集中。那么什么叫反射呢?程序在运行的时候,可以查看其它程序集或者自己本身的元数据,这个行为称之为反射。要获取程序中元数据,可以用抽象类Type2:Type抽象类每个类都对应一个Type对象,这个Type对象保存了该类的方法,字段和属性等,比如定义一个类myClass,有方法:fun1,fun2私有字段:id,age公有字...

2019-09-24 22:17:18 265

原创 8Angular中Dom操作:ViewChild,实现CSS3动画

1:ngAfterViewInit       通过原生JS获取dom都是在dom加载完成后获取,Angular中也一样,那么Angular中在哪里获取呢?应该在ngAfterViewInit里操作,关于详细信息可以看官方文档Angular生命周期函数,在ngOnInit里获取有时会失败的,不妨测试一下。 &nbs...

2019-09-15 10:26:52 696

原创 7搜索历史记录和ToDoList的数据持久化的实现

c

2019-08-31 18:14:59 374

原创 6服务

Angular中组件之间是无法相互调用方法的,比如root组件调用search组件和toDoList组件,在toDoList组件里定义一个方法: fun() { alert("调用toDoList组件里的方法"); }然后在三个组件的html里分别定义按钮事件绑定该方法,会发现只有toDoList组件可以调用 那么如果要定义公共的方法怎么办呢?那就可以定义服务了。1:创...

2019-08-30 20:15:10 182

原创 5双向数据绑定

Angula中双向数据绑定只适用于表单,即视图改变会影响模型,模型改变会影响视图。要想使用双向数据绑定,首先要在app.module.ts里引入FormsModuleimport {FormsModule} from "@angular/forms";引入后还要在@NgModule的imports里声明FormsModule然后就可以使用了,比如<input type="text"...

2019-08-25 10:22:32 184

原创 3数据绑定

1)在component.ts的OnInit里声明变量,在component.html里通过{{}}使用比如在head组件里定义数据,在head.component.ts文件的OnInit方法里定义:i="我是数据"; //不用写var然后在head.component.html里使用即可{{i}} 2)在component.html里通过标签属性title使用静态数据<div ...

2019-08-20 22:36:48 164

原创 4常用指令

1)循环遍历*ngFor后台数据:arr:any[]=["Angular",2019,true,"typeScript"]前台:<ol> <li *ngFor="let i of arr"> {{i}} </li></ol>2)ngClass<!--将gray设为false,green设为true,那么c...

2019-08-20 21:46:57 156

原创 教你彻底禁用Win10自动更新

Win10之前用着挺好的,有时候忽然特别卡,本来c盘还好,突然c盘空间极速缩小,都是自动更新那个鬼惹的祸,更新没屁用,还卡的要死,又占空间,所以想方设法一定要彻底关闭自动更新,最终解决办法如下:一共分为两大步:一:禁用Windows Update服务1:Win+R,输入services.msc回车2:找到Windows Update服务,常规选项卡里选择禁用,恢复选项里这样设置:光这...

2019-08-18 16:09:34 2780 1

原创 2Angular项目文件以及组件

一、项目文件结构创建好Angular项目后,用VS打开项目文件夹,文件目录是这样的目前只用关注这些文件就好: 1:package.json 配置文件 2:src/app 根组件,根模块 3:src/assets 静态资源文件 4:index.html html入口文件 5:main.ts 整个项目的入口 6:style.css 公共样式文件 7:test.ts 测试入口文件...

2019-08-17 17:32:19 329

原创 1、Angular8环境搭建以及项目创建

前段时间要求学习Angular,想着先学Angular JS,很老的,被说现在8都出来了,于是赶紧学8,Angular1和2变化比较大,后面就比较稳定了,那就学新的吧,在公司学习,记下笔记然后回家再整理,方便巩固和复习一:环境1:安装node.js建议安装最新的稳定版本安装好node.js后,cmd里执行 node -v 可以看到安装的版本,node.js安装好后,会自动安装npm,...

2019-08-15 21:11:30 5075

原创 Git常用操作

一:常用命令;1:配置用户名和邮箱(注意有两个"-")git config --global user.name “Lanbo”git config --global user.email "[email protected]"2:查看是否配置成功git config --list二:创建仓库(本地仓库)1:初始化一个空的仓库Git (比如在E盘创建一个Git目录,专门用来存放项目的,在里面新...

2019-08-14 19:39:34 172

原创 ajax动态append的元素添加事件

由于Deom中需要条件查询,比如根据供应商查询当前仓库中的货物,首先点击下拉菜单,给这个下拉菜单Append按钮,有多少个数据库中有多少个供应商就动态添加多少个按钮那么动态添加的元素,怎么给他加事件呢?这样写://动态生成的元素,使用.on绑定事件$(document).on("click", ".mybtn-supplier", function () { for (var ...

2019-08-02 15:50:55 848

原创 前台传值到后台联动数据库,然后前台获取后台List并遍历显示

到今天终于从0完整的完成了仓库管系统了,可以联动数据库进行增删改查,以及首页登录界面可以注册用户登录用户,检查用户名密码格式是否正确,是否匹配。期间遇到的主要问题是传值,比如前台用户点击按钮查询当前所有用户信息,响应按钮消息后台连接数据库查询当前所有用户信息,由于可能是多条记录,所以用List存储,可以定义一个类C_MyUser存储用户信息,然后返回List<C_MyUser>到前台...

2019-07-31 10:53:26 1102 1

原创 同时使用JQuery和JS

在引用JQuery时,想同时保留JS,就要注意写法了,之前在.Net MVC项目中需要用ajax,需要用JQuery,但是文件中已经写了JS,如果直接在头部加上src是不行的@*无语,要使用ajax需要用到JQuery,但是之前写的js就失效了*@ <script src="https://code.jquery.com/jquery-1.11.3.js"> @*&l...

2019-07-26 13:05:53 2482

原创 ViewData、ViewBag和TempData

控制器和视图之间数据传值,比较常用的,除了Session,还有ViewData和ViewBag,通常都是在控制器中写入值然后在视图中读取值 /*1:ViewData * 字典集合数据,可以存放任意类型的数据,使用时强制类型转换 *2:ViewBag * dynamic类型数据 */ ...

2019-07-26 10:14:14 263

原创 ASP.Net MVC视图间的跳转

发现一个贼坑的地方,比如添加Home控制器,然后在views的home文件夹里添加Index视图和Second视图,在Index视图里想要通过超链接跳转到Second视图,需要这样写:<a href="/Home/second">点击跳转1</a>@*这么写ok*@成功注意!!!!这样写就不行<a href="~/Views/Home/second.csh...

2019-07-23 15:36:47 4791

原创 ADO.Net实现连接数据库增删改查

一般ADO.Net连接数据库的基本步骤如下://数据库连接一般分为两种:1.Windwos身份验证登录;2.Sql Server身份验证登录 /*步骤: * 1:using System.Data.SqlClient;//引入命名空间 * 2:声明连接数据库字符串 * 3:创建SqlConnec...

2019-07-23 12:38:05 1395

原创 第一个ASP.Net MVC程序

关于ASP.Net MVC介绍可以去菜鸟教程,这些基本的概念里面都有,下面就简单介绍一下VS2017如何创建一个ASP.Net MVC项目;首先文件-新建-项目,然后找到下面图片中的选项点击确定,在弹出来的向导中选择空项目,勾选MVC,然后点击确定MVC,即Model(模型:应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据);View(视图:应用程序中处理数据...

2019-07-22 16:06:15 142

原创 Sql:聚合函数、排序与分组、联合查询、外键约束、子查询

-- 一:常用聚合函数--1:sum 对与null默认为0select sum(age) from mytesttable002--2:max和minselect max(age) from mytesttable002select min(age) from mytesttable002--3:avg 不统计null,比如a,b,c三个人,c的成绩为null,则只统计a,b的su...

2019-07-10 17:18:06 285

原创 Sql基础语句

--这是Sql语句的注释--1:创建数据库create database mytest001--2:删除数据库--drop database mytest001--3:创建数据表--drop table mytesttable001--使用use [数据库名],执行后那么后续的操作都是在该数据库下进行的use mytest001create table mytesttable0...

2019-07-10 13:19:08 181

转载 反编译器

转自:https://blog.csdn.net/kongwei521/article/details/54927689

2019-07-10 10:14:38 515

原创 递归、递归算法的非递归优化

就以斐波那契数列为例,当时面试时问到了,很简单的题,问转化为非递归如何做,居然一时紧张没回答上来,太丢人了using System;namespace 练习{ class test { //斐波那契数列:1 1 2 3 5 8 13 21 34... //递归 public int f(int n) { ...

2019-07-10 09:58:01 733

原创 C#一个小练习

using System.Collections.Generic;using System;namespace CSharp入门经典Exercises{ class Exercise1 { /*4.一个牧场目前一共有20头刚出生的羊,母羊、公羊各一半。假如母羊5岁时后每年生一胎,公羊,母羊 * 按顺序出生。羊活到10岁后死亡。请问20年后这个...

2019-07-08 10:15:37 604

原创 C#学习笔记(Winform)

1:窗体的HelpButton属性HelpButton即是否显示帮助按钮,该属性不能和最小化,最大化这两个属性同时使用,如果仅仅是将HelpButton属性设为true,运行程序是看不到效果的,因为其遮住了HelpButton,必须将最小化和最大化都设置为false才行2:禁止用户改变窗体大小可以将窗体最大和最小的数值设置为一致...

2019-07-03 17:15:26 775

原创 C#学习笔记(控制台)

这篇笔记主要是记录在慕课网学习C#过程中遇到的一些细节,值得记录的,和C++还是有点区别的,虽然大体思想都一样的,用来方便自己复习知识,如果能帮到一些读者,就更好了

2019-06-26 09:12:13 246

原创 std::ref

thread构造函数中,第一个为可调用对象,后面的是可变数量的参数(类似于标准库bind函数),这种函数的参数都是值传递的,可以验证# include<iostream># include<thread>using namespace std;class C{public: C(const int&c):x(c) { cout <&lt...

2019-05-03 10:18:35 1446 1

原创 C++11多线程注意事项以及detach中的坑

多线程编程是必须要掌握的,以前多线程基本是靠系统API或者第三方库完成的,比如windows的API函数CreateThread,linux创建线程函数pthread_create,但是这样编写的代码不可移植,不能跨平台,比如windows的多线程程序拿到linux下是跑不起来的,相反也一样,很不方便,然而C++11语言本身支持多线程,和平台无关,下面就来简单认识多线程# include<...

2019-05-02 15:11:43 14274 8

原创 简单的makefile文件编写

习惯了windows下ide创建工程已经代码的编写,然后一键运行,很简单,因为很多事ide都帮我们做了,但是linux下不一样,需要手动编译,执行一条条的命令,一般工程都是由于很多文件组成的,比如c++有很多.h和.cpp文件,难道编译的话需要我们一个一个手动编译?比如这样:g++ main.cpp fun1.cpp fun2.cpp -o main如果有几百个几千个呢?在终端敲命令岂不是累...

2019-04-30 17:23:35 10284 2

原创 个人感觉ubuntu最好用的版本

好像最新版本的ubuntu Desktop是19的,下载了装上试了下,各种蛋疼,就算安装了vmware tools也不能将主机和虚拟机相互复制文件,而且系统还卡的要死,以为自己哪里出错了,各种尝试,均不行,后来重装18版本的,没有任何问题,也非常流畅,以前用的是14的,现在感觉18是做好用的一款,不过一般系统里都没有g++,vim需要手动安装linux系统,给人感觉就是轻便,快速(当然是建立...

2019-04-30 14:39:06 45540

原创 图像的旋转

图像的选装,按照指定中心点逆时针旋转b角度,这个稍微有点麻烦具体实现起来相比较而言有一点麻烦,不着急,一步一步来,首先需要将像素矩阵中第i行j列元素坐标(i,j)转化为坐标系坐标(x0,y0)同理坐标系坐标转化为i,j坐标,可以定义两个函数来转换//可以自己定义一个坐标结构体变量# define PI 3.1415926//近似πtypedef struct _coor{ fl...

2019-04-26 15:30:57 1901 1

原创 图像的放大

根据书上理论基础图像放大,比如原来是3*3的图像,水平放大2倍,垂直放大2倍,那么原来的一个像素对应的在新图像中的4个像素,如图那么相应的新,旧坐标对应如下://原坐标(x0,y0)->新坐标(x1,y1) int x0 = i; int y0 = j; int x1 = kx*i + ix; int y1 = ky*j + iy;然后算...

2019-04-26 12:20:33 1888

原创 Win32API中位图像素位的格式

毕设是关于图像处理方向的,不管以后用不用得到,反正碰到了,就认真做吧,说简单点,无非就是特效显示,和对位图像素位进行操作比如图片的水平镜像,先说说像素吧,位图都是由一个个像素点组成的,比如一张图片大小为556*300,那么加载位图时,得到的宽为556,高为300,用API函数GetBitmapBits可以获取像素位,不过需要值得注意的是,可以用BYTE *一维数组接收像素,在内存中是这样的...

2019-04-25 22:19:36 721

原创 图像处理:Robert边缘检测算子

事情比较多比较杂,早点把学校的事弄完吧,好久没写博客了,最近计算机前沿这门课,老师要布置课题,大部分是Verilog HDL程序设计,脑壳疼,硬件太烦,不过还好,可以选择其他方向的哈哈,api学习还是有必要的,不必造轮子,不过,要有造轮子的能力,具体分的课题是边缘检测算法的Robert算子书上只是给个函数,可以理解为伪代码,具体实现,还是要自己去动手的,书上只是给个思路而已:核心就是...

2018-11-26 14:49:30 6516 8

空空如也

空空如也

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

TA关注的人

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