Stone的专栏

个人主页:http://njchenyi.googlepages.com/

用户操作
[即时聊天] [发私信] [加为好友]
陈轶ID:njchenyi
239398次访问,排名292,好友11人,关注者49人。
学习经历
学校 香港科技大学
描述 信息工程
日期 2006-8-19 -- 2007-8-17
学历 硕士

学校 荷兰Fontys应用科学大学
描述 信息工程
日期 2002-9-1 -- 2006-7-4
学历 本科

工作经历
南京烽火通讯发展有限公司
2007.8 – 至今
产品平台JAVA版
 主要职责:
系统JAVA版平台:平台为模块提供了一个基类。提供了通讯,日志,告警,跟踪,定时器接口,为模块读取参数配置。可以实时停止,运行,挂起模块。实时修改,保存模块和平台配置。平台基础服务模块化(ORB,IPC,Supplier,Consumer,数据库连接池),提高平台应用的灵活性。
系统监控平台:通过SSH连接Linux服务器启动停止Corba命名服务和通道服务,启动停止平台,通过Corba管理接口查看平台各个模块信息,状态,并进行控制。通过不同的通道查看平台的日志,告警,跟踪信息。
ORB模块:CORBA核心模块,注册性能统计命名项,注册ADMIN管理接口命名项,持久化Corba对象,绑定Corba客户端监听地址。
IPC模块:平台间通讯模块,注册IPC命名项,实现Corba接口,提供Corba通讯能力。
Supplier模块:使用Corba NotificationService,为平台提供日志,告警,跟踪发送能力。
Consumer模块:使用Corba NotificationService,为平台提供日志,告警,跟踪接收能力。
数据库连接池模块:为平台提供同时连接不同主机不同类型数据库的能力。
性能统计模块:根据数据库中的各模块不同采集项配置实时监测各个模块的各项统计值,存入数据库。并能对比设定的门限阀值,在超出阀值的时候发出告警信息。
性能统计辅助模块:因为系统设计的问题,某些性能采集项无法从现有模块中获取,此模块作为修能统计的辅助模块针对无法获取的性能采集项做了特殊处理,供性能统计模块采集。
参与了性能统计相关数据库的设计,更改,维护。
 主要应用技术:
1. Java—JDBC,JAVA多线程,Java中部分类库(如io、util,concurrent等)等技术
2. Corba
3. XML操作
4. SSH连接
5. 数据库—MySQL,Oracle
6. Linux—Redhat9
 取得成果:MAS2.0系统已经通过中国移动设计院的测试
中国电信首期移动办公工程建设项目正在部署


企业内部协同软件
 主要职责:
熟悉Jabber和XMPP通讯协议,负责开源服务器Openfire的代码理解和修改,制作Openfire的插件用以支持用户需求的多层组结构。配合客户端的代码修改和调试,与客户端协商进行协议的扩展。
 主要应用技术:
1. Java
2. 数据库—MySQL
3. Openfire—Openfire(原来的Wildfire)是一个跨平台,采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。
4. Jabber/XMPP—Jabber 是著名的Linux即时通讯服务服务器,它是一个自由开源软件,能让用户自己架即时通讯服务器,可以在Internet上应用,也可以在局域网中应用。Jabber最有优势的就是其通信协议,可以和多种即时通讯对接。XMPP(Extensible Messaging and Presence Protocol)由Jabber软件基金会开发,最早在Jabber上实现。
 取得成果:项目一期目标已经完成,正在进行产品的整合
荷兰皇家飞利浦公司
2006.1 – 2006.7 未来家庭交互式多媒体系统
 项目描述:该项目针对将多种多媒体产品(高清晰度电视,蓝光DVD)和因特网,P2P网络组成家庭多媒体中心。用户摒弃了传统的鼠标键盘,改为更人性化的操作方式。用户通过手势可以在不同的设备播放媒体。
 主要职责:在Linux系统下研究手势识别输入系统,使用JAVA语言编写系统通用接口程序,并实现用户图形界面。
 主要技术:
1. JAVA—JAVA2D,JAVA3D图形界面开发,JAVA部分类库
2. Linux—Fedora Core4
3. Linux硬件驱动—触摸屏驱动程序的编译以及部分改写
4. HandVu—手势识别开源软件
 取得成果:经过后续人员的开发完善,该系统于2007年1月在巴黎举行的ITEA(Information Technology for European Advancement)研讨会上获得最高奖项
