当前位置:  编程技术>移动开发
本页文章导读:
    ▪②Libgde发动机:HelloWorld项目        ②Libgde引擎:HelloWorld项目Libgde引擎:HelloWorld项目 前面的文章中介绍了整个Libgdx的框架以及框架中的各个模块。那些都是一个概述性的东西,不能没有,看完后对这个引擎有一个大概的了解.........
    ▪ 小小拇指纹膜折射职场众生相        小小指纹膜折射职场众生相 对于公司来说,打卡机就是用来严格约束员工考勤制度的“紧箍咒”。然而上有政策下有对策,如今网上热销的一款指纹膜却成为一些上班族的秘密武器。     .........
    ▪ IC/RFID/NFC 关系与差异       IC/RFID/NFC 关系与区别IC卡 (Integrated Circuit Card,集成电路卡) 有些国家和地区也称智能卡(smart card)、智慧卡(intelligent card)、微电路卡(microcircuit card)或微芯片卡等。它是将一个微电子芯片嵌入符.........

[1]②Libgde发动机:HelloWorld项目
    来源: 互联网  发布时间: 2014-02-18
②Libgde引擎:HelloWorld项目

Libgde引擎:HelloWorld项目

前面的文章中介绍了整个Libgdx的框架以及框架中的各个模块。那些都是一个概述性的东西,不能没有,看完后对这个引擎有一个大概的了解后,接触到实际代码的时候就不会那么陌生。下面就开始今天的内容:

1.搭建Libgex引擎环境。

1).从网址:http://code.google.com/p/libgdx/downloads/list 里面下载这个包:libgdx-0.81.zip。解压到libgdx-0.81文件夹中。

2).参考解压后文件夹下面的README文件(用任何文本编辑器打开),新建一个helloWorld项目。

2.使用Libgdx框架在屏幕上画一个点。

在新建的helloWorld项目中新建一个包:com.helloworld.fneg,在包中新建一个类:MyFirstPoint.java,这个类实现了ApplicationListener接口(此接口在以前文章中有过介绍)。再添加类HelloWorld.java类,这个类中带有main方法。

此时MyFirstPoint.java类中有如下代码:

package com.helloworld.fneg;

import com.badlogic.gdx.ApplicationListener;

import com.badlogic.gdx.Gdx;

import com.badlogic.gdx.graphics.GL10;

import com.badlogic.gdx.graphics.Mesh;

import com.badlogic.gdx.graphics.VertexAttribute;

import com.badlogic.gdx.graphics.VertexAttributes.Usage;

/**

*@Copyright:Copyright (c) 2008 - 2100

*@Company:Sagret

*@Author:fengcunhanfengcunhan@gmail.com

*@Package:com.helloworld.fneg

*@FileName:MyFirstPoint.java

*@Time:2011-1-10

*@User:feng

*/

public class MyFirstPoint implements ApplicationListener {

@Override

public void create() {

// TODO Auto-generated method stub

}

@Override

public void dispose() {

// TODO Auto-generated method stub

}

@Override

public void pause() {

// TODO Auto-generated method stub

}

@Override

public void render() {

}

@Override

public void resize(int arg0, int arg1) {

// TODO Auto-generated method stub

}

@Override

public void resume() {

// TODO Auto-generated method stub

}

}

在类中添加一个成员变量:private Mesh pointMesh;

在create()方法中初始化该变量:

VertexAttribute vertex= newVertexAttribute(Usage.Position, 3, "point_position");

pointMesh=new Mesh(true, 4, 4, vertex);

pointMesh.setVertices(newfloat[]{

0.5f,0.5f,0

});//设置顶点数组

pointMesh.setIndices(newshort[]{0});//设置索引

 

以下对这一些方法做一下说明:

VertexAttribute vertex= newVertexAttribute(Usage.Position, 3, "point_position");

VertexAttribute类从字面理解上来看就是顶点属性类,它做的也是封装顶点信息的功能。

官方文档如下:

com.badlogic.gdx.graphics.VertexAttribute.VertexAttribute(int usage, int numComponents, Stringalias)

Constructs a new VertexAttribute.

Parameters:

usage the usage, used for the fixed function pipeline. Generic attributes are not supported in the fixed function pipeline.

numComponents the number of components of this attribute, must be between 1 and 4.

alias the alias used in a shader for this attribute. Can be changed after construction.

大致的说一下这几个参数的意思:

Usage.Position:指定是一个点的数据。

3:这个点是有3个数据组成

point_position:这个顶点属性的别名。(可以随便写一个)。

pointMesh=new Mesh(true, 4, 4, vertex);

我把这个方法的文档贴上来:

