#
一日我接到陌生电话,一女孩笑嘻嘻的问我关于lah的情况,我觉得很不对劲,后来便一个劲的问我lah到底是不是结婚了,家在哪里,我想完了,又一个无知少女被骗去了感情和正操,现在骗子很多尤其是jx的。 我已经跟lah分家了许久,这个女子是在网络上找到我的信息,由于lah这个骗子每个周末都要回杭州,关闭一切通信工具,令此女子发狂的找寻他的下落。 我很不理解现在的少女为何这么的无知,连开房费都舍不得花的人如何泡上20来岁的大学女生的。我想lah是利用了人的怜悯的弱点,装可怜,装出生如何的凄惨,经历坎坷的求学之路,遭受前女友的抛弃,立志发奋努力,创就自己的事业,不要1000w不结婚,要结婚娶她为妻,虽然此女子一直是倒贴,但也乐不思蜀。 可是lah不地道的地方在于玩弄女性就非常不道德了,一方面要每个礼拜回去交公粮,一方面又在外面装君子,垃圾货色遭人唾弃。 后来那女孩找lah的老婆去了,闹腾了一番居然没事,原来lah跟他老婆交代我跟他有矛盾,是我找了这个女孩故意去闹腾的,lah老婆居然还信了,真是让我哭笑不得 少女哭诉录音1 : http://118.126.7.153/download/cry1.amr 少女哭诉录音1 :http://118.126.7.153/download/cry2.amr
手头一份08年的mapinfo格式中国全图,容量10G 去年3个月时间启动swMap开发计划,就是使用这份地图,目的是重新设计地图引擎,考虑支持嵌入式环境,桌面和web地图的需求, 开发语言c++,地图处理采用python+postgis python现在成了手头开发、管理、协作的第一号助手,几乎没有特定要求的需求全部采用python
在家干了半年的工作成果和流程: 1. tab2tab : 将 mif转换成tab文件 2. ogr2gr 将tab转换成shp 3. arcgis9.1对shp进行验证和修复,这一步非常重要,在之后采用geos进行集合计算时,如果错误的图元导致很多操作的失败 4. shp2pgsql,psql 将shp导入postgis数据库 5. python对数据进行过滤,修正,裁剪 6. python加工地图数据存储到自己设计的地图存储文件中(网格存储) 7. wxwidgets开发地图渲染服务器,提供web、ice、socket访问接口,并实现wms,wfs一些基本协议功能 8. 开发前端flex地图显示组件,类似google map flex一样提供cache buffered功能,使地图显示来得更平滑 9. openlayers开发展示前端,通过wms访问swMapserver 10.最终叠加不同的应用,jquery/django/pgsql开发webservice应用
至今未加入消锯齿、Halo等绘制效果,绘制道路还有不太美观,实在是没时间 计划增加远程视频
自己采用wxwidgets开发过3个项目,1个是50w级别还有2个是10w一下的项目,深深的被wx给刺痛了。 wx的确不如QT开发效率要来的高,包括质量、稳定性、扩展性、功能丰富程度都远远不及QT。 由于商业公司的支持,QT这多花绽放出了美丽的色彩,而wx呢,3.0等待到了现在还没有拉出来。 很多人经常比较wx和qt,我认为如果做应用软件,可以用用wx,但是如果是个系统的项目,用wx倒后来将是个非常痛苦的事情, 往往开发周期延长,开发难度越陷越深,想深层次的挖掘一些功能却是束手无策,很多次都想推到重来,以至于想用mfc重新来过。 wx到2.8.9版本,许多类库还是非常的不稳定,必须thread,stack等等,在调试系统的时候往往会出现摸不着头脑的问题。 当初选择开发方案时着实的没有考虑清楚,导致后来开发随着需求的变动把程序员搞得心力憔悴。 wx看上去比mfc封装了很多东西,但是模式还是mfc的哪一套,wx没有官方的ui的设计工具,DialogBox算是比交有点响头的ui辅助 软件,但在用过之后才觉得非常的无助。 随着项目需求的修改和扩展,系统有近百个Form要维护,几百个组件维护需要很大的体力劳动,同mfc一般一个ID绑定一个对象,代码量极具膨胀; QT就表现得非常优雅,将资源ID等业务不相关得东西通过对象的connect都屏蔽掉了,qt也提供了比骄强的IDE,所有操作如同在BCB一般的干净利落。
监控读取AWS,6466磁带设备的事件通知邮件,进行过滤压制之后传送给ovou系统
Telmail.sh,telmail.pl为两个邮件发送例程
1 # -*- coding: gb2312 -*- 2 3 ''' 4 summary: 5 1.6466磁带库报警处理 6 2.AWS报警处理 7 传输接口: smtp 8 过滤邮件内容,生成事件到ovo 9 author : zhangbin 10 date: 2006.03.04 11 company: ultrapower.com.cn 12 ''' 13 14 15 import os 16 import sys 17 import socket 18 import time 19 import poplib 20 import base64 21 import string 22 import re 23 from conf import * 24 25 26 27 aws_field_map={'Information':'normal', 28 'Warning':'warning', 29 'Degraded':'major', 30 'Critical':'critical', 31 'Fatal':'critical' 32 } 33 ME='szmail' 34 this = modlist[ME] 35 36 host=this['host'] 37 user=this['user'] 38 passwd =this['passwd'] 39 40 41 def Print(msg): 42 lp(ME,msg) 43 44 45 def process_AWS(title,msg): 46 try: 47 app='AWS' 48 node='' 49 obj='' 50 severity='' 51 msg_text='' 52 53 print '>>>',msg 54 title.index('CSF Fault Detected') 55 lines = msg.split('\n') 56 57 for l in lines: 58 r = re.match('.*Fault id.*?:\s*(.*)/(.*)',l) 59 if r: 60 node = r.group(1) 61 obj = r.group(2) 62 continue 63 r = re.match('.*Severity.*?:\s*(\w+)',l) 64 if r: 65 f= r.group(1).strip() 66 if aws_field_map.has_key(f): 67 severity = aws_field_map[f] 68 continue 69 r = re.match('.*Synopsis.*?:\s*([\w|\s]+)',l) 70 if r : 71 msg_text=r.group(1) 72 cmd = "opcmsg app=AWS " 73 if node: 74 cmd = cmd+ " node=%s "%node 75 if obj: 76 cmd = cmd+ " obj=%s "%obj 77 if severity: 78 cmd= cmd + " severity=%s "%severity 79 if msg_text: 80 cmd = cmd + ' msg_text="%s" '%msg_text 81 print "execute command:%s"%cmd 82 except: 83 return False 84 return True 85 86 87 88 def process_TAPE(title,msg): 89 ''' for 6466 tape monitor ''' 90 91 92 def mail_sender(body): 93 pass 94 95 def mail_hdr_section(section,body): 96 title='' 97 try: 98 n = body.index('') 99 for i in range(n): 100 try: 101 occ = body[i].index(section+':') 102 title= body[i][ (occ+len(section+':')):] 103 except: 104 continue 105 except: 106 pass 107 return title 108 109 def mail_context(encode,body): 110 ''' extract mail body text from string-list 111 multiple charset will be encoded to base64,but plain text will not 112 ''' 113 context ='' 114 try: 115 n = body.index('') 116 lines = body[n:] 117 if encode.find('base64') >= 0 : 118 context = base64.decodestring(context) 119 else : 120 context = string.join(lines,'\n') #maybe 7bit 121 except: 122 pass 123 return context 124 125 def process(c,m): 126 ''' c -- mail number, 127 m -- mail object 128 提取邮件标题和邮件内容 129 ''' 130 for i in range(1): 131 print ">>>>Process %d"%(i+1) 132 list = m.retr(i+1) 133 title = mail_hdr_section('Subject',list[1]) 134 encode = mail_hdr_section('Content-Transfer-Encoding',list[1]) 135 print list[1] 136 context = mail_context(encode.strip(),list[1]) 137 if not process_AWS(title,context): 138 process_TAPE(title,context) 139 #m.dele(i+1) 140 141 def main_entry(): 142 Print('OK+,%s start up!'%ME) 143 while True: 144 try: 145 m = poplib.POP3(host) 146 m.user(user) 147 m.pass_(passwd) 148 c = m.stat()[0] 149 if c : 150 print ">> Detected %s Letters!"%(c) 151 process(c,m) 152 m.quit() 153 except: 154 pass 155 time.sleep(this['wait']) 156 157 if __name__=='__main__': 158 main_entry() 159 160
tomail() { sleep 3 echo "helo zhangbin" sleep 2 echo "mail from:zhangbin@ultrapower.com.cn" sleep 2 echo "rcpt to:zhangbin@ultrapower.com.cn" sleep 2 echo "data" sleep 2 echo "this is test context!\n" echo ".\n" sleep 5 echo "quit\n" echo "" } tomail | telnet 219.238.168.131 25
已经能去的地方很少了,自己的msn空间这段时间也无法登录了 facebook,yutobe之类的更别想了,中国人就是这样,作践自己,政府也够下贱的,井底之蛙,那么多的贪官巨吏不去抓,证券股票市场那么黑暗都不去整治,只会整日填塞老百姓的耳目,又有何用呢。 可悲之极,失望之极 马路上跑的audi A6越来越多,暴发户、二奶、公务员都趾高气扬的凌驾于众多百姓阶层之上,一个村长年收入可以达到50w,土地成为敛财的工具,一次换届选举可以以百元换票,如果我有把AK便可狂扫天下之淫邪之徒。 东航每年上百亿的亏损国家补贴,可退休的客机干部可以拿着6k的退休金很爽的生活。很多现象我都想不明白,所谓的干部领导在职期间到底做了些什么,智力付出上不如科研人员那么,体力更不如工人阶级,凭什么高官厚禄无忧虑的过活,入党就如封建科举制度一样,便可步入仕途,退休了还可以活的以1,20倍与我等父辈的津贴
地图比例表: G_SCALE_UNITS=[ 0.200000, 0.600000, 1.000000, 2.000000, 4.000000, 8.000000, 15.000000, 30.000000, 60.000000, 120.000000, 300.000000, 600.000000, 1200.000000, 2000.000000, 3000.000000, 5000.000000] 表示 1个像素代表0.2米 屏幕通常的DPI 是每英寸 96像素 每英寸 2.54厘米 这样就能换算出显示比例了: 0.2*100/2.54*96 = 755.9 = 756 也就是显示比例是 1:756
打开google,照抄他的绘制风格,没有启用小锯齿功能,所以画出来也是比较难看 基本完成了道路的曲线绘制 google的Skia看了看,似乎比cario更轻量级,不过文档也是只能通过doxygen来看了,资料还是太少,还是用cairo来小锯齿吧 选择一个好的字体也许效果会好很多 等着下一版本的优化结果
google的Flex SDK相当的容易,摆弄几下就oK了,不过操作地图数据的自由度没有那么好了,就得找google了。 现在通过验证,google也是预先绘制好图片,然后再请求拼接返回的,只有这种非实时渲染的方式才能保证服务器的高实时性和操作的流畅性能。 现在自己也实现flex客户端缓冲和地图预处理网格,通过http请求,后端php就可以轻巧的拼接请求的地理区域图块返回到flex客户端,操作异常的流畅,感觉非常好。 最大的问题就是预处理的数据存储容量和处理时间。每一个显示比例都将进行全部预绘制地理图,一个上海在最小比例尺下将生成几十万张jpg图片,对地图的存储空间要求非常的高,机器也是一场的繁忙,16级别显示花费1天时间产生,生成是痛苦的,但使用效果是非常的爽!
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:maps="com.google.maps.*"> <mx:Canvas x="44" y="73" width="200" height="200" backgroundColor="0xf7eeef"> </mx:Canvas>
<mx:Script> <![CDATA[ import com.google.maps.*; import com.google.maps.controls.*; private function onMapReady(event:MapEvent):void { //设置地图显示的坐标,以及地图显示的类型. //MapType有4种类型分别是 //HYBRID_MAP_TYPE 混合模式, //NORMAL_MAP_TYPE 标准模式, //PHYSICAL_MAP_TYPE自然地图模式, //SATELLITE_MAP_TYPE卫星模式 this.map.setCenter( new LatLng(31.0729,121.49)/*经纬度*/, 16, MapType.NORMAL_MAP_TYPE); var zoomctrl:ZoomControl = new ZoomControl(); map.addControl( zoomctrl); map.addControl(new PositionControl()); map.addControl(new MapTypeControl()); //zoomctrl.setControlPosition( }
]]> </mx:Script>
<maps:Map xmlns:maps="com.google.maps.*" id="map" mapevent_mapready="onMapReady(event)" width="600" height="600" key="ABQIAAAAEUQL_IqwWX4ZOcEtw0r7whRi_j0U6kJrkFvY4-OX2XYmEAa76BQc0gZPMJROw3owe9BMoRHM0FER_A" />
</mx:Application>
|