njchenyi的文章
原创 199 篇
翻译 1 篇
转载 55 篇
评论 88 篇
njchenyi的公告
MSN:njchenyi@hotmail.com Gmail:njchenyi@gmail.com 我的QQ:24726542
最近评论
hitesh:Do you have the CSIT571 Assignment 2 and any Examination Feedback?
flying:让我领悟了很多
简直是一语惊醒梦中人啊
谢谢啦
呵呵
bangsen:请问楼主,你的 “ servertool > register -server PersistentServer -applicationName s1
-classpath path_to_server_class_files

The servertool registers the server, assigns……
bangsen:请问楼主,你的 “ servertool > register -server PersistentServer -applicationName s1
-classpath path_to_server_class_files

The servertool registers the server, assigns……
bangsen:请问楼主,你的 “ servertool > register -server PersistentServer -applicationName s1
-classpath path_to_server_class_files

The servertool registers the server, assigns……
文章分类
收藏
    相册
    定息贷款
    多边形裁剪
    图片
    个人链接
    MSN Space
    个人主页
    个人相册
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 OPENGL中GLU和GLUT工具箱收藏

    新一篇: JDK6的新特性之一:Desktop类和SystemTray类 | 旧一篇: CSIT 540 Assignment 2 -- Hierarchical Modeling

    GLUT工具箱提供几种图形3维图形的函数:

    void glutWireSphere(GLdouble radius, GLint slices, GLint stacks);  丝状球
    void glutSolidSphere(GLdouble radius, GLint slices, GLint stacks); 实心球
    void glutWireCube(GLdouble size); 丝状立方体
    void glutSolidCube(GLdouble size); 实心立方体
    void glutWireTorus(GLdouble innerRadius, GLdouble outerRadius,
    GLint nsides, GLint rings); 丝状花环
    void glutSolidTorus(GLdouble innerRadius, GLdouble outerRadius,

    GLint nsides, GLint rings); 实心花环
    void glutWireIcosahedron(void); 丝状20面体
    void glutSolidIcosahedron(void); 实心20面体
    void glutWireOctahedron(void); 丝状8面体 
    void glutSolidOctahedron(void); 实心8面体
    void glutWireTetrahedron(void); 丝状4面体
    void glutSolidTetrahedron(void); 实心4面体                                  
    void glutWireDodecahedron(GLdouble radius); 丝状12面体
    void glutSolidDodecahedron(GLdouble radius); 实心12面体
    void glutWireCone(GLdouble radius, GLdouble height, GLint slices,
    GLint stacks); 丝状圆锥体
    void glutSolidCone(GLdouble radius, GLdouble height, GLint slices,

    GLint stacks); 实心圆锥体
    void glutWireTeapot(GLdouble size); 丝状茶壶
    void glutSolidTeapot(GLdouble size);
    实心茶壶

    如果需要用到长方体那就用glScalef(x,y,z); 做自己想要的长方体,这儿的x,y,z分别对应x,y,z轴的缩放比例

    不过居然没有看到圆柱体的函数。在网上搜索不少人说到的都是用一个aux开头的辅助函数库。但是这有个很大的缺陷,已经被GLUT库代替了

    举个创建2次对象的简单例子:
    //
    创建一个半径为5,在经线和纬线方向细分数为10的球体
    GLUquadricObj *pobj;
    pobj=gluNewQuadric();
    gluQuadricDrawStyle(pobj,GLU_LINE);//
    确定几何体的绘制模式(GLU_LINE)
    gluSphere(pobj,5,10,10);
    创建圆环盘,innerRadius,outerRadius分别指定了内径和外径创建圆柱体创建球体


    下面是几个用于创建简单的2次曲面的GLU函数:
    GLUquadricObj* gluNewQuadric();
    //
    创建一个新的2次曲面对象,并返回一个指向该对象的指针
    void gluDeleteQuadric(GLUquadricObj*);
    //
    删除又2次对象指针指定的2次曲面


    void gluSphere(GLUquadricObj* pobj,GLdouble radius,GLint silces,GLint stacks);
    //


    void gluCylinder(GLUquadricObj* pobj,GLdouble baseRadius,GLdouble topRadius,GLint slices,GLint stacks);
    //


    void gluDisk(GLUquadricObj* pobj,GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);
    //



    下面几个是创建GLUT对象的函数,是对GLU的补充
    void glutWireSphere(GLdouble radius,GLint slices,GLint stacks);
    //
    创建线框球体
    void glutSolidSphere(GLdouble radius,GLint slices,GLint stacks);
    //
    创建实心球体
    void glutWireCone(GLdouble baseRadius,GLdouble height,GLint slices,GLint stacks);
    void glutSolidCone(GLdouble baseRadius,GLdouble height,GLint slices,GLint stacks);
    void glutWireTorus(GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);
    void glutSolidTorus(GLdouble innerRadius,GLdouble outerRadius,GLint slices,GLint stacks);

    仔细搜索了一下,找到了比较详细的介绍

    OpenGL函数库相关的API有核心库(gl)、实用库(glu)、辅助库(aux)、实用工具库(glut)、窗口库(glx、agl、wgl)和扩展函数库等。从图1可以看出,gl是核心,glu是对gl的部分封装。glx、agl、wgl 是针对不同窗口系统的函数。glut是为跨平台的OpenGL程序的工具包,比aux功能强大。扩展函数库是硬件厂商为实现硬件更新利用OpenGL的扩展机制开发的函数。下面逐一对这些库进行详细介绍。
    1.  OpenGL核心库
    核心库包含有115个函数,函数名的前缀为gl。
    这部分函数用于常规的、核心的图形处理。此函数由gl.dll来负责解释执行。由于许多函数可以接收不同数以下几类。据类型的参数,因此派生出来的函数原形多达300多个。核心库中的函数主要可以分为以下几类函数。
    绘制基本几何图元的函数。如绘制图元的函数glBegain()、glEnd()、glNormal*()、glVertex*()。
    矩阵操作、几何变换和投影变换的函数。如矩阵入栈函数glPushMatrix()、矩阵出栈 函数glPopMatrix()、装载矩阵函数glLoadMatrix()、矩阵相乘函数glMultMatrix(),当前矩阵函数glMatrixMode()和矩阵标准化函数glLoadIdentity(),几何变换函数glTranslate*()、glRotate*()和glScale*(),投影变换函数glOrtho()、glFrustum()和视口变换函数glViewport()等等。
    颜色、光照和材质的函数。如设置颜色模式函数glColor*()、glIndex*(),设置光照效果的函数glLight*() 、glLightModel*()和设置材质效果函数glMaterial()等等。
    显示列表函数、主要有创建、结束、生成、删除和调用显示列表的函数glNewList()、 glEndList()、glGenLists()、glCallList()和glDeleteLists()。
    纹理映射函数,主要有一维纹理函数glTexImage1D()、二维纹理函数glTexImage2D()、 设置纹理参数、纹理环境和纹理坐标的函数glTexParameter*()、glTexEnv*()和glTetCoord*()等。
    特殊效果函数。融合函数glBlendFunc()、反走样函数glHint()和雾化效果glFog*()。
    光栅化、象素操作函数。如象素位置glRasterPos*()、线型宽度glLineWidth()、多边形绘制模式glPolygonMode(),读取象素glReadPixel()、复制象素glCopyPixel()等。
    选择与反馈函数。主要有渲染模式glRenderMode()、选择缓冲区glSelectBuffer()和反馈缓冲区glFeedbackBuffer()等。
    曲线与曲面的绘制函数。生成曲线或曲面的函数glMap*()、glMapGrid*(),求值器的函数glEvalCoord*() glEvalMesh*()。
    状态设置与查询函数。主要有glGet*()、glEnable()、glGetError()等。
    2.  OpenGL实用库The OpenGL Utility Library (GLU)
    包含有43个函数,函数名的前缀为glu。
    OpenGL提供了强大的但是为数不多的绘图命令,所有较复杂的绘图都必须从点。线、面开始。Glu 为了减轻繁重的编程工作,封装了OpenGL函数,Glu函数通过调用核心库的函数,为开发者提供相对简单的用法,实现一些较为复杂的操作。此函数由glu.dll来负责解释执行。OpenGL中的核心库和实用库可以在所有的OpenGL平台上运行。主要包括了以下几种。
    辅助纹理贴图函数,有gluScaleImage() 、gluBuild1Dmipmaps()、gluBuild2Dmipmaps()。
    坐标转换和投影变换函数,定义投影方式函数gluPerspective()、gluOrtho2D() 、gluLookAt(),拾取投影视景体函数gluPickMatrix(),投影矩阵计算gluProject()和 gluUnProject()等等。
    多边形镶嵌工具,有gluNewTess()、 gluDeleteTess()、gluTessCallback()、gluBeginPolygon() gluTessVertex()、gluNextContour()、gluEndPolygon()等等。
    二次曲面绘制工具,主要有绘制球面、锥面、柱面、圆环面gluNewQuadric()、gluSphere()、gluCylinder()、gluDisk()、gluPartialDisk()、gluDeleteQuadric()等等。
    非均匀有理B样条绘制工具,主要用来定义和绘制Nurbs曲线和曲面,包括gluNewNurbsRenderer()、gluNurbsCurve()、gluBeginSurface()、gluEndSurface()、gluBeginCurve()、gluNurbsProperty()等函数。
    错误反馈工具,获取出错信息的字符串gluErrorString().
    3.  OpenGL辅助库
    包含有31个函数,函数名前缀为aux。
    这部分函数提供窗口管理、输入输出处理以及绘制一些简单三维物体。此函数由glaux.dll来负责解释执行。创建aux库是为了学习和编写OpenGL程序,它更像是一个用于测试创意的预备基础接管。Aux库在windows实现有很多错误,因此很容易导致频繁的崩溃。在跨平台的编程实例和演示中,aux很大程度上已经被glut库取代。OpenGL中的辅助库不能在所有的OpenGL平台上运行。
    辅助库函数主要包括以下几类。
    窗口初始化和退出函数,auxInitDisplayMode()和auxInitPosition()。
    窗口处理和时间输入函数,auxReshapeFunc()、auxKeyFunc()和auxMouseFunc()。
    颜色索引装入函数,auxSetOneColor()。
    三维物体绘制函数。包括了两种形式网状体和实心体,如绘制立方体auxWireCube()和 auxSolidCube()。这里以网状体为例,长方体auxWireBox()、环形圆纹面auxWireTorus()、圆柱auxWireCylinder()、二十面体auxWireIcosahedron()、八面体auxWireOctahedron()、四面体auxWireTetrahedron()、十二面体auxWireDodecahedron()、圆锥体auxWireCone()和茶壶auxWireTeapot()。
    背景过程管理函数auxIdleFunc()。
    程序运行函数auxMainLoop()。
    4.  OpenGL工具库 OpenGL Utility Toolkit
    包含大约30多个函数,函数名前缀为glut。
    glut是不依赖于窗口平台的OpenGL工具包,由Mark KLilgrad在SGI编写(现在在Nvidia),目的是隐藏不同窗口平台API的复杂度。 函数以glut开头,它们作为aux库功能更强的替代品,提供更为复杂的绘制功能,此函数由glut.dll来负责解释执行。由于glut中的窗口管理函数是不依赖于运行环境的,因此OpenGL中的工具库可以在X-Window, Windows NT, OS/2等系统下运行,特别适合于开发不需要复杂界面的OpenGL示例程序。对于有经验的程序员来说,一般先用glut理顺3D图形代码,然后再集成为完整的应用程序。
    这部分函数主要包括
    窗口操作函数,窗口初始化、窗口大小、窗口位置等函数glutInit() glutInitDisplayMode() glutInitWindowSize() glutInitWindowPosition()等。
    回调函数。响应刷新消息、键盘消息、鼠标消息、定时器函数等,GlutDisplayFunc() glutPostRedisplay() glutReshapeFunc() glutTimerFunc() glutKeyboardFunc() glutMouseFunc()。
    创建复杂的三维物体。这些和aux库的函数功能相同。创建网状体和实心体。如glutSolidSphere()、glutWireSphere()等。在此不再叙述。
    菜单函数。创建添加菜单的函数GlutCreateMenu()、glutSetMenu()、glutAddMenuEntry()、glutAddSubMenu() 和glutAttachMenu()。
    程序运行函数,glutMainLoop()。
    对于windows或者X-windows的专用库就不说了,接触JAVA太多喜欢跨平台的东西

    发表于 @ 2007年03月19日 20:25:00|评论(loading...)|编辑

    新一篇: JDK6的新特性之一:Desktop类和SystemTray类 | 旧一篇: CSIT 540 Assignment 2 -- Hierarchical Modeling

    评论

    #kkun_3yue3 发表于2007-08-16 11:08:08  IP: 219.143.46.*
    不错,,,学习了
    #fonhal 发表于2007-10-17 14:11:04  IP: 220.165.248.*
    学习中..谢谢了
    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © njchenyi