com.badlogic.gdx.graphics.Mesh.Mesh(boolean isStatic, int maxVertices, int maxIndices, VertexAttribute... attributes)

Creates a new Mesh with the given attributes.

Parameters:

isStatic whether this mesh is static or not. Allows for internal optimizations.

maxVertices the maximum number of vertices this mesh can hold

maxIndices the maximum number of indices this mesh can hold

attributes the VertexAttributes. Each vertex attribute defines one property of a vertex such as position, normal or texture coordinate

大致的说一下这几个参数的意思:

True:表示这个图元是静态的

4:表示这个图元一个顶点最多可以有4个数字组成。

4:表示这个图元最多可以有4个索引

vertex:顶点属性对象(上面才提到)。

在render()方法中添加如下代码:

pointMesh.render(GL10.GL_POINTS, 0, 1);

我把这个方法的文档贴上来:

void com.badlogic.gdx.graphics.Mesh.render(int primitiveType, int offset, int count)

Renders the mesh using the given primitive type. offset specifies the offset into vertex buffer and is ignored for the index buffer. Count specifies the number of vertices or indices to use thus count / #vertices per primitive primitives are rendered.

This method is intended for use with OpenGL ES 1.x and will throw an IllegalStateException when OpenGL ES 2.0 is used.

Parameters:

primitiveType the primitive type

offset the offset into the vertex buffer, ignored for indexed rendering

count number of vertices or indices to use

GL10.GL_POINTS:指定画一个点(OpenGL中的东西)

0:数组开始位置是0表示使用顶点数组的全部数据。

1:表示使用1个顶点。

在HelloWorld.java的main方法中添加一下代码:

new JoglApplication(new MyFirstPoint(), "Hello world", 480, 320, false);

右击HelloWorld.java就可以运行了。

3.在Android中运行以上的程序。

新建一个Android项目,按照README中的方法配置好环境。将上述Java项目添加到这个项目里面,然后将自动生成的那个Activity改成继承自AndroidApplication,然后删除setContentView(R.layout.main).添加一行代码:initialize(new MyFirstPoint(), false);然后运行这个Android就行了,是不是很简单啊?哈哈

以上项目的工程源码请从这里下载:http://u.115.com/file/f659b13f2#libgdxHelloWorld.rar

版权所有,转载请注明出处:

 


    
[2] 小小拇指纹膜折射职场众生相
    来源: 互联网  发布时间: 2014-02-18
小小指纹膜折射职场众生相

