显示范文10篇

时间:2023-04-01 17:49:49

显示

显示范文篇1

三星开展了“听赏大玩家,酷爽好过夏”的促销活动,据称三星此次活动总投入价值超过二千万,仅凭数字就足以让人目瞪口呆,先看一下三星的超两千万大礼,“7月1日-8月31日期间,凡购买三星17-20英寸液晶显示器好礼赠品买就送,最为实用的促销品真诚奉献,无限惊喜等你体验:凡购买三星17英寸液晶显示器,赠送价值58元的三星pleomax键盘;凡购买三星19/20英寸液晶显示器(除931bf/940bw/205bw外),赠送价值128元的三星pleomax时尚水晶鼠标;凡购买三星940/205bw,931bf液晶显示器,赠送价值268元的三星最新pleomaxusb音箱。”

“只要你买,三星就送”这是三星此次促销的最大诱惑,并且键盘、鼠标、音箱个个都很经典实用,而且维持的时间也比较长。

飞利浦此次的促销活动走的是“平民化”路线,从7月1日至7月31日,凡购买飞利浦指定型号的17寸和19寸液晶显示器的朋友将分别获赠usb吸尘器和时尚太阳能腕表,市场价值在20-50元之间。另外飞利浦还有体验抽奖活动,大奖是spark乐驰轿车,还是非常诱人的,但中奖几率和双色球的500万大奖率不相上下,多少还是有点小郁闷。

aoc的促销活动是:“从7月1日开始至8月31日,凡是购买aocf系列和p系列液晶显示器产品都可以获赠遮阳伞一把,不等价值的当当网购物卡一张,同时还有机会抽取价值5000元的aoc液晶电视大奖。”

aoc此次仅有两个系列型号参加促销,着实有些小气,而且“夏日送伞”虽有心意在,但是伞的价值实在不高,至于当当购物卡更是没什么价值,对消费者购买促进作用并不明显。

显示范文篇2

typedefstruct{

BYTEpeRed;

/*调色板项的红色饱和度*/

BYTEpeGreen;/*调色板项的绿色饱和度*/

BYTEpeBlue;

/*调色板项的蓝色饱和度*/

BYTEpeFlags;/*NULL、PC-EXPLICIT、PC-NOCOLLAPSE一般取PC-EXPLICIT*/

}PALETTEENTRY;

这样把背景图像的第20~148号调色板和景点图像的第149~255号调色板分别放入pal

ette[20]~palette[255]中,然后按下列步骤实现该调色板。

1.定义HDChdc;HPALETTEw-hp;LOGPALETTE*pal;

2.给pal赋值

pal=(NPLOGPALETTE)LocalAlloc(LMEM-FIXED,

sizeof(LOGPALETTE)+256*sizeof(PALETTEENTRY));

pal->palVersion=0X300;/*

pal->palNumEntries=256;

memcpy(%pal->palPalEntry[0],&palette[0],

256*sizeof(PALETTEENTRY);

3.实现该调色板

hdc=GetDC(hWnd);

w-hp=CreatePalette((LPLOGPALETTE)pal);

w-hp=SelectPalette(hdc,w-hp,0);

RealizePalette(hdc);

LocalFree(HANDLE)pal);

其中hWnd为要显示图像的窗口句柄。按上述步骤实现该调色板后,读入要显示的图像,然后映射到hdc中即可。

本文提供的程序cpcolor.c可以实现把一个BMP格式的图像从256色压缩成(color2-color1+1)色,并把颜色号限制在color1到color2范围内。程序执行格式为:

cpcolor图像文件名颜色下限颜色上限本程序使用最优化方法,使用效果良好。

/*源程序cpcolor.c*/

#include<stdio.h>

#include<math.h>

#include<alloc.h>

unsignedcharpalette[256][4];

longTAB[256];

unsignedcharTT[256],BB[256];

intwidth,depth,bytes;

/*该函数打开图像文件并读图像的宽、高和各调色板的颜色分量,并把文件指针指向图像的开始处*/

FILE*get-bitmap-file(char*fname)

{

unsignedcharch;

inti,j,n;

FILE*fp;

fp=fopen(fname,"rb+");

if(fp==NULL)returnNULL;

fseek(fp,18L,SEEK-SET);

fread(&width,2,1,fp);fseek(fp,2L,SEEK-CUR);

fread(&depth,2,1,fp);fseek(fp,2L,SEEK-CUR);

n=width/4;

if(width%4!=0)n++;

bytes=n*4;

fseek(fp,54L,SEEK-SET);

fread(&palette[0][0],4,256,fp);

returnfp;

}

/*该函数实现颜色的压缩*/

voidzh_fan-tu(FILE*fp,intcolor1,intcolor2)

