专业程序设计part1
7 专业程序设计
(有多少人在大学里学到了自己真正喜欢的专业??并在此专业上获得了升华??)i==
软件图标下载网址:easyicon
01thu
4邻域 8邻域 D邻域 是啥
像素间的连通性,是转为矢量数据的重要依据(分为8联通/4连通,03SAT计算机图形学上提到,密集用8,凸显尖锐用4,但为啥?又没听到md)
任何图像文件都具有头文件吗?
typedef struct 定义数据结构
传感器放四个波段,一般是红绿蓝黄??。。。。七个波段的第一个像素
bsq bip bil 三种数据存储结构envisatSAR 存复数
中值滤波对椒盐噪声很管用
非监督分类KMEAN
和机器学习里的非监督分类差别,不是函数,是几何形式,找质心相同点,也是先随机选取再进行迭代
上面无非是举了一些专业程序功能设计要解决的问题的例子,,
02 tue
计算机窗口的坐标从左上角开始
读取显示遥感图像,给出图像路径,open(gdal.open)键实现读取路径的功能,构造成一个bmp,贴到panel里面
02THU
checkchanged触发事件。修改enable属性,有个问题,checkchanged是争对所有的check键吗???逻辑问题,你再想想,不是,你跳出那个思维,想不通自己盯着代码自己想,只有在rgbchecked时,enable是true 其他都是false,so easy
加载图像→框→
dll,动态链接库 bin binary debug 调试 版本
类:成员属性和成员方法
面向对象,函数重载概念,函数名一样,参数不同
类实例化对象
可不打具体路径
弹出对话框
注意大小写敏感Dataset/DataSet可以写全路径,system.DataSet...一个屁问题搞半天
实现了点击加载图像,跳出窗口,过滤文件格式,加载影像,读取宽高数据的功能,要透彻了解代码还需对gdal深入了解一下把。。
03tue
伪代码:
打开文件→获取路径→用gdal.open()读取路径→dataset→界面
装箱拆箱object
拆箱要知道类别知道怎么拆因为字节一段一段存的,不说明会乱码,读不出来,装随便装,
SelectedIndex把当前列表索引值设为零?干吗用?
还有for循环语句,再了解了解,逻辑
bug1:很多都是事件未清零
需求:
已有carlenrt.dataset,全有
head&data
dn值加通道,rgb显示,嗯,只是可视化一下
还缺要求:要显示什么
动画基于1/24
图像显示也这个原理,一秒读24次重新生成bmp,显示
图像显示:
创建bmp→创建buffer(缓冲区)长宽→贴
rgb加色原理
nd值→缓冲区→rgb值,显示颜色
using system.drawing
public class gdalprovider
{
}
public bitmap getbmp(os.geo.gdal.datasetds,rectangle showrcet,int[] bandlist)
{
}
03国庆
04TUE
图像旋转:
已有dataset,废话。。。
1.需要用户输入旋转角度、背景值,输出路径
2.设计UI
3.以图像的中心点旋转,
屏幕坐标→数学坐标→旋转坐标(矩阵)
注意角度和弧度的关系,计算机图形学里也有
预先加备选值
(设定下拉框的值,把下拉框选中的值赋给文本框算法)
数学方法呃你看着看吧
04THU
1.弹出旋转窗口
2.设定局部全局变量
在rotate.cs
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using OSGeo.GDAL;
namespace RSimage2018
{
public partial class rotateDialog : Form
{
public Dataset gdalDS = null;
public rotateDialog(Dataset ds)///见上定义
{
InitializeComponent();
gdalDS = ds;
}
private void comboBoxAngle_SelectedIndexChanged(object sender, EventArgs e)
{
textBoxAngle.Text = comboBoxAngle.SelectedItem.ToString();
///下拉框值赋给文本框
}
private void comboBoxBackground_SelectedIndexChanged(object sender, EventArgs e)
{
textBoxBackground.Text = comboBoxBackground.SelectedItem.ToString();
}
private void btnSaveFilePath_Click(object sender, EventArgs e)
{
///string SaveFilePath;
SaveFileDialog saveFileDialog = new SaveFileDialog();
saveFileDialog.Title = "保存旋转文件";
saveFileDialog.Filter = "Tiff文件|*.tif|Erdas img文件|*.img|Bmp文件|*.bmp|所有文件|*.*";
if (saveFileDialog.ShowDialog() == DialogResult.OK)
{
textBoxSaveFilePath.Text = saveFileDialog.FileName;
}
}
private void btnOk_Click(object sender, EventArgs e)
{
if (textBoxAngle.Text == ""||textBoxBackground.Text==""||textBoxSaveFilePath.Text=="")
///判断这些是否为空
{
MessageBox.Show("请输入角度、背景值与保存路径");
return;
}
}
}
}
以上为旋转窗口的代码,今天的课实现了影像旋转功能,建完窗口后,对窗口中的组建进行事件的编写,其中combox要在另一栏中设定可选值,事件写完之后,写练习,
专业程序设计part1的更多相关文章
- 专业程序设计part2
05tue 乘以1.0使得int*int!=0 today:缩放 和计算机图形学关联 已知:currentdataset ask for:两个方向的缩放比例.保存路径.重采样方法(necessary) ...
- 学习 Civil 3D二次开发从哪儿开始?
1.1 从哪儿开始 对于多数的工程设计人员,不完全具备上节所述的各种条件.对于Civil 3D的应用可能比较熟悉:但对于计算机语言,只限于上学时所学的一点基础知识,步入工作岗位后与计算机语言基本无缘: ...
- java和C和C++关系
java和C以及C++ 直接关联,java继承了C的语法,java的对象模型是从C++改编而来的.java和C以及C++关系之所以重要,下面几个就是原因: ①如果一个程序员熟悉C以及C++语法,那么他 ...
- 应用gis笔记
接口,开发包??我要做一个移动端的,完了之后和5G挂一下钩, web/桌面/移动 C#就是.NET.... 和专业程序设计课程的区别 a kind of boring hope it helpful, ...
- 薛非《品悟C-抛弃C程序设计中的谬误与恶习》读后感part1【转】
薛非<品悟C-抛弃C程序设计中的谬误与恶习>读后感part1 作者:宝贝孙秀楠﹣大连程序员 发表于2012年10月5日由admin 出处:http://sunxiunan.com/?p=2 ...
- 2016-2017-2 《Java程序设计》预备作业2总结
2016-2017-2 <Java程序设计>预备作业2总结 古希腊学者普罗塔戈说过:「头脑不是一个要被填满的容器,而是一束需要被点燃的火把.」 在对计算机系的学生情况的调查中,我说: 最近 ...
- 2016-2017-2 《Java程序设计》预备作业1 总结
2016-2017-2 <Java程序设计>预备作业1 总结 预备作业01:你期望的师生关系是什么见https://edu.cnblogs.com/campus/besti/2016-20 ...
- 积极主动敲代码,使用Junit学习Java程序设计
积极主动敲代码,使用JUnit学习Java 早起看到周筠老师在知乎的回答软件专业成绩很好但是实际能力很差怎么办?,很有感触. 从读大学算起,我敲过不下100本程序设计图书的代码,我的学习经验带来我的程 ...
- 第一章-第五题(你所在的学校有计算机科学专业和软件工程专业么?相关专业的教学计划和毕业出路有什么不同?阅读有关软件工程和计算机科学的区别的文章,谈谈你的看法。)--By 侯伟婷
我所在的本科学校和研究生学校都有计算机科学专业和软件工程专业.具体的教学计划无从得到,所以此情况无从对比,但是我从本科教务处网站找到了计算机科学专业和软件工程专业有关专业方面的课程,现列表如下. 表格 ...
随机推荐
- JAVA - SpringBoot项目引用MyBatis操作数据库
JAVA - SpringBoot项目引用MyBatis操作数据库 1. 创建SpringBoot项目,参考:https://www.cnblogs.com/1285026182YUAN/p/1232 ...
- Bean XML 配置(4)- 自动装配
Spring 系列教程 Spring 框架介绍 Spring 框架模块 Spring开发环境搭建(Eclipse) 创建一个简单的Spring应用 Spring 控制反转容器(Inversion of ...
- C# Process类详解
C# Process类详解 Process[] processes = Process.GetProcessesByName(current.ProcessName); 根据进程名字找到所有进程,返回 ...
- jupiter的@TempDir 等不生效
jupiter与junit是 完全独立的测试组件,要严防在测试中将二者混用.最好在依赖引入jupiter 时 就将junit的依赖干掉,以防在写测试用例时将二者混用.不会报错,但是会导致 jupite ...
- 快速搭建单机版Spring Cloud EurekaServer
原文链接:http://www.yiidian.com/springcloud/build-eureka-single.html 本文介绍搭建单机版的Eureka Server服务 1 创建项目,导入 ...
- android 开发学习
androidSDK自带SQLite数据库,使用时继承父类(SQLiteOpenHelper). this表对象本身,理解为指向自身的指针:super(超类)表对象的父类,即指向父类的指针. Cont ...
- bzoj 4247挂饰
背包????不会... #include<bits/stdc++.h> #define INF 0x7fffffff #define LL long long #define N 1000 ...
- nsq 从搭建到应用(更新ing)windows
1.官网下载地址 我安装的是windows nsq-1.2.0.windows-amd64.go1.12.9.tar.gz https://nsq.io/deployment/installing.h ...
- oracle数据删除恢复
insert into 表名 select * from 表名 as of timestamp to_Date('2017-07-20 10:00:00', 'yyyy-mm-dd hh24:mi:s ...
- IDEA控制台输出中文乱码日志文件正常
控制台中文输出乱码但输出的日志文件正常 idea.exe.vmoptions与idea64.exe.vmoptions已经配置 -Dfile.encoding=UTF-8 logback.xml中也配 ...