对于公司来说,打卡机就是用来严格约束员工考勤制度的“紧箍咒”。然而上有政策下有对策,如今网上热销的一款指纹膜却成为一些上班族的秘密武器。

    “以后除非老板天天守着那考勤机,不然休想扣咱辛辛苦苦挣的那么点工资。”——这是很多使用指纹膜的上班族的共同心声。尽管屡试不爽成功骗过考勤,可一旦被识破,不但丢了面子、扣了工资,严重者还将落个被炒鱿鱼的下场。一款小小的指纹膜,折射出喜、怒、哀、愁的职场众生相。

    喜 金蝉脱壳防迟到

    天气越发寒冷,让家住沈阳铁西区保工街的小刘更爱赖床。小刘在某大厦上班,自从单位去年更换了指纹打卡机后,规定每天8:30前员工必须到单位打卡。小刘家离地铁站有段距离,尽管每天7点就从家里出来,可有时候遇到路上塞车、公交车晚点,难免迟到。迟到一次就会罚款30元钱,每月如无迟到记录,就会拿到全勤奖200元。换句话说,这迟到一次的代价是230元。

    因为两次月末迟到,让小刘损失了近500元。在一次浏览网站时,小刘发现了一种名为指纹膜的东西。店家介绍,指纹膜使用高科技纳米材料采集指纹,再将硅胶倒入制成模板里面成型。制作出自己的指纹膜后,就可以以假乱真,骗过打卡机的“光眼”。小刘觉得,这款号称打卡机克星的产品,就是为像自己这样的上班族发明的。按照店主的指导,小刘提取了个人的指纹,寄给商家,没过几天,就收到商家寄来的指纹膜,按到打卡机上一试,果然有效。小刘把花了100元购买的指纹膜放在了离公司较近的王姐那里,让王姐每天打卡的同时顺便帮她代为打卡,自己则可以多睡会懒觉。打那之后,小刘每个月都能拿到全勤奖,她觉得自己这钱花的很值,就算日后跳槽,也可以接着用。

    怒 开除打卡作弊者

    沈阳市三好街一家电子产品公司技术部负责人介绍,公司在员工手册里已将利用指纹膜打卡列在其中。该公司会定期抽查员工的到岗情况,如果员工打了卡,而没有到岗,将会追查原因:看是不是使用了指纹膜,如果有人协助他用指纹膜打卡作弊,将一并受到处罚。

    目前,比较先进的指纹识别系统可通过判别该指纹是否“属于生命体”而非模仿物来判断真伪,其他一些也有指纹加数码拍照的系统,而这些设备一般只是应用在一些特殊部门,如果仅仅应用在考勤方面成本过高。因此,公司只能加强人为检查考勤来应对。考勤制度同样也是员工诚信的镜子,如果真的作弊,恐怕不是罚钱那么简单,严重的会被开除。

    哀 露马脚被扣奖金

    大连人张先生在高新园区一家软件公司上班。公司的管理制度很严格,每天早八晚五的打卡,迟到半个小时之内就要罚10元钱。不久前,张先生找到几名要好的同事各团购了一套指纹膜。使用一次后,效果不错。可有一天领导查人,打卡记录显示在岗,人却不在,结果露了马脚。在一次召集大家开会时,领导很生气并点名批评了张先生。最后,张先生交了一份深刻的检讨,并被扣除满勤奖才算了事。

    沈阳某广告公司孙经理告诉记者,由于有些业务员为了迟到或早退虚开假条,他们公司于去年年初购买了考勤打卡机。对于指纹膜,孙经理表示听说过有的公司为了防止指纹膜捣乱,高价购买升级版的脸部识别机。他觉得,现在多数公司的指纹打卡机功能基本类似,存在钻空子的可能。公司依靠员工互相监督机制,特意设立了举报奖金。一经查实,会将作弊员工的奖金以分钟扣掉,每迟到1分钟,扣1元钱。而扣的钱全部充公。

    可对于使用过指纹膜的上班族,有着属于自己的无奈。小陈说:“经常要加班,有的时候甚至要到半夜以后。但是公司却有严格的考勤制度,如果上班不打卡,我的收入就会有损失。碰到交通堵车,又不能为了不迟到而闯红灯不顾安危。这是个员工和企业需要找办法解决的问题。”

    愁 欺骗公司又泄露隐私

    辽宁腾达律师事务所律师李雨泉告诉记者,“上班族买指纹膜让人代替考勤,这是一种欺骗行为。如果用指纹膜打卡的行为发生多次,最后被单位查出‘算总账’,很可能达到旷工、迟到的上限而被辞退,也可能因对单位欺诈而被辞退。”

    李雨泉说,目前还没有禁止生产和出售指纹膜的相关法律条文,不过这种行为是弄虚作假的表现,不仅侵犯了单位利益,还会对个人的信誉带来危害。指纹属于个人隐私,万一被不法分子利用,小则被套取个人信息资料,大则可能遭受经济损失。一旦指纹膜被不法分子拾到后复制利用,进而从事非法活动的话,还会增加警方破案的难度


    
[3] IC/RFID/NFC 关系与差异
    来源: 互联网  发布时间: 2014-02-18
IC/RFID/NFC 关系与区别
IC卡 (Integrated Circuit Card,集成电路卡)
有些国家和地区也称智能卡(smart card)、智慧卡(intelligent card)、微电路卡(microcircuit card)或微芯片卡等。它是将一个微电子芯片嵌入符合ISO 7816标准的卡基中,做成卡片形式。所以非接触式IC卡又被称为射频卡或者电子标签。IC卡是指集成电路卡,一般用的公交车卡就是IC卡的一种,也应用在门禁管理、身份证明和电子钱包。IC卡有别于磁卡,所以说IC卡消磁纯属伪科学!简单来说,其工作原理就是读卡器发射一个根据信息变化的电磁波。卡片内部的感应线圈把这个电磁波转换成感应电流,用以传递信息和驱动芯片工作。
射频识别即RFID(Radio Frequency IDentification)
又称电子标签、无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。常用的有低频(125k~134.2K)、高频(13.56Mhz)、超高频,无源等技术。RFID读写器也分移动式的和固定式的,目前RFID技术应用很广,如:图书馆,门禁系统,食品安全溯源等。
NFC是Near Field Communication缩写,即近距离无线通讯技术。
由飞利浦公司和索尼公司共同开发的NFC是一种非接触式识别和互联技术,可以在移动设备、消费类电子产品、PC 和智能控件工具间进行近距离无线通信。NFC 提供了一种简单、触控式的,可以让消费者简单直观地交换信息、访问内容与服务。

以上介绍我们可以知道IC卡是一种存储数据的卡,而RFID是一种通讯技术,IC卡属于RFID的一种物理形式。NFC是由RFID演变出来的,向下兼容RFID,自然也兼容IC卡。

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3