{

unsignedchar*p,*q,cc,ch;

longlen;

intmax-no,i,j,m,n,r0,b0,g0,r1,b1,g1;

doubledd,dmin;

chars[4];

max-no=color2-color1+1;

for(i=0;i<256;i++)TAB[i]=0;

p=(char*)malloc(bytes+1);

for(i=0;i<depth;i++){

fread(p,bytes,1,fp);

q=p;

for(j=0;j<bytes;j++,q++)if(j>=width)break;

else{

ch=(unsignedchar)*q;

TAB[ch]++;

}

}

for(i=0;i<256;i++)tt[i]=(unsignedchar)i;

for(i=0;i<255;i++)for(j=i+1;j<256;j++)

if(TAB[i]<TAB[j]){

len=TAB[i];TAB[i]=TAB[摘要该文论述了在Windows同一窗口中显示多幅彩色图像的技术和实现方法,并提供最优化程序压缩原图像的颜色数量。

关键词调色板Windows图像处理

在目前的大多数微机中都配置了高性能的TVGA或SVGA图形卡,在这些图形卡中,红、绿、蓝三元色各占六位,颜色总数占18位,故可以显示262144种颜色,在更高级的图形卡中,甚至可达24位的真彩色。使用调色板技术,可以在一个窗口显示256种颜色,每一副图像都具有独立的256个调色板,显示时更换调色板便可满足各幅图像的颜色要求。

然而,在某些应用中则要求同一窗口中显示两幅甚至更多的彩色图像,如果按照常规设计,窗口中只能正确地显示其中一幅图像,而其它的图像则由于其调色板被更换,颜色就会混乱。在我们开发多媒体查询系统——山东省旅游资源查询子系统时,系统要求以一幅山东省彩色地图为背景,然后在各个旅游景点设置一个触摸按钮,当用户触摸该按钮时,在窗口的右下部分显示该景点的彩色图像。如果图像不经过特殊处理,则在显示该景点的彩色图像的同时也更换了该窗口的调色板,使背景图像的颜色失真。为了解决这个问题,我们对图像做了特殊处理,使背景图像和各个景点图像的调色板不发生冲突。同时还要考虑到Windows占用了前20个调色板,在一般情况下不允许更改。根据系统的实际情况,我们对调色板做了如下布置:第0~19号调色板为Windows系统保留;第20~148号调色板为背景图像使用,一旦背景图像使用后,就不再更改;第149~255号调色板为各景点图像使用,当显示不同的景点图像时,随时更改这些调色板。定义一个PALETTEENTRY类型的数组palette[256]用来保存各颜色分量。该类型是Windows定义的一种结构:

typedefstruct{

BYTEpeRed;

/*调色板项的红色饱和度*/

BYTEpeGreen;/*调色板项的绿色饱和度*/

BYTEpeBlue;

/*调色板项的蓝色饱和度*/

BYTEpeFlags;/*NULL、PC-EXPLICIT、PC-NOCOLLAPSE一般取PC-EXPLICIT*/

}PALETTEENTRY;

这样把背景图像的第20~148号调色板和景点图像的第149~255号调色板分别放入pal

ette[20]~palette[255]中,然后按下列步骤实现该调色板。

1.定义HDChdc;HPALETTEw-hp;LOGPALETTE*pal;

2.给pal赋值

pal=(NPLOGPALETTE)LocalAlloc(LMEM-FIXED,

sizeof(LOGPALETTE)+256*sizeof(PALETTEENTRY));

pal->palVersion=0X300;/*

pal->palNumEntries=256;

memcpy(%pal->palPalEntry[0],&palette[0],

256*sizeof(PALETTEENTRY);

3.实现该调色板

hdc=GetDC(hWnd);

w-hp=CreatePalette((LPLOGPALETTE)pal);

w-hp=SelectPalette(hdc,w-hp,0);

RealizePalette(hdc);

LocalFree(HANDLE)pal);

其中hWnd为要显示图像的窗口句柄。按上述步骤实现该调色板后,读入要显示的图像,然后映射到hdc中即可。

本文提供的程序cpcolor.c可以实现把一个BMP格式的图像从256色压缩成(color2-color1+1)色,并把颜色号限制在color1到color2范围内。程序执行格式为:

cpcolor图像文件名颜色下限颜色上限本程序使用最优化方法,使用效果良好。

/*源程序cpcolor.c*/

#include<stdio.h>

#include<math.h>

#include<alloc.h>

unsignedcharpalette[256][4];

longTAB[256];

unsignedcharTT[256],BB[256];

intwidth,depth,bytes;

/*该函数打开图像文件并读图像的宽、高和各调色板的颜色分量,并把文件指针指向图像的开始处*/

FILE*get-bitmap-file(char*fname)

{

unsignedcharch;

inti,j,n;

FILE*fp;

fp=fopen(fname,"rb+");

if(fp==NULL)returnNULL;

fseek(fp,18L,SEEK-SET);

fread(&width,2,1,fp);fseek(fp,2L,SEEK-CUR);

fread(&depth,2,1,fp);fseek(fp,2L,SEEK-CUR);

n=width/4;

if(width%4!=0)n++;

bytes=n*4;

fseek(fp,54L,SEEK-SET);

fread(&palette[0][0],4,256,fp);

returnfp;

}

/*该函数实现颜色的压缩*/

voidzh_fan-tu(FILE*fp,intcolor1,intcolor2)

{

unsignedchar*p,*q,cc,ch;

longlen;

intmax-no,i,j,m,n,r0,b0,g0,r1,b1,g1;

doubledd,dmin;

chars[4];

max-no=color2-color1+1;

for(i=0;i<256;i++)TAB[i]=0;

p=(char*)malloc(bytes+1);

for(i=0;i<depth;i++){

fread(p,bytes,1,fp);

q=p;

for(j=0;j<bytes;j++,q++)if(j>=width)break;

else{

ch=(unsignedchar)*q;

TAB[ch]++;

}

}

for(i=0;i<256;i++)tt[i]=(unsignedchar)i;

for(i=0;i<255;i++)for(j=i+1;j<256;j++)

if(TAB[i]<TAB[j]){

len=TAB[i];TAB[i]=TAB[j];TAB[j]=len;

cc=TT[i];TT[i]=TT[j];TT[j]=cc;

memcpy(s,&palette[i][0],4);

memcpy(&palette[i][0],&palette[j][0],4);

memcpy(&palette[j][0],s,4);

}

for(i=color2;i>=color1;i--)

memcpy(&palette[i][0],&palette[i-color1][0],4);

for(i=0;i<max-no;i++)BB[TT[i]]=(unsignedchar)i;

for(i=max-no;i<256;i++){

r0=palette[i][2];

g0=palette[i][1];

b0=palette[i][0];

dmin=256.0*256.0*256.0;

m=0;

for(j=0;j<max-no;j++){

r1=palette[j][2];

g1=palette[j][1];

b1=palette[j][0];

dd=1.0*(r0-r1)*(r0-r1)+1.0*(g0-g1)*(g0-g1)+1.0*(b0-b1)*(b0-b1);

dd=sqrt(dd);

if(dmin>dd){dmin=dd;m=j;}

}

BB[TT[i]]=(unsignedchar)m;

}

for(i=0;i<256;i++)BB[i]+=color1;

}

voidw-create-bitmap(FILE*fp)

{

inti,j,n,m,t;

longlen;

unsignedcharfar*p,far*q,cc,ch;

unsignednn;

fseek(fp,54L,SEEK-SET);

len=ftell(fp);

fwrite(&palette[0][0],4,256,fp);

p=(unsignedcharfar*)farmalloc(bytes+1);

len=ftell(fp);

for(i=0;i<depth;i++){

fseek(fp,len,SEEK-SET);

fread(p,bytes,1,fp);

fseek(fp,len,SEEK-SET);

len+=bytes;

q=p;

for(j=0;j<width;j++,q++){

cc=(unsignedchar)(*q);

ch=BB[cc];

*q=ch;

}

fwrite(p,bytes,1,fp);

}

farfree(p);

}

main(intargc,char*args[])

{

FILE*fp;

if(argc<4){

printf("参数:文件名颜色下限颜色上限\n");

return;

}

fp=get-bitmap-file(args[1]);

if(fp==NULL)return;

zh-fan-tu(fp,atoi(args[2],atoi(args[3]));

w-create-bitmap(fp);

fclose(fp);

}

显示范文篇3

本文提供了一种封面设计技术,能模拟摄像机推拉镜头的效果,一推一拉,极具动态。

我们知道,计算机图形处理的数据量非常大,要求的速度也很快。因此往往将图形处理软件固化成硬卡(如2.13汉字系统的神笔CAD卡),有了图形处理卡,对图形应用的编程相对要容易些,然而,由于资金等问题,大多数的PC用户都不具备此设备,难道说就只能望“卡”兴叹了么?回答当然是否定的,本文给出的就是一种纯软件方式的图形动画技术。它不要求额外的设备,只要有EGA/VGA适配器即可。

为实现图形的动画效果,例如实现软件封面汉字标题的推拉镜头效果,只要将一幅幅不同大小的汉字画面在很短的时间内依次显示在屏幕上即可。这里涉及到一个问题,那就是在显示下一个画面之前先要清屏,然后再写下一个画面。无论二者的速度多快,都将影响动画效果,用户能感受到写屏和清屏的过程。这将大煞风景。本文采用“幕后组织”的方法解决了这一问题。在EGA/VGA的10H模式下,视频缓冲区被分成二页,一个页为当前显示页,其内容即为屏幕上显示的内容;一个为输出活动页,所有的视频输出都针对此页,它可以是当前显示页,也可以不是。在TurboC中提供了两个函数,setactivepage和setvisualpage分别完成设置图形输出活动页和设置图形可见页。如果我们将输出活动页设为非当前显示页,将一些不想让用户看到的处理过程放到活动页这一“幕后”去处理。然后切换当前显示页和活动输出页,那么用户看到的就是我们想让其看到的内容了。

为实现汉字标题的推拉镜头效果,需要在屏幕上显示不同大小的汉字,许多汉字系统都提供了汉字的放大功能,但一则需要汉字系统的支持,且有特殊的控制命令,在C语言中不易调用;二则其放大和缩小的级差皆为整数倍,不能体现缓慢变化的过程。所以笔者编制了一个西文状态下的汉字放大和缩小的函数,可用来完成汉字的任意放大和缩小(例如0.2倍)。同时,由于无须装载汉字系统,因而可节省大量的内存。

有了不同大小的汉字,只要在短时间内将之依次显示在屏幕上,就能产生动画效果。由于汉字的输出是采用在屏幕上画点的方法,所以速度很慢,简直让人无法忍受(其它的图形输出也存在这个问题)。最好是将图形整个存储,以便回显时获得较快的速度。C语言中有两个函数getimage和putimage能完成此功能,其响应速度是非常快的。但是由于这两个函数都是将图像保存在内存中,而图像的信息量往往很大,这就是说只能保存有限的图像,不能满足我们的要求。笔者在这里采用了用文件来存储图像,突破了内存的限制,从理论上讲可以存储无限大。makeface程序用来产生封面,它创建两个文件:pic为二进制图像文件,保存一幅幅图像,textpic为一辅助文件,保存每一幅图像的长度。dispface用来显示封面,将pic中的内容依次读到内存,用putimage函数写回屏幕上。dispface完成封面显示的速度很快,如果将pic和textpic放在虚拟盘中,那么效果就更好了。需要说明的是,尽管采用用文件来存储图像可以不受内存空间的限制,但由于getimage和putimage函数现将图像放在内存中,如果图像很大,占用内存太多时,程序将会发生不可预料的结果。所以在存储较大的图像时,应采用分块存储,再分块会显的方法。一般来说一块以不超过一屏的三分之一(639*120)为好。

本文仅提供一个简单的例子,用makeface建立pic和textpic之后,执行dispface程序,可在屏幕上看到蓝地红字的“汉字特技显示”几个字由大到小逐渐推远,再由小到大逐渐拉近,最后定于屏幕中央。参照本文,加以扩充和完善,相信不难编出漂亮、醒目的动画封面。

本程序的运行环境为TurboC2.0,EGA/VGA显示器。

附:makeface.c,jputhzc和dispface.c

/*jputhz.c*/

/*调用格式:hzdisp(X列,Y行,横扩倍数,纵扩倍数,颜色,要显示的汉字)*/

#include"stdio.h"

#include"graphics.h"

#include"string.h"

#include"stdlib.h"

voidhzdisp(x,y,x-rate,y-rate,color,cstring)

unsignedintx,y;

floatx-rate,y-rate;

intcolor;

charcstring[];

{

FILE*fp;

registerintn=0,i,j,k;

registerintx1,y1;

chardot[73];

charsec1,sec2;

unsignedlongindex;

fp=fopen("c:\\213\\hzk24s","rb");

if(fp==NULL){printf("Can''''topenhzk\n");exit(1);}

while(*cstring)}

n++;

sec1=cstring-160;

sec2=(cstring+1)-160;

index=(sec1-16)94+sec2-1;

index=72;

if(fseek(fp,index,0)){

restorecrtmode();

printf("Fileseekerror!\n");

fclose(fp);

exit(1);

}

if((fread(dot,1,72,fp))!=72){cstring++;continue;}

cstring++;

cstring++;

for(i=0;i<24;i++)

for(j=0;j<3;j++)

for(k=0;k<8;k++)

if(dot[i3+j]>>(7-k)&1)

{

x1=x-rate(i+25n);

y1=y-rate(j8+k);

if((x-rate<=1)&&(y-rate<=1))putpixel(x1+x,y1+y,color);

else{fillellipse(x1+x,y1+y,x-rate,y-rate);}

}

}

fclose(fp);

}

/----------/

#include"jputhz.c"

FILEfp1,text;

//

savescreen(intx0,inty0,intx1,inty1)

{

unsignedintsize;

charbufs;

unsignedintpiclong;

intss;

ss=s

izeof(unsignedint);

piclong=(unsignedint)malloc(ss);

size=imagesize(x0,y0,x1,y1);

piclong=size;

fwrite(piclong,ss,1,text);

bufs=(char)malloc(size);

if(bufs==NULL)

{puts("Memoryallocfail!/n");getch();return(0);}

getimage(x0,y0,x1,y1,bufs);

if(fwrite(bufs,size,1,fp1)!=1)

{puts("fwritefall");return(0);}

free(bufs);

}

//

main()

{

intdrive=DETECT,mode,i;

intdx,dy;

floatxr=2.5,yr=2.5;

charaa[]="汉字特技显示"/

if((fp1=fopen("e:\\pic","w+b"))==NULL)

{printf("Cannotopenfilepic\n");

exit(1);}

if((text=fopen("e:\\textpic","w+b"))==NULL)

{printf("Cannotopenfiletextpic\n");

exit(1);}

initgraph(&drive,&mode,"d:\\tc");

setbkcolor(BLUE);

cleardevice();

for(i=10,i>1,i--)

{

dx=250-i20;

dy=150-5i;

cleardevice();

hzdisp(dx,dy,xr,yr,12,aa);

savescreen(dx,dy,dx+200xr,dy+24yr);

xr-=0.25;yr-=0.25;

}

getch();

fclose(fp1);

fclose(text);

closegraph();

}

/----------/

#include"stdio.h"

#include"graphics.h"

FILEfp1,text;

//

restorescreen(intx0,inty0,unsignedintlength)

{

charbufs;

bufs=(char)malloc(length);

if(bufs==NULL)

{puts("mallocfail");exit(1);}

fread(bufs,length,1,fp1);

putimage(x0,y0,bufs,COPY-PUT);

free(bufs);

}

//

main()

{

intdrive=DETECT,mode,i,j;

longkeep=0;

intdx,dy;

unsignedintaa[10];

unsignedintab;

ab=aa;

if((fp1=fopen("e:\\pic","rb"))==NULL)

{printf("Cannotopenfilepic\n");

exit(1);}

rewind(fp1);

if((text=fopen("e:\\textpic","rb"))==NULL)

{printf("Cannotopenfiletextpic\n");

exit(1);}

rewind(text);

ab++;

for(i=0;i<9;i++)

{

fread(ab++,sizeof(unsignedint),1,text);

}

initgraph(&drive,&mode,"d:\\tc");

setbkcolor(BLUE);

setcolor(12);

setfillstyle(SOLID-FILL,12);

for(i=9;i>1;i--)

{

setvisualpage(0);

setactivepage(1);

cleardevice();

restorescreen(40+(10-i)20,100+5(10-i),aa[10-i]);

i--;

setvisualpage(1);

setactivepage(0);

cleardevice();

restorescreen(40+(10-i)20,100+5(10-i),aa[10-i]);

}

for(i=9;i>0;i--)

{

setvisualpage(0);

setactivepage(1);

cleardevice();

for(j=1;j>i;j++)

keep+=aa[j];

fseek(fp1,keep,SEEK-SET);

keep=0;

restorescreen(40+i20,100+5i,aa[i]);

i--;

setvisualpage(1);

setactivepage(0);

cleardevice();

for(j=1;j<i;j++)

keep+=aa[j];

fseek(fp1,keep,SEEK-SET);

keep=0;

restorescreen(40+i20,100+5i,aa[i]);

}

getch();

fclose(fp1);

显示范文篇4

LED显示屏属于一种平板显示器,其包含了大量的LED模块面板,可以用来显示文字、图像、视频等信息。与传统LCD显示屏相比,LED具备良好的面积延展性,在条件允许的情况下可以任意延展,无缝拼接,从而保证图像显示的效果。同时,LED显示屏中的LED显像元件光通量衰减缓慢,其使用寿命较LCD屏高出3倍左右,配合互动技术,LED刷屏机可以实现广告媒介与广告受众之间的两性互动。

2LED显示屏结构设计

在对LED显示屏结构进行设计时,需要从以下几个方面着手。2.1灯珠选择。灯珠作为LED的核心,存在许多不同类型的产品,其性能也各不相同,如图1所示。从显示颜色上分类,LED灯珠包括了红、绿、蓝三原色和绿色、白色五种,通过红绿蓝三原色的混合,可以形成其他颜色。从形式上分类,LED灯珠包括了插针式和贴片式两种,这里选择最为常用的插针式灯珠。2.2外观设计。为了保证LED显示屏的美观性,需要做好相应的外观设计,必须在充分保证产品功能的基础上,对显示屏的宽度进行合理把握,减少受风面积和雪荷载等的影响。对于安装在室外的大型LED显示屏,还需要充分考虑防水问题,提升其整体性能。2.3灯板结构设计。依照设计目标,从降低高度,提升防水性能的角度,对LED显示屏进行设计。灯板采用了单层PCB板,将灯珠插针弯折90°后,焊接在PCB板上,这样能够极大地减小线路板的厚度,但占用空间较大,只能平行排列一排灯珠,如果显示屏安装区域对亮度要求较高,则这种设计不适用。但在现实城市中,良好的照明条件使得其可以被应用在商业建筑或者写字楼的LED显示屏中。对于照明条件较差的区域,可以采用双层PCB板结构,厚度在1.6mm,将必要的器件安装在两块PCB板之间,以铜针对两板块进行连接,最大宽度在14mm左右。通过这样的设计,灯珠能够呈双层排列结构,亮度大大增加,同时也减小了PCB板的宽度以及灯条的厚度。2.4壳体结构。采用了分体式的结构形式,将其分为上、下两部分,通过卡扣配合螺钉进行连接固定,为密封条和灯板的安装提供便利,能够避免误差累积出现的拆装困难现象。在灯条安装时,可以同时采用所有密封条,于下壳体中进行线路安装行,此时的上壳体发挥的仅仅是盖板作用,在线路板和密封条安装完成后,可以直接扣上上壳体,操作更加便捷。对灯壳结构进行三维建模,最终结果如图2所示。2.5密封设计。LED显示屏一般安装在室外环境下,需要考虑防水性能,因此,密封设计必不可少。从提升显示屏防水性能的角度看,不仅采用了密封灯壳,而且灯珠密封条与电线密封条采用的是独立设计的形式,即使灯珠密封条出现漏水问题,也不会影响位于背部的线路部分。可以考虑利用硅胶注塑开模,加工成防水造型来替代灌胶防水。从便于安装和拆卸的角度看,如果密封条长度过长,则很容易引发误差累积,因此,采用了分段式密封的方式,可以实现多层次防水。在实际操作中,主要是将灯条划分为多个区域,每一个区域都采用胶条密封,相互独立,互不影响。但从实际应用效果看,这样的防水设计并不理想,主要是装配工艺水平达不到,在密封不严的情况下,一旦出现漏水问题,水流可能会沿电线进入到线路板中。因此,将灯条走线进行了区分,包括了前控制输入线、中部电源线和后控制输出线,经过一两次弯折来降低线路的引流能力。从PCB中引出的电源线在经过两三个密封垫后,可以到达出线位置,经分层密封,可以实现分层保护,在提升防水效果的同时,也不需要进行注胶防水操作。灯条控制线的走线环节与电源线类似,必须保证每一次的弯折都具备足够的空间,避免过度挤压导致绝缘破损。过线区域可以利用橡胶垫密封,线路在前端需要经过一次弯折,到达灯条后端进行第二次弯折,后端走线位置应该以密封硅胶进行两次以上的防水处理,直到控制线自出线孔引出,实现分段防水。2.6部件材料选择。LED显示屏在运作过程中,存在比较严重的发热问题,如果散热效果不佳,则可能引发火灾事故。对此,在部件材料选择方面,应以散热为核心,选择具备较高导热系数的材料,而考虑到成本问题,一般都会选择铝材料。从材料本身的强度和刚度分析,选择6063铝合金,其具备非常优秀的热塑性、耐蚀性以及力学性能,且容易阳极氧化,是一种非常优秀的电子散热材料。结合电解法,在铝合金表面生成氧化膜,可以明显改善其耐腐蚀性、耐磨性和硬度,电解操作可以将铝或者铝合金放在硫酸、铬酸等电解质溶液中,施加电流实现电解,可以在其表面形成厚度在5~30μm的氧化铝层,促进其性能的改善。从可持续利用角度看,选择硅橡胶密封条进行密封,这种材料的耐高温和耐低温性能良好、产品稳定、回变形性强,在电力电缆、医药导流等领域有着相当广泛的应用,使用寿命可以达到普通橡胶密封件的3倍以上。以密封条替代灌封胶来实现防水,是LED产品发展的一个必然趋势,可以有效提高生产效率,而且便于拆卸,降低了维修成本,赋予了产品可循环利用的特点。2.7卡具设计。卡具分为上盖与下托两种,从提升LED显示屏下方观看效果的角度看,增加了卡具倾角,以实现灯条角度的倾斜,倾斜角度主要参照显示屏离地高度。以壁挂式LED显示屏为例,从保证施工安全的角度看,可以选择下盖固定上盖拆卸的方式,将下盖作为托盘,支撑灯条,上盖以螺钉固定在箱体上,北部留出足够的施工空间,确保施工人员可以在屏体背部进行安装和拆卸,不需要用到吊篮。

3结束语

总而言之,在科学技术飞速发展的背景下,LED显示屏产品逐渐实现了多源化,传统显示屏暴露出一些不足和问题,要求技术人员必须及时更新观念,做好LED显示屏结构的全新设计,提升其结构的新颖性和实用性,以更好地满足LED显示屏的使用需求,促进LED显示屏的可持续发展。

参考文献:

[1]边晓峰.LED条状显示屏结构设计的研究[D].大连:大连理工大学,2016.

显示范文篇5

一、概述

(一)轨道交通车内电子动态站点显示器概述

城市轨道交通车内电子动态站点显示器是对现有指示装置进行一种改进与创新。轨道交通车内电子动态站点显示器的创新点:

(1)实现一种图形丰富、色彩分明、直观易懂的地铁列车运行站点信息的电子显示屏。

(2)本项目中将模拟预留与列车通信的接口和功能,基于单片机平台实现一种较为通用的电子显示屏控制方案。本装置控制采用以单片机为控制中心,计算机为辅助单元,计算机发送模拟的列车运营信息到信号接收器,由单片机进行信号处理,从而实现LED显示屏的顺利显示。

(二)轨道交通车内电子动态站点显示器的实现意义

由于地铁站与站之间的距离长短不一,运行的时间自然也有一定程度的差别,可能会让乘客无法精确计划自己的日程计划以及生活安排,这也给很多每天按时上班的乘客带来一定困扰。外来人员乘坐地铁,需要及时了解情况,因此,需要研究一种能让旅客一目了然的指示乘车信息的显示器,可方便乘客出行,更加有利于乘车秩序的优化。该项目不仅可以为乘客提供简单而有效的乘车信息,也增添了车内空间的利用率,同时美化了车厢,给乘客以舒适感。同时也减少了地铁的维修成本,使运营更加高效。

二、系统设计

(一)硬件设计结构与原理

硬件部分由电源、USB转232、LED显示和MCU控制4部分组成。硬件部分通过不断接收PC发来的数据,来控制LED灯的显示。结构方面:通常完成串口通信,有两种方法,其一是用MAX232芯片,以9针串口输出;另外一种是用PL2303芯片,用USB口输出这里笔者使用pl2303作为串口转232的主要芯片。这部分是硬件部分的主要部分,其中笔者未使用较为常用的MAX232作为电平转换芯片,其主要原因是9针串口接口现在只有在少部分台式机上才有,而几乎所有的笔记本电脑都没有配置9针串口接口,如果使用MAX232,虽然电路简单了,成本降低了,但是使得设备的兼容性不强。反观PL2303芯片,虽然只是在MAX232上多加了不到5元的成本,却可以不仅完成串口通信,而且可以兼容各种具有USB接口的台式机和笔记本,使设备兼容性变强。故笔者在设计这部分时,经过再三决策,最后选择了如上做法。为了显示系统的正常工作,笔者在设备中设置了上电Led提示。本项目使用的是红绿双色LED,LED选用高亮共阳,其中绿色接P0口,红色接P2口,MCU通过对P0、P2的控制来控制LED的亮色。本部分使用共阳极LED主要是考虑到MCU的P0口对于高电平输出功率较小,可能无法满足8个LED同时点亮的功率,所以设计成MCU低电平有效。为使得动态效果更为明显,笔者使用双色LED等,使得未通过的车站为绿灯,已通过的车站显示红灯,让乘客理解更为方便。

(二)软件部分工作原理介绍

软件部分是本项目第二个主要部分,这部分主要用来显示视频,通过接受列车控制系统传来的列车运行时间和到达时间来发送相应数据,并控制硬件部分的工作。软件主要分为两个部分:第一部分:视频部分此部分播放一段在电脑上模拟的视频,在实际应用中可能以电视信号代替。第二部分:此部分为软件部分中的重点部分,主要是实现列车模拟运营(具体实现如下图)。从“松江大学城”至“七宝”站,列车到达时间为计时01:00(分钟()设计者模拟,后同),数字以秒滚动显示(后同),计时开始时,计算机向串口(com3)发送字符''''0'''',即ASCⅡ码值''''48(''''十进制);20秒后发送字符''''1'''';再20秒后发送字符''''2'''',计时结束时发送字符''''3'''',并在屏幕中显示,下一站:徐家汇;依次循环直到列车到达终点站:杨高中路,结束演示。列车状态动态显示,其中小红点会随着列车的行进不断行进。使得动态效果更为明显。

(三)软件方面相关技术体现

软件部分笔者使用VB来完成程序设计,选用VB的主要原因是在工业控制中,VB对于串口通信兼容性较好,同时,使用控制控件较为方便。VB也大量地在工业控制的上位机中使用作为主要的编程语言,所以,最后笔者使用Vb语言来进行编程。主要程序包括:1.打开视频文件;2.打开图片;3.时钟初始化静止(程序略);4.串口初始化;5.判断串口是否连接;6.定义计时器1初始化程序。控件部分:1.继续播放控件PrivateSubCommand1_Click();Timer1.Enabled=False;MediaPlayer1.Rate=1''''播放视频;MediaPlayer1.play;EndSub2.暂停播放控件PrivateSubCommand2_Click();MediaPlayer1.Stop''''停止播放;EndSub3.运行控件(程序略);4.停止控件(程序略);5.退出控件;PrivateSubCommand5_Click();End本项目软件部分,主要利用了7个定时器,来控制各阶段的计时及数据的输出,完成了上位机控制的功能。

显示范文篇6

【关键词】城市公共物品供给公平与效率

一、城市公共物品定义

城市公共物品现在普遍被定义为:范围局限在一个城市内,以实现城市发展为目标,保证城市居民的健康和人身安全为前提,为城市化社会进步和发展所提供的公共产品和公共服务。例如地方教育、公安、消防、公路、桥梁、供水供电网络,污水处理等。城市公共物品区别于一般公共物品主要体现在他的区域性,虽然具有一般公共物品的特征,但主要作用在一个城市内。由于城市公共物品对于城市的发展至关重要,加之当前我国户籍制度的适度松绑以及城市化政策的推行,城市公共物品的研究变得更具有重要意义。

二、当前国内研究

国内学界当前对城市公共物品的研究主要集中在两个领域,即供给主体与供给模式。对于我国公共物品供给现状学界争论不大,由于长期计划经济体制以及经济发展水平的限制,加之制度缺陷,我国大陆地区城市公共物品供给不足已是不争的事实。就当前来看,无论是资本性公共物品还是消费型公共物品,供给都无法满足市民需求。截止2007年,我国大陆地区城市化率超过40%。按照当前预测,到2020年我国城市人口数量将超过7亿。加之经济发展和国民生活水平的提高,届时对城市用水、用电、燃料管道、教育、司法等公共物品的需求将呈几何增长,如不能有效解决公共物品的有效供给问题,我国经济可持续性发展必将受到严重制约。对于公共物品的供给方来说确定何种供给规模才能在满足需求与充分效率两个方面达到平衡成为亟待解决的问题。解决这个问题首先应该寻找合适的公共物品供给主体。早期的针对公共物品研究的学者普遍认为公共物品应该由政府提供,但是随着研究的深入以及“非纯公共物品”概念的提出,人们意识到不同“纯度”的公共物品应该由不同的主体来完成供给。

1、纯公共物品的供给

纯公共物品由于其绝对的非排他性与非竞争性,市场根本无法提供,因此必须由政府来供给。城市纯公共物品也是这样,只是这种非排他性和非竞争性是在一定地域内得以体现。至于是由中央政府还是由地方政府来供给当前学界基本倾向于地方政府供给。依据是地方政府更了解辖区内居民对公共物品的需求偏好,此外,不少学者认为不同地区应该有权选择公共物品的种类与数量。

虽然学者们普遍认为城市纯公共物品由城市当局来提供的合理性,但是对于我国当前体制下市政当局公共物品的供给效率学界依然有争论。争论的焦点在于效率与公平。一方面我国现行决策体制充分体现了行为效率,但是经济效率却存在着广泛的质疑。由于政府执行者的收益曲线与公众在这一领域的收益曲线偏离,因此他们的行为与目的也会冲突。执行者的收益取决于其行为是否满足上级官员的偏好而非满足公众对公共物品的偏好。而上级对区域公共物品供给的实际需求了解往往不足甚至偏离。此外,国内当前尽管户籍制度已经放松,但国民依然不可能像西方国家那样低成本的实现“用脚投票”。这种国情直接影响市政当局对公共物品的供给效率。第二,当前我国中央集权制度下地方政府没有税收立法权,费税改革进一步在财政领域剥夺地方当局为提供某些特殊公共物品而选择的收入来源。税收目的不明确以及税收用途的混乱也影响了财政资金的使用效率,最终影响的还是公共物品的供给效率。

2、城市准公共物品的供给

不同于城市纯公共物品、准公共物品具有一定程度的排他性和竞争性,这种物品若使用者过多也易造成拥挤。例如城市道路、供水供电网络、通讯、机场等。这些公共物品的“纯度”相对于司法、公园、博物馆等更低,收取一定费用的可能性也存在。对于此类物品,国内外学者都认为可以实现多元化供给。另外,广西师范大学黄河东教授提出非纯公共物品市场供给的三个条件,即市场经济制度条件,消费排他性技术条件和公共物品非纯性条件。当前我国市政当局针对这种非纯公共物品供给的方式按照“纯度”大概可以归纳成两种:市政当局采用公共方式供给或者市政当局通过市场方式供给。

所谓公共方式供给即政府向消费者无偿提供,但是通过税收来支付其成本。对于部分“纯度”相对较高、外部效益大的产品,如果由市场来提供会造成效率较大的损失,对于这部分产品,政府通过公共方式提供效率会高于私人供给。但是对于这个“纯度”的界定并没有统一标准。这里以城市公路为例,虽然现在大多数国内城市道路是由市政当局采取公共方式提供,然后通过征收养路费(现已改成汽油税)的方式来实现成本补偿。但是不少地方采取吸收私人资本建设经营部分城市道路,设立收费站对过往车辆收费。

除了公共方式供给外,现在我国市政当局也广泛的采用引入私人资本提供公共物品这种方式。在公共物品供给领域引入私人资本有利于公共物品供给效率和竞争性的提高。另外,当前无论是政府还是学界都认识到供给不等于生产,私人资本的引入可以保证在市政财力有限的情况下更好满足公众对公共物品的需求。在我国行政垄断现象严重的国情下,引入竞争机制也可以在相当程度上打破行政垄断以及遏制寻租行为。具体来看学界将我国市政当局引入市场机制供给的方式归纳为三种方式。即BOT模式(build-operate-transfer)及其后来演进而来的BOOT(build-own-operate-transfer)模式、BOO(build-own

-operate)模式、BLT(build-lease-transfer)模式等;“公私合作模式”即ppp(public-private-partnership)模式;ABS模式(asset-backed

-securitization)是以项目可预期收入为保证,发行国际债券的方式来融资。ABS方式除了融资空间大的优势外还有一大优点,即不增加政府“资产负债表”上的负债率。中国论文联盟-三、结论与建议

1、当前面临的问题

尽管学界对私人供给公共物品的必要性认识较为统一,但是对于不同模式的认识程度依然较为混乱。现有文献似乎更多的在注重讨论私人物品与公共物品技术上的划分,也就是通过排他性技术和生产技术划分公共物品的“纯度”,然后罗列理论按纯度套取不同经营或者供给的模式。也有一部分学者重点考虑私人供给效率问题,他们对效率损失的关注点主要来自两方面:一是市政当局作为市民代言人与企业对公共项目成本及盈利信息获取的不对称性;二是质疑私人供给是否能有效消除搭便车现象。然而针对市政当局对本地区公共物品需求偏好了解程度的研究很少,且没有显著成果。此外,虽然学界已经关注到私人资本进入公共物品供给领域需要市政当局以产权明晰作为激励机制,而且也有很多文献阐述了私有资本涉猎公共物品供给效率与价格决定的研究,但是缺乏市政当局引入私人资本投资公共物品领域是否引发新的行政垄断的研究。另外关于如何解决我国市政当局对于私有资本进入公共领域经营的监管缺失以及体制内对于市政当局监管缺失的研究也处于大面积空白状态。

综合来看,通过数十年的研究,我们发现公共物品的问题实际是要解决市场失灵的问题。但事实是在现行制度下,我们试图解决由公共物品基本特性引起的市场失灵问题时又引发了新的效率损失。学界一直在思考如解决外部性和产权问题导致的市场失灵问题,当局也在努力弥补由于制度漏洞导致的新的效率损失以及消除公平障碍,但是还有一个老问题并没有得到我国执行当局在实际操作过程中的重视,即如何有效显示公众对公共物品的偏好,因此在此后的研究中更有必要基于明晰的产权来综合分析研究如何通过我国现行的委托机制综合显示公众对公共物品的偏好。

2、建议

尽管我们列举了上述的种种问题,但是归结起来还是两个方面:第一是需求偏好的显示以及表达;第二是有效供给。在偏好显示方面,我们对于文献中已经阐述的部分不在赘述,这里主要想谈的是基于西方公共选择理论,立法机构运作应该作为表达公众实际偏好的主要手段。因此,我国各市级人大应该充分发挥这种作用,针对城市政府提出的各种公共物品供给方案进行选择。在这过程中必须进一步加强民主监督以及进一步提高人大代表选举过程中公民参与程度。其次,城市执政当局作为公共物品的供给者应该主动通过各种实际调查来获取公民对公共物品的需求数据,这种做法并非不可能,布坎南曾经提出过问卷调查显示偏好的方法,但是这种做法技术要求较高,需要城市执行当局更加科学的执政。

在供给方面,同样我们不再赘述前面已经提到过的内容,我们认为执政当局必须兼顾公平与效率。一方面要明确公共物品供给实际也是通过政府支付转移来减少由于制度缺陷和市场失灵引起的贫富差距;另一方面必须做到财政支出取之于民用之于民,细分各种税收以尽可能降低搭便车现象。效率方面,市政当局应该区分供给与生产。同时,针对公共物品的纯度与种类进行科学决策。此外,主动搜集需求信息科学制定各种方案以减少立法机构运作成本也是提高效率的有效手段之一。

【参考文献】

[1]王绍光:多元与统一——第三部门国际比较研究[M].杭州:浙江人民出版社,1999.

[2]Brown,G.V&P.M.Jackson.公共部门经济学(第四版)[M].北京:中国人民大学出版社,2000.

[3]方福前:公共选择理论[M].北京:中国人民大学出版社,2000.

显示范文篇7

没少了往中关村跑。暑期的中关村市场还真热闹,这两天为了帮朋友攒机器。各个专卖店、柜台都有促销活动。现把一些我所看到显示器促销活动整理一下,发给大家看看,以作购买参考。

酷爽好过夏”促销活动,据称三星此次活动总投入价值逾越二千万,仅凭数字就足以让人目瞪口呆,先看一下三星的超两千万大礼,月日-月日期间,凡购买三星1720英寸液晶显示器好礼赠品买就送,最为实用的促销品真诚奉献,无限惊喜等你体验:凡购买三星17英寸液晶显示器,赠送价值58元的三星pleomax键盘;凡购买三星19/20英寸液晶显示器(除931bf/940bw/205bw外)赠送价值128元的三星pleomax时尚水晶鼠标;凡购买三星940/205bw,三星开展了听赏大玩家。931bf液晶显示器,赠送价值268元的三星最新pleomaxusb音箱。

三星就送”这是三星此次促销的最大诱惑,只要你买。并且键盘、鼠标、音箱个个都很经典实用,而且维持的时间也比较长。

从月日至月日,飞利浦此次的促销活动走的平民化”路线。凡购买飞利浦指定型号的17寸和19寸液晶显示器的朋友将分别获赠usb吸尘器和时尚太阳能腕表,市场价值在2050元之间。另外飞利浦还有体验抽奖活动,大奖是spark乐驰轿车,还是非常诱人的但中奖几率和双色球的500万大奖率不相上下,多少还是有点小郁闷。

凡是购买aocf系列和p系列液晶显示器产品都可以获赠遮阳伞一把,aoc促销活动是从月日开始至月日。不等价值的当当网购物卡一张,同时还有机会抽取价值5000元的aoc液晶电视大奖。

着实有些小气,aoc此次仅有两个系列型号参加促销。而且“夏日送伞”虽有心意在但是伞的价值实在不高,至于当当购物卡更是没什么价值,对消费者购买促进作用并不明显。

显示范文篇8

中国企业联合会研究部副主任胡迟研究员认为财政货币政策不必进行大调整

国家统计局日前2010年上半年经济数据。有媒体认为,上半年数据与第一季度数据的差距表明,最近几个月,由于相关部门采取措施为房地产市场降温,我国经济活动显著放缓。中国企业联合会研究部副主任胡迟研究员在接受本报记者采访时表示,二季度经济增长有所回落,应该已在预料之中,而数据所显示的回落幅度要小于人们事先估计的严重程度。

胡迟说,上半年及6月单月的经济数据表明中国经济的走势总体上看是健康、良性的,基本上符合事先人们所希望的那样。一方面,上半年GDP同比增长11.1%,比上年同期加快3.7个百分点,上半年经济数据比人们事先预期的要好。这样看来,至少从目前数据看,前期对中国经济可能出现的二次探底,或下行的风险预计或许有些偏于严重了。当然,这并不表明对二次探底的风险可以完全掉以轻心。另一方面,CPI值6月单月同比增长2.9%,上半年CPI增长2.6%,这一点很可能在许多分析的意料之外,而且是令人“喜大于忧”。事先由于4月份为2.8%,5月份上冲到3.1%,因此,许多分析认为6、7月份CPI值还会继续上行,令人质疑今年政府所确定的3%的目标会被突破。现在的数据表明CPI值在6月份就已经掉头了,虽然这还不足以保证CPI值在未来月份继续向下,但至少就眼前看通胀的压力又减轻了,而且给完成全年3%的目标增添了一定的保证。另外,再从工业、投资、零售增长等数据看,基本上都已经处于以往年份的常规值范围内,显示了经济运行总体上看是趋向正常的。

对于下一步的政策取向,胡迟表示,上半年的经济数据显示宏观经济形势的明朗、清晰程度似乎要大于前两个月。因为在前两个月中,一方面是经济增长有所放缓,另一方面,CPI值单边向上,大有一举突破全年3%目标之势。经济增长与CPI值相反的走势增加了宏观经济的复杂程度,也给宏观调控政策的运用增添了难度。因为要采取加息等紧缩性方向的政策抑制通胀的的话,就有可能伤及经济增长;而如果增加刺激政策的力度维持经济增长的话,则又可能给已经显现的通胀“火上浇油”。那么,目前所显示的经济增长虽有所回落,但幅度较小,而且CPI值比事先预计的要早转向向下。这样的组合是人们所希望见到的,也减轻了宏观调控政策运用的难度和压力,使宏观调控政策可以比前两个月更从容地按照制定政策的基调。具体而言,为保持经济增长,在CPI值已经下行的情况下,紧缩性方向的政策力度不必、也不能继续深化,事先所忧虑的加息的压力又再一次被减缓了,而且在经济运行有一定回落,但总体仍然处于高位的情况下,同样不必如去年那样再运用更加宽松的政策,加大刺激经济的力度。所以,总的政策取向仍然是延续积极的财政政策和适度宽松的货币政策,而不必有政策方向上的大调整。

在此之前,央行货币政策委员会2010年第二季度例会指出,下半年,继续实施适度宽松的货币政策,密切关注经济金融形势的发展,灵活运用多种货币政策工具。胡迟认为,上半年的经济数据表明,央行货币政策委员会对经济形势的判断与政策取向是符合实际情况及合理的。

显示范文篇9

论文摘要:本文详述了一个GIS三维显示系统的开发过程及步骤,在visualc++平台下运用opengl缓存切换技术实现三维坐标下图形的动态显示,提高了数据处理和刷新速度,其数据通过ADO数据库编程连接SQLServer2000软件提供。

论文关键词:OPENGLGIS三维动态显示ADO

1、引言

随着计算机技术及图形学技术的发展,我们可以在计算机中精确的模拟现实世界的任何三维物体,并且实现宏观统筹、规划、研究以及为工程项目提供更好的决策支持。本文实现了采矿区地面沉降的三维模拟,为矿区安全提供决策依据。

OpenGL是个功能强大的底层3D图形库。英文全称是“OpenGraphicsLibrary”,顾名思义,OpenGL便是“开放的图形程序接口”。OpenGL可以与VisualC++紧密接口,便于实现机械手的有关计算和图形算法,可保证算法的正确性和可靠性;OpenGL使用简便,效率高。作为一个工业标准的计算机三维图形软件开发接口,它已广泛应用于游戏开发、建筑、医学、地球科学等领域。

本文的数据提供用的是ADO的数据访问技术,它主要具有易于使用、速度快、内存支出少、兼容性广泛和具有事务处理功能等优点。

2、系统设计

这部分包括数据库连接,和基于OpenGL开发环境的初期设置,详述了一个基于视图/文档结构的应用程序框架设计。

2.1数据库连接设计

引入ADO动态链接库。在使用VisualC++的MFC编程时,MFC并没有提供对ADO的封装类,能够支持ADO编程的是ADO的COM动态链接库msado*.dll。一般在系统盘的\ProgramFiles\CommonFiles\System\ado目录下,该文件是msado15.dll。

引入该文件的方法是在stdafx.h头文件中,添加如下代码:

#import”c:\programfiles\commonfiles\system\ado\msado15.dll”\no_namespacerename(“EOF”,”adoEOF”)

在本程序中的类C***APP的InitInstance()成员函数里添加代码::CoInitialize(NULL);

使用UDL文件连接数据库。设计“数据链接属性”对话框,然后测试连接;

添加一个连接对象智能指针,利用Open函数初始化数据库连接;

添加一个记录集指针,利用此指针将SQLServer2000数据库里表的记录意义读到CArray对象中。

为链接数据库,新建一类CLoadData(),用来建立链接,并且将数据读入CArray对象。本程序所用数据为煤矿开采沉陷区四期地表水准和RTK测量综合数据,并经过预计模型计算后得到格网数据。

2.2OpenGL开发环境设置

新建一个单文档工程文件,并在项目文件中添加opengl32.lib、glu32.lib和glaux.lib三个静态库文件。

在C***View类头文件中添加代码#include”gl\gl.h”、#include”gl\glu.h”、#include”gl\glaux.h”;修改C***View类中的PreCreateWindows()函数,如添加下句

cs.style|=WS_CLIPCHILDREN|WS_CLIPSIBLINGS;来设置窗口风格;修改该类OnCreate()函数中添加如下语句,

PIXELFORMATDESCRIPTORpfd={

sizeof(PIXELFORMATDESCRIPTOR),

1,

PFD_DRAW_TO_WINDOW|

PFD_SUPPORT_OPENGL|

PFD_DOUBLEBUFFER,

PFD_TYPE_RGBA,

24,

0,0,0,0,0,0,

0,0,0,0,0,0,0,

16,

0,0,

PFD_MAIN_PLANE,

0,

0,0,0};

CClientDCclientDC(this);

intpixelFormat=ChoosePixelFormat(clientDC.m_hDC,&pfd);//得到相应的像素格式

BOOLsuccess=SetPixelFormat(clientDC.m_hDC,pixelFormat,&pfd);//指定相应dc的像素格式

m_hRC=wglCreateContext(clientDC.m_hDC);

return0;

一般采用如上设置,也可根据您的需要修改该窗口的像素格式;修改C***View类中的OnDestroy()函数,使得窗口关闭前执行扫尾工作,如添加语句wglDeleteContext(m_hRC);删除一个图形操作描述表;另外,程序的核心部分便是修改该类的OnPaint()函数,调用自定义函数DrawWithOpengl(),完成OpenGL的绘制工作;修改C***View类的OnSize()函数,使其窗口大小发生变化时相应的改变视口大小和投影变换方式,将场景中的物体正确地显示在窗口中;设计DrawWithOpengl()函数,完成绘图主体工作;设计自定义DrawCoor()函数,用以坐标系的建立。

3、技术要点

3.1三维曲面动态显示原理

三维动态显示需要连续地绘制三维曲面并显示场景,用不同的点位数据刷新屏幕视窗。在OpenGL中利用双缓存技术,分配两个帧缓存区,在连续显示三维图像时,一个帧缓冲区中的数据执行绘制图像命令的同时,另一个帧缓存区中的数据进行图像显示。当前可见视频缓存称为前台视频缓存,不可见的正在绘图的视频缓存称为后台视频缓存。当后台视频缓存中的数据要求显示时,OpenGL就将它拷贝至前台视频缓存,显示硬件不断地读可见视频缓存中的内容,并把结果显示在屏幕上。

使用双缓存实现三维曲面动态显示的步骤如下:

(1)设置OpenGL窗口显示属性为双缓存机制:auxInitDisplayMode(AUX_DOUBLE|AUX_RGBA);

(2)利用OpenGL基本绘图命令绘制三维图像,我们将用显示列表提高程序的运行效率。

OpenGL显示列表(DisplayList)是由一组预先存储起来的留待以后调用的OpenGL函数语句组成的,当调用这张显示列表时就依次执行表中所列出的函数语句。它被设计成命令高速缓存,而不是动态数据库缓存。一般来说,显示列表能将许多相邻的矩阵变换结合成单个的矩阵乘法,从而加快速度。

创建列表:

voidglNewList(Gluintlist,Glenmmode);

voidglEndList();

调用列表:

voidglCallList(Gluintlist);

本程序建立了四个显示列表,分别用来显示同一采矿区的四期数据。

(3)初始化动态显示帧数,一帧绘图结束实现缓存拷贝和切换缓存:

auxSwapBuffers();

SwapBuffers(wglGetCurrentDC());

这样多帧循环实现四个时段不同高程沉陷曲面的动态切换显示。

3.2其他技术细节

(1)区域曲面颜色。现实世界中,低洼处的颜色总是比高处要暗,实现这一小功能,可在绘制函数的高程点绘制处添加如下语句,

glColor3f(z*0.008*(-1)+0.4,z*0.008*(-1)+0.4,z*0.008*(-1)+0.4);这是根据本程序设置计算式,即将高程z作为变量写入glColor的参数之中,这样颜色便根据此处高程大小而适时变化了。

(2)将高程值放大一定倍数,这样动态显示效果将更明显。

(3)在开采区曲面上载入树木、房屋、公路等基本设施可增强显示的现实性,如本程序载入一棵绿色的小树,如各图绿色部分。

(4)如下图,视图左下方的蓝色数字可根据画面的切换而动态变化,本程序显示的是各期数据采集的时间。另外,曲面显示在一个三维坐标系下,且标注了坐标值,本程序三个方向的最大最小坐标值是利用自定义函数GetMin()和GetMax()从读入CArray对象的数据中得到。从而增强了视图的可读性。

(5)另外,本程序对曲面做了一个线渲染,以满足不同观测需要,增强了视图的视觉表达现实效果,如图5。

(6)鼠标放大缩小和旋转功能的实现以方便从各个方位观察。

4、实例操作

图1到图4是各期的数据,动态显示在这几组数据间进行切换,图1和图4间数据组越多则动态显示效果越逼真。图5是一个按钮功能的实现,作为矿区线性渲染图以满足不同观测的需要。

图1第一期数据的三维显示

图2第二期数据的三维显示

图3第三期数据的三维显示

图4第四期数据的三维显示

图5第四期数据的三维线渲染

5结束语

本文从系统整体角度详细叙述了一个GIS三维动态成图的过程与步骤。从数据库连接获得数据开始到坐标系的建立,然后成图并用了显示列表技术解决了大数据量双缓存动态切换的速度问题,从而大大提高了程序执行效率。

参考文献:

1、刘刀桂.VISUALC++实践与提高(数据库篇)[M],中国铁道出版,2001.

2、费广正.VisualC++6.0高级编程技术(OpenGL篇)[M],中国铁道出版社,2000.

显示范文篇10

【关键词】控制算法理论;网络图;计算机算法;显示

随着科技的发展,计算机技术被不同行业广泛应用,并发挥相应的效果。计算机技术与图的综合,一方面在定量上有很大优势,另一方面也有定性上存在的优势条件。网络图计算机算法显示过程主要是把控制算法理论与网络图的部分内容进行融合,实现现代化计算机算法显示。本文基于此,研究了控制算法理论和网络图计算机算法显示,以期能够产生相应的效果和借鉴意义。

一、图的存储结构及网络图显示

1、图的存储结构。存储图的组成结构既有关联矩阵结构及邻接矩阵结构,还有邻接表形式及十字链表形式。其中,关联矩阵结构及邻接矩阵结构是数组结构,而邻接表及十字链表形式属于链表结构。另外还要注意的是,邻接表的表示方式有多种,编表节点表达连接次序时要融合邻接表算法。邻接多重形式的网络图效果更好。2、网络图显示。计算机显示理论网络图是融合了C语言的形式,绘制网络图。网络图中不同点的连线存在复杂的关系,可以在屏幕网络图中根据实际要求绘制不同的顶点和确定物理坐标系。[1]在屏幕上画边后,要找出顶点坐标,方便接下来的绘制。完成图显示算法后,可以通过网络图绘制,把不同条边、顶点进行添加,在对一些条边与顶点进行删除,历史记录中有时间记录。如图1所示的是网络图显示与查询系统框架。

二、网络图计算机算法及显示方法

1、点符号全控制算法。全控制算法的进一步发展变化形成点符号基础,点符号全控制算法理论结合了符号控制算法,属于封闭领域组织结构。进行符号全控制算法中,引入极限度,限定出最大及最小的度,使下界实现最全面的的更新。进行读好全控制算法图像的过程中要不断更新下界问题,控制算法理论网络图计算机算法显示满足下界网络图,使符号尽可能具有完整性的效果。做好研究网络图算法工作,还要对思路进行拓展,逐步改进算法。2、边符号控制算法。符号边控制算法提出时间较早,主要是在确定最小符号边控制算法中,不断对网络图控制算法理论进行丰富。随着科技的发展,网络图符号控制算法已经可以实现确定上下界的情况下,再根据特殊网络符号边控制算法,完成网络符号变控制界限算法。[2]3、网络图的显示方法。不管是边符号还是符号,都是网络图的显示方式。在屏幕中绘制网络图时,添加数据输入及点。其中数据的输入需要使用者根据需要把相应的制定输入计算机输入网络图中,还要输入相应的数据信息。另外,创建的邻接多重表中输入数据,完成网络图的数据输出。在输入顶点和边时,还要注意指令中添加顶点和边的数目。添加的顶点具有孤立性,网络没有完全连通时,要根据基础内容再绘制网络图。

三、计算机算法及显示方法的应用改进

网络图在现代化生活中得到广泛运用,并推动社会的发展。符号控制是计算机网络图的一部分,根据符号控制系统的不断发展和完善,可以实现控制计算机显示的目的,同时还能完善查询与显示结合的网络图系统。计算机算法及显示的运用过程中,要根据网络图显示以及查询系统的要求进行。当系统不稳定时,要注意修改系统中网络图。可以修改对定点及边,通过修改能够做到实时查询数据,有效防止出现图像固定化,还防止图像模糊出现。[3]可以根据数据库形式,对数据实现操作。尽快解决数据查询基础,完善系统。不用对象的分析,需要对系统进行全面改进。根据现实中交通网络应用实际,保持计算机算法与显示的有效性。计算机算法与显示的应用,需要大量投入人力资源和知识,还要经过多次实践进行完善。同时还需要与时俱进,根据现代化发展的需要与不同行业的要求,逐步完善网络图技术。依照时展的旋律,完善计算机算法与显示。

综上所述,随着现代化科技的进步和发展,计算机技术受到人们的青睐和广泛应用。实际生活中,结合网络图理论创新与发展,同时重视对相关类型人才的培养,使网络图能够应用到更广泛的领域。

参考文献

[1]吴凯,李鹏,何永强.控制算法理论及网络图计算机算法显示研究[J].现代电子技术,2015,38(17):151-152.

[2]王谢玮.试论控制算法理论和网络图计算机算法显示[J].中国新通信,2015,17(21):80-80.