- 1、本文档共39页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北大地理信息系统教程第七章
PAGE
PAGE 216
第七章 地理信息系统的开发与应用
对从事地理信息系统研究和应用的工程技术人员而言,开发和设计地理信息系统具有两个方面的含义:(1)从底层开发一个通用的地理信息系统,即通用平台的开发;从底层开发一个专用的地理信息系统。实际上,在专用的地理信息系统功能中应包括通用地理信息系统的所有命令。(2)在商业化地理信息系统(主要是通用的地理信息系统开发平台)的基础上进行二次开发,完成专用地理信息系统的开发任务。
7.1 地理信息系统通用功能的实现
下面结合VC++介绍从底层开发地理信息系统的通用功能需要完成的部分工作及技术方法(在前面的章节中已经涉及到的内容不作详细介绍)。
1.程序设计和开发人员应注意的问题
(1)一切工作都要以总体设计为依据。在进行系统变量的设计时,应避免与后期编程中可能出现的变量相同。解决方法可以采用如下方法:在具体的变量前加一具有特定含义的前缀,如sys_color,sys_ltype。变量的名称一定合乎英语或中文的拼写习惯。
(2)撰写详细的文挡,这又包括详细的文字描述材料和对程序行
的注记。对程序行的注记,建议用汉字,不要用英文。
对程序行的注记十分重要,这不仅包括子模块的功能,变量的
含义,更重要的是对程序行功能的描述;
(3)形成良好的编程习惯。这里主要指程序行结构的对称。
//本程序的功能是修改图形实体的颜色
void CWindow::mod_color() { Cdialog *pDlg;
char huge **p_set,huge *p[1],huge *p1,huge *p2,*mao,*chr;
int ii,i,j,k,n,color,cel_number;
int id[6],**id_set,type,head_long,total_long,ltype;
double x0,y0,r,xmi,ymi,alf,high,xy[2];
int k1,k2,k3,k4,k5,k6,k7,k8;
int m1,m2,m3;
long n1,n2,n3,n4;
int id_hz,id_ch,x00,y00;
id_hz=id_hz_style;//保存已有的字体,颜色等参数
id_ch=id_ch_style;
color=cadcolor;
mao=new char[2];
if(mao==NULL) exit(1);
p_set=(char huge **)_halloc(2000,1);//记录图形实体在内存中的初始位置
if(p_set==NULL) exit(1);
id_set=i_dim_alloc(2000,6); //记录图形实体的类型,颜色,线型等参数
strcpy(ex_string,请选择将被修改颜色的图形实体(窗口方式请按w键)!);
//利用鼠标通过交互式的方式选中图形实体。这里cel_number为得到的图形实体数
cel_number=find_object(p_set,id_set,ex_string);
if(cel_number0){//没有选中图形实体或中断的标志
if(cel_number==-30000) cel_number=0;//中断标志,如敲 ESC键
k=0;
cel_number=-cel_number;
}
else k=1;//选中图形实体的标志
*mao=-1;
if((cel_number0)(k==1)){ //满足修改图形实体颜色的条件
i=id_set[0][1]; //得到图形实体的颜色
if(i0) i=256+i; //保证为256色
sprintf(ex_string,%d,i); //把整数转换为字符串
id_dlg=60; //对话框的代码
pDlg=new CAppDialog(SET_COLOR,NULL);//通过对话框得到修改后的颜色代码
if(pDlg-DoModal()==IDOK){
i=strlen(ex_string);
if(i0) cadcolor=atoi(ex_string);//颜色代码
else k=0;
}
else{
k=0;//没有得到新的颜色代码的标志
您可能关注的文档
- 动物生理学 第九章 神经系统1.ppt
- 化合物薄膜太阳能电池.ppt
- 化学竞赛——晶体结构专练.doc
- 化学锚栓使用原理.ppt
- 化学调剖堵水技术.ppt
- 化验室考核手册.doc
- 化纤原料PTA系列产品研究报告.doc
- 北京协和医院·内科应知应会题集.doc
- 北京卓然传媒广告有限公司·王府井创意媒体.ppt
- 化工分离过程课件( 陈洪钫,刘家祺编 )第三章 多组分多级分离的过程分析及简捷计算.ppt
- 1.1细胞是生命活动的基本单位课件-2024-2025学年高一上学期生物人教版必修1.pptx
- 1.2细胞的多样性和统一性第1课时课件-2024-2025学年高一上学期生物人教版必修1.pptx
- 第16课《白杨礼赞》课件-2025-2026学年统编版语文八年级上册.pptx
- 2026届高三生物一轮复习课件+减数分裂与生物的遗传、变异.pptx
- 3.1细胞膜的结构和功能第2课时课件-2025-2026学年高一上学期生物人教版必修1.pptx
- 2025届高三生物一轮复习课件2.1减数分裂和受精作用.ppt
- 中考语文二轮专题复习课件:新闻概括题.pptx
- 第6课《我看》课件+++2025-2026学年统编版语文九年级上册.pptx
- 第21课《人民英雄永存不朽》课件-2025-2026学年统编版语文八年级上册.pptx
- 2025年广西河池罗城特聘农机技术指导员的(1人)考前自测高频考点模拟试题含答案详解(b卷).docx
文档评论(0)