- 博客(88)
- 资源 (29)
- 收藏
- 关注
原创 Ubuntu16.04安装LSD-SLAM
Ubuntu16.04安装LSD-SLAM的过程、注意事项以及可能出现的错误:LSD-SLAM官网:https://vision.in.tum.de/research/vslam/lsdslamLSD-SLAM Github:https://github.com/tum-vision/lsd_slam安装LSD-SLAM之前,必须先安装ROS kinetic,可以参考:
2017-11-25 18:44:00
14737
11
原创 Ubuntu14.04安装LSD-SLAM
Ubuntu14.04安装LSD-SLAM的过程、注意事项以及可能出现的错误:LSD-SLAM官网:https://vision.in.tum.de/research/vslam/lsdslamLSD-SLAM Github:https://github.com/tum-vision/lsd_slam安装LSD-SLAM之前,必须先安装ROS indigo,可以参考
2017-11-25 16:25:41
4827
1
原创 Ubuntu16.04安装ROS kinetic
ROS kinetic官网:http://wiki.ros.org/kinetic/Installation/Ubuntu1. 配置Ubuntu的资源库:"restricted","universe"和"multiverse"。一般情况是不用配置的,参考下图红色框部分。如果没有配置,可以参考Ubuntu官网:点击打开链接2. 设置Ubuntu的sources
2017-11-25 16:05:35
58852
23
原创 Ubuntu14.04安装ROS indigo
ROS indigo官网:http://wiki.ros.org/indigo/Installation/Ubuntu1. 配置Ubuntu的资源库:"restricted","universe"和"multiverse"。一般情况是不用配置的,参考下图红色框部分。如果没有配置,可以参考Ubuntu官网:点击打开链接2. 设置Ubuntu的sources.l
2017-11-25 15:07:33
4718
原创 Clang-Format格式化选项介绍
Clang-Format可用于格式化(排版)多种不同语言的代码,其自带的排版格式主要有:LLVM, Google, Chromium, Mozilla, WebKit。 如果你使用Visual Studio Code编写代码(本人当前用来编写C++),VSCode的C/C++插件自带了Clang-Format格式化工具,不仅拥有上述5种排版格式,还定义了自己的Visual Stud
2017-10-26 19:48:55
102965
7
原创 Win10安装Ubuntu双系统导致Win10时间有问题
1. 解决方法:timedatectl set-local-rtc true2. 原因分析:① 每次从Ubuntu切换会win10,win10的时间都会出错,并且都是与实际时间相差8小时(这是由于Win10设置的是中国时区),其实win10显示的时间是utc时间。② win10使用rtc时间,Ubuntu默认使用utc时间。③ 从bios读出来的时间,win10认为该时间就是实
2017-10-09 19:48:41
2655
原创 NTP服务器同步本地时间(WinForm)
WinForm实现从NTP服务器自动同步本地时间,并且能够自动检测计算机设置的时区是否为中国,若不是,则提示是否更改时区。并且可以相关设置,实现一键式自动同步本地时间。1. 主界面:2. 单击右侧的【扩展】按钮,显示日志栏;再次单击右侧的【扩展】按钮,隐藏日志栏:3. 单击【获取】按钮,获取本地时间、系统时间和网络时间:4. 单击【同步】按钮,同步本地时间,
2017-10-04 20:56:55
4590
原创 C#修改Windows时区
1. 修改时区的Windows API// 针对于旧Windows系统,如Windows XP[DllImport("kernel32.dll", CharSet = CharSet.Auto)]public static extern int GetTimeZoneInformation(ref TimeZoneInformation lpTimeZoneInformation);[
2017-10-04 20:30:37
3766
原创 C#修改Windows系统时间
1. 修改系统时间的Windows API[DllImport("Kernel32.dll")]public static extern void GetLocalTime(ref SystemTime lpSystemTime);[DllImport("Kernel32.dll")]public static extern bool SetLocalTime(ref SystemTi
2017-10-04 19:50:40
14492
原创 提升进程/程序权限(C#)
对于一个进程或程序而言,有时我们需要提升其权限,从而实现一些特殊的功能。如:① 当调用Windows API实现修改系统时间的功能,必须以管理员身份运行程序才能修改时间,那么是否有方法可以不以管理员身份运行也能成功修改时间?② 当调用Windows API实现修改时区的功能,即使以管理员身份运行,也无法修改时区,那么如何才能成功修改时区?通过Windows提供的一组API,我们可以提升
2017-10-04 19:21:08
8034
2
原创 从NTP服务器获取时间(C#)
从NTP服务器可以获取准确的时间,常常被用于校准本地时间。子丰采用阿里的NTP服务器ntp1.aliyun.com进行介绍,需要注意的是从NTP服务器获得的时间是UTC时间,其与中国时区相差8个小时(北京时间 = UTC时间 + 8小时)。 在C#中可以使用DateTime的成员函数ToLocalTime()自动将UTC时间转换为本地时间(根据本地计算机设置的时区不同,其转换得到的
2017-10-04 19:01:56
13393
原创 BFPRT算法
BFPRT算法:从n个元素中选出第k小或第k大的元素,同时也能选出前k小或前k大的所有元素。时间复杂度:最坏情况的时间复杂度是O(n)
2017-08-11 21:48:04
3274
1
原创 Winform操作App.config(增加、修改、删除、读取等)
1. 操作App.config需要添加引用System.Configuration,并且在程序中using System.Configuration。2. 添加键为keyName、值为keyValue的项:public void addItem(string keyName, string keyValue){ //添加配置文件的项,键为keyName,值为keyValue
2017-03-06 20:13:17
17558
3
原创 Winform打开和关闭控制台
通过调用系统API实现打开和关闭控制台:// 启动控制台[DllImport("kernel32.dll", CharSet = CharSet.Auto)]public static extern bool AllocConsole();// 释放控制台[DllImport("kernel32.dll", CharSet = CharSet.Auto)]public static
2017-01-11 14:57:50
4948
原创 Winform最小化到托盘
1. 添加控件NotifyIcon(1)属性Icon:托盘图标。该属性必须要设置,否则无法显示托盘图标。(2)属性Text:鼠标放在托盘图标上显示的文字。(3)属性Visible:可以一直设为True,即程序运行之后就一直显示托盘图标;也可以在程序最小化到托盘时才显示托盘图标,即程序没有最小化到托盘时设为False,最小化到托盘时设为True。(4)窗口的FormClosing事件
2017-01-10 19:51:10
4455
1
原创 C#获取打印机名
1. 获取所有打印机名foreach(string printer in System.Drawing.Printing.PrinterSettings.InstalledPrinters){ listBox1.Items.Add(printer);}2. 获取默认打印机名label1.Text = (new System.Drawing.Printing.PrintDocum
2017-01-10 19:16:34
3691
原创 C#导出数据表为Excel文件
博文以导出Access数据库中的数据表为例,只要修改一下同样可以用于SQL Server数据库。string filePath = "F:\\Book.xls";string OleDbConnectionString = "Provider = Microsoft.ACE.OLEDB.12.0;Data Source = .\\Data\\Student.accdb;Jet OLEDB:D
2017-01-10 17:46:18
1904
原创 C#创建Access数据库和数据表
1. 创建Access数据库ADOX.Catalog catalog = new ADOX.Catalog();//创建Library数据库catalog.Create("Provider = Microsoft.ACE.OLEDB.12.0;Data Source = .\\Data\\Student.accdb;Jet OLEDB:Database Password = 123456"
2017-01-10 15:41:16
7898
原创 ZXing生成和读取条形码二维码(C#)
程序下载:点击打开链接http://download.youkuaiyun.com/detail/softimite_zifeng/97337901. 条形码生成://设置条形码规格EncodingOptions encodeOption = new EncodingOptions();//设置宽和高encodeOption.Height = 130;encodeOption.Widt
2017-01-10 15:20:43
8183
2
原创 Winform图片动画
Winform的PictureBox中的图片实现类似ppt的棋盘的动画效果:程序下载:点击打开链接http://download.youkuaiyun.com/detail/softimite_zifeng/97327791. 将图片等比例缩放,然后在绑定到PictureBox的Image中。注:必须要先将图片等比例缩放,不能只是简单地把PictureBox的SizeMode属性设置为
2017-01-09 16:10:36
1268
原创 Winform遍历窗口的所有控件(两种方式)
博文主要以下图中的控件来比较这两种方式获取控件的方式:1. 最简单的方式:private void GetControls1(Control fatherControl){ Control.ControlCollection sonControls = fatherControl.Controls; //遍历所有控件 foreach (Control contro
2017-01-09 15:04:11
30967
1
原创 百度翻译API(C#)
使用百度翻译API能够实现多种不同语言之间的自动翻译。首先,需要到百度翻译API的官网申请appid和密钥,只要你有邮箱和手机号就能申请到。注:子丰给出的程序中的appid和密钥都是随便写的,因此,程序下载之后必须要将这两项修改为你申请到的appid和密钥。百度翻译开放平台:点击打开链接程序下载:点击打开链接http://download.youkuaiyun.com/detail/s
2017-01-09 14:23:13
6005
原创 等比例缩放图片(C#)
在使用图片的过程中,我们有时候需要将图片缩放到特定的宽度和高度,但是又不希望图片被直接拉伸而变形,而是实现图片的等比例缩放。类似于Winform的PictureBox的SizeMode属性的Zoom,而不是StretchImage。//等比例缩放图片private Bitmap ZoomImage(Bitmap bitmap, int destHeight, int destWidth){
2017-01-09 13:24:34
22645
原创 Winform的Panel绘制边框
给Panel绘制边框能够达到一定的美感,这其实很简单,只需要编写Paint事件即可。private void panel1_Paint(object sender, PaintEventArgs e){ //使用红色虚线绘制边框 Pen pen1 = new Pen(Color.Red, 1); pen1.DashStyle = System.Drawing.Draw
2017-01-08 21:48:50
21209
3
原创 Winform的TextBox实现明文和密文的切换
Winform只需要将TextBox的PasswordChar属性设置为一个特殊字符,即可用于输入密码。但是,当用户输入了错误的密码时,删除所有的输入,再次重新输入就会显得有点麻烦,而且可能还会输错。因此,需要提供一种方式供用户查看自己输入的内容到底是什么。比如,密码框的右边有一个复选框,当勾选该复选框时就显示用户的输入(明文),否则显示为密码;或者,密码框的右侧有一个类似眼睛的图标,当鼠标停留在
2017-01-08 21:34:43
17891
6
原创 绘制个性书籍标签以及保存或打印标签(C#)
书籍的标签被经常来管理图书,为每一本书籍都贴上一个标签,既方便查阅书籍,又方便管理书籍。本博文介绍的程序主要实现以下3个功能:1. 绘制书籍标签2. 保存标签为图片3. 打印标签程序下载:点击打开链接http://download.youkuaiyun.com/detail/softimite_zifeng/97321621. 绘制书籍标签。标签上有书籍的标题、作者、出版社、ISB
2017-01-08 20:49:02
1754
1
原创 Winform自定义MessageBox
在使用Winform的MessageBox作为消息提示时,会有一些不方便的地方。如,MessageBox消息框弹出之后,如果不关闭就会阻塞函数的继续执行;不能自动关闭等。因此,子丰就自己仿照MessageBox的样式写了一个InformationBox提示框,可以实现自动关闭、永远显示在所有窗口的最上方等。首先,贴出几张图片展示一下InformationBox的效果;然后,具体介绍Informat
2017-01-08 14:37:12
9899
原创 C#的Winform多语言实现(API翻译)
调用百度翻译API实现Winform多语言切换,本博文提供的代码可以实现简体中文、繁体中文、英文的切换。如果需要增加其它语言的切换,只需要调用API将其翻译为想要的语言 即可。 并且,当修改了语言之后,会更新所有打开的窗口。 调用API翻译可以省去人工翻译的麻烦,但是却会带来翻译不准确的问题,而且会有一定的延迟,每次切换语言都需要 等待一段时间。因此,建议将API实现方式与XML实
2017-01-07 21:15:16
5137
原创 C#的Winform多语言实现(resx文件)
使用resx文件实现Winform多语言切换,本博文提供的代码可以实现简体中文、繁体中文、英文的切换。如果需要增加其它语言的切换,只需要编写相应的语言的resx文件即可。 并且,当修改了语言之后,会更新所有打开的窗口。先贴几张图展示一下效果。程序下载:点击打开链接http://download.youkuaiyun.com/detail/softimite_zifeng/97315751. 简
2017-01-07 20:49:26
24190
15
原创 C#的Winform多语言实现(XML文件)
使用XML文件实现Winform多语言切换,本博文提供的代码可以实现简体中文、繁体中文、英文的切换。如果需要增加其它语言的切换,只需要编写相应的语言的XML文件即可。 并且,当修改了语言之后,会更新所有打开的窗口。先贴几张图展示一下效果。程序下载1:点击打开链接http://download.youkuaiyun.com/detail/softimite_zifeng/9731573程序下载2
2017-01-07 20:24:27
7031
3
原创 排序算法——基数排序
基数排序不需要进行关键字的比较,而是通过“分配”和“收集”过程来实现排序的,是一种借助多关键字排序的思想对单关键字排序的方法。它通过比较关键字不同位上的字符的大小进行排序,每一趟排序过程并不产生有序区,也就是说在最后一趟排序结束前,所有元素并不一定都归位了。基数排序分为最低位优先(LSD)和最高位优先(MSD)。本博文只介绍最低位优先(LSD),不过,只要理解了最低位优先(LSD),那么最高位优先
2016-12-23 17:04:37
1654
原创 排序算法——归并排序
归并排序是多次将两个或两个以上的有序表合并为一个新的有序表。最简单的归并是二路归并,即将两个有序表合并为一个有序表。二路归并排序的基本思想是:将R[0..n-1]看作是n个长度为1的有序子表,然后进行两两二路归并,得到[n/2](对n/2取整数)个长度为2(最后一个子表的长度可能小于2)的有序子表;再次进行两两二路归并,得到[n/4]个长度为4(最后一个子表的长度可能小于4)的有序子表,...,直
2016-12-23 17:00:39
313
原创 排序算法——选择排序
选择排序的基本思想:每一趟从待排序的元素中选出关键字最小(或最大)的元素,顺序放在已排好序的子表里,直到全部元素排序完毕。1. 直接选择排序/** * 选择排序 * * 算法:直接选择排序(Straight Select Sort) * 输入:待排序元素的数组,待排序元素个数 * 输出: * 原理:第i趟排序开始时,当前有序区为R[0..i-1],无序区为R[i..n-
2016-12-23 16:59:00
324
原创 排序算法——交换排序
交换排序的基本思想:两两比较待排序元素的关键字,发现两个元素的次序相反时则进行交换,直到没有反序的元素为止。1. 冒泡排序/** * 交换排序 * * 算法:冒泡排序(Bubble Sort) * 输入:待排序元素的数组,待排序元素个数 * 输出: * 原理:通过无序区中相邻元素间关键字的比较和位置的交换,使关键字最小的元素如气泡一般逐渐往上“漂浮”直至“水面”。
2016-12-23 16:56:25
478
原创 排序算法——插入排序
插入排序的基本思想是:每次将一个待排序的元素,按其关键字大小插入到已经排好序的子表中的适当位置,直到全部元素插入完成为止。1. 直接插入排序/** * 插入排序 * * 算法:直接插入排序(Straight Insert Sort) * 输入:待排序元素的数组,待排序元素个数 * 输出: * 原理:假定待排序的元素存放在数组R[0..n-1]中,排序过程中的某一时刻,R
2016-12-23 16:52:37
394
原创 排序算法
假定被排序的数据是由一组元素组成的表,而元素由若干数据项组成,其中有一项可用来标识该元素,称为关键字项,其值称为关键字。关键字可用作排序运算的依据。1. 什么是排序 排序,就是整理表中的元素,使之关键字按某一原则(如:递增或递减的顺序)重新排列顺序。 本博文仅讨论递增排序的情况。但是会提供一个倒序排序的算法,这样就可以使用该倒序排序算法把递增排序得到
2016-12-23 16:48:05
369
原创 Visual Studio2013统计代码行数
1. 在“解决方案资源管理器”中选择你的项目的解决方案,然后按下Ctrl+Shift+F,弹出“查找和替换”窗口。2. 在弹出的“查找和替换”窗口中,“查找内容”输入b*[^:b#/]+.*$,“查找范围”选择整个解决方案,“查找选项”勾选使用正则表达式。点击“查找全部”。3. 在“查找结果”中,下拉到最后,可以看到代码行数。
2016-11-24 11:08:07
1475
原创 Windows运行命令
子丰以win10为例,介绍一些常用的Windows运行命令。打开“运行程序”的方法有3种方式:方式一:【开始】—【所有应用】—【Windows系统】—【运行】方式二:搜索 “运行”方式三:快捷键:WIN+R1. 打开cmd提示符:输入命令“cmd"2. 打开注册表编辑器:输入命令“regedit"3. 打开
2016-11-24 11:04:10
549
原创 如何彻底卸载Microsoft Office
使用微软的Office卸载工具可以很便捷很干净的卸载Microsoft Office。并且,对于不同版本的Office需要使用对应的卸载工具。如果觉得从官网下载比较麻烦,可以直接下载子丰的分享:链接:点击打开链接 密码:44v8http://pan.baidu.com/s/1mhoaoOw1. Microsoft Office 2013卸载工具:点击打开链接ht
2016-11-24 10:54:49
8528
原创 如何设置默认输入法
1. 打开控制面板。2. 在控制面板中,选择“更改键盘或其他输入法”。3. 选择“键盘和语言”->“更改键盘”。4. 选择“常规”,根据自己的需要设置默认输入法。
2016-11-24 10:51:50
3668
自动从NTP服务器同步本地时间(WinForm)
2017-10-05
Winform自定义MessageBox
2017-01-08
C#的Winform多语言实现(XML文件)升级版
2017-01-07
Microsoft Access数据库操作类(C#)
2016-11-21
三村合建水厂问题研究(Matlab程序)
2016-11-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人