Commit 95b3ad0b by 徐丛奇

xxxxx

parent 7f926134
...@@ -11,7 +11,11 @@ import java.util.List; ...@@ -11,7 +11,11 @@ import java.util.List;
public class EyeConfig { public class EyeConfig {
public static final String EYE_SETTING_KEY = "eye_setting_key";//小数法/五分法 public static final String EYE_SETTING_KEY = "eye_setting_key";//小数法/五分法
public static final int EYE_SETTING_1= 1;//小数法
public static final int EYE_SETTING_5 = 5;//五分法
public static final String EYE_DISTANCE_SETTING_KEY = "eye_distance_setting_key";//测试距离 public static final String EYE_DISTANCE_SETTING_KEY = "eye_distance_setting_key";//测试距离
public static final int EYE_DISTANCE_2 = 2;//距离2.5米
public static final int EYE_DISTANCE_5 = 5;//距离5米
public static final String EYE_DIRECTION_SETTING_KEY = "eye_direction_setting_key";//C字视标 public static final String EYE_DIRECTION_SETTING_KEY = "eye_direction_setting_key";//C字视标
public static final String EYE_WAIT_SETTING_KEY = "eye_setting_wait_key";//测视等待时长 public static final String EYE_WAIT_SETTING_KEY = "eye_setting_wait_key";//测视等待时长
public static final String EYE_REPORT_SETTING_KEY = "eye_report_setting_key";//检视报告 public static final String EYE_REPORT_SETTING_KEY = "eye_report_setting_key";//检视报告
......
...@@ -60,7 +60,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -60,7 +60,7 @@ public class EyeTestActivity extends BaseActivity {
@BindView(R.id.iv_eye_test_center_e1) @BindView(R.id.iv_eye_test_center_e1)
ImageView eImageView1; ImageView eImageView1;
private int test_dis = 0; private int mDistance = EyeConfig.EYE_DISTANCE_5;
private ArrayList<ArrayList<E>> mList = new ArrayList<>(); private ArrayList<ArrayList<E>> mList = new ArrayList<>();
private int mLocation; private int mLocation;
...@@ -134,7 +134,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -134,7 +134,7 @@ public class EyeTestActivity extends BaseActivity {
private void prepareStudentTest(int index){ private void prepareStudentTest(int index){
currentIndex = index; currentIndex = index;
isStartTest = false; isStartTest = false;
measureStudent = mStudentList.get(index).transition(test_dis); measureStudent = mStudentList.get(index).transition(mDistance);
if (measureStudent.getRealname() != null || !TextUtils.isEmpty(measureStudent.getRealname())) { if (measureStudent.getRealname() != null || !TextUtils.isEmpty(measureStudent.getRealname())) {
nameText.setText(measureStudent.getRealname()); nameText.setText(measureStudent.getRealname());
} else { } else {
...@@ -222,42 +222,35 @@ public class EyeTestActivity extends BaseActivity { ...@@ -222,42 +222,35 @@ public class EyeTestActivity extends BaseActivity {
* @param e * @param e
*/ */
private void drewE(E e) { private void drewE(E e) {
// //视力等级 eImageView1.setImageResource(Eye.getBitmapRid(e.getLevel(),mDistance));
// float level = e.getLevel(); eImageView1.setPivotX(eImageView1.getWidth()/2);
// //视标边长 eImageView1.setPivotY(eImageView1.getHeight()/2);//支点在图片中心
// int px = Eye.getDip(this, level); switch (e.getDirect()){
// RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(px, px);
// eImageView1.setLayoutParams(params);
//视标方向
int resId;
switch (e.getDirect()) {
default:
case TOP: case TOP:
resId = R.drawable.c_top; eImageView1.setRotation(0);
break;
case RIGHT_TOP:
eImageView1.setRotation(45);
break; break;
case RIGHT: case RIGHT:
resId = R.drawable.c_right; eImageView1.setRotation(90);
break;
case RIGHT_BOTTOM:
eImageView1.setRotation(135);
break; break;
case BOTTOM: case BOTTOM:
resId = R.drawable.c_bottom; eImageView1.setRotation(180);
break;
case LEFT_BOTTOM:
eImageView1.setRotation(225);
break; break;
case LEFT: case LEFT:
resId = R.drawable.c_left; eImageView1.setRotation(270);
break; break;
case LEFT_TOP: case LEFT_TOP:
resId = R.drawable.c_left_top; eImageView1.setRotation(315);
break;
case RIGHT_TOP:
resId = R.drawable.c_right_top;
break;
case LEFT_BOTTOM:
resId = R.drawable.c_left_bottom;
break;
case RIGHT_BOTTOM:
resId = R.drawable.c_right_bottom;
break; break;
} }
eImageView1.setImageResource(resId);
} }
/** /**
...@@ -267,7 +260,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -267,7 +260,7 @@ public class EyeTestActivity extends BaseActivity {
* @return list * @return list
*/ */
private ArrayList<E> initLineList(int index) { private ArrayList<E> initLineList(int index) {
float level = Eye.getLevelSizeByIndex(index); float levelValue = Eye.getLevelSizeByIndex(index);
int sum = getLineSumByIndex(index); int sum = getLineSumByIndex(index);
//随机数生成方向 //随机数生成方向
Random random = new Random(); Random random = new Random();
...@@ -278,7 +271,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -278,7 +271,7 @@ public class EyeTestActivity extends BaseActivity {
if (i > 0) { if (i > 0) {
direct = getRandomDirect(list, direct, sum); direct = getRandomDirect(list, direct, sum);
} }
e = new E(i, direct, level); e = new E(i, direct,index, levelValue);
list.add(e); list.add(e);
} }
return list; return list;
...@@ -551,7 +544,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -551,7 +544,7 @@ public class EyeTestActivity extends BaseActivity {
private double getResult() { private double getResult() {
if (null == mCollect || mCollect.size() == 0) { if (null == mCollect || mCollect.size() == 0) {
if (test_dis == 0) { if (mDistance == EyeConfig.EYE_DISTANCE_5) {
return 4.0; return 4.0;
} else { } else {
return 3.8; return 3.8;
...@@ -561,7 +554,7 @@ public class EyeTestActivity extends BaseActivity { ...@@ -561,7 +554,7 @@ public class EyeTestActivity extends BaseActivity {
for (LinkedHashMap.Entry<Integer, List<E>> entry : mCollect.entrySet()) { for (LinkedHashMap.Entry<Integer, List<E>> entry : mCollect.entrySet()) {
result = entry.getKey(); result = entry.getKey();
} }
final String levelByIndex = "" + Eye.getLevelByIndex(result, test_dis == 0); final String levelByIndex = "" + Eye.getLevelByIndex(result, mDistance == EyeConfig.EYE_DISTANCE_5);
return Double.parseDouble(levelByIndex); return Double.parseDouble(levelByIndex);
} }
......
...@@ -4,6 +4,8 @@ import android.content.Context; ...@@ -4,6 +4,8 @@ import android.content.Context;
import com.app.baselibrary.bean.BaseBean; import com.app.baselibrary.bean.BaseBean;
import com.app.baselibrary.commonUtil.DensityUtil; import com.app.baselibrary.commonUtil.DensityUtil;
import com.oo.eye.EyeConfig;
import com.oo.eye.R;
/** /**
* Created by henry 15/12/29. * Created by henry 15/12/29.
...@@ -454,6 +456,75 @@ public class Eye extends BaseBean { ...@@ -454,6 +456,75 @@ public class Eye extends BaseBean {
return DensityUtil.px2dip(level); return DensityUtil.px2dip(level);
} }
public static int getBitmapRid(int level,int distance){
int rid = R.drawable.p5c14;
switch (distance){
case EyeConfig.EYE_DISTANCE_2:
switch (level){
case 0:
return R.drawable.p2c1;
case 1:
return R.drawable.p2c2;
case 2:
return R.drawable.p2c3;
case 3:
return R.drawable.p2c4;
case 4:
return R.drawable.p2c5;
case 5:
return R.drawable.p2c6;
case 6:
return R.drawable.p2c7;
case 7:
return R.drawable.p2c8;
case 8:
return R.drawable.p2c9;
case 9:
return R.drawable.p2c10;
case 10:
return R.drawable.p2c11;
case 11:
return R.drawable.p2c12;
case 12:
return R.drawable.p2c13;
case 13:
return R.drawable.p2c14;
}
case EyeConfig.EYE_DISTANCE_5:
switch (level){
case 0:
return R.drawable.p5c1;
case 1:
return R.drawable.p5c2;
case 2:
return R.drawable.p5c3;
case 3:
return R.drawable.p5c4;
case 4:
return R.drawable.p5c5;
case 5:
return R.drawable.p5c6;
case 6:
return R.drawable.p5c7;
case 7:
return R.drawable.p5c8;
case 8:
return R.drawable.p5c9;
case 9:
return R.drawable.p5c10;
case 10:
return R.drawable.p5c11;
case 11:
return R.drawable.p5c12;
case 12:
return R.drawable.p5c13;
case 13:
return R.drawable.p5c14;
}
}
return rid;
}
public static String getDirectStr(int direct) { public static String getDirectStr(int direct) {
switch (direct) { switch (direct) {
...@@ -474,16 +545,18 @@ public class Eye extends BaseBean { ...@@ -474,16 +545,18 @@ public class Eye extends BaseBean {
public static class E { public static class E {
private int index; private int index;
private int direct; private int direct;
private float level; private int level;
private float levelValue;
private int userChoose; private int userChoose;
private int x; private int x;
private int y; private int y;
private int width; private int width;
public E(int index, int direct, float level) { public E(int index, int direct, int level,float levelValue) {
this.index = index; this.index = index;
this.direct = direct; this.direct = direct;
this.level = level; this.level = level;
this.levelValue = levelValue;
} }
public boolean isCorrect() { public boolean isCorrect() {
...@@ -506,10 +579,18 @@ public class Eye extends BaseBean { ...@@ -506,10 +579,18 @@ public class Eye extends BaseBean {
return index; return index;
} }
public float getLevel() { public int getLevel() {
return level; return level;
} }
public float getLevelValue() {
return levelValue;
}
public void setLevelValue(float levelValue) {
this.levelValue = levelValue;
}
public int getX() { public int getX() {
return x; return x;
} }
...@@ -533,5 +614,7 @@ public class Eye extends BaseBean { ...@@ -533,5 +614,7 @@ public class Eye extends BaseBean {
public void setWidth(int width) { public void setWidth(int width) {
this.width = width; this.width = width;
} }
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment