From 6011354f28cbdf7bc88952a1370bc5b049cab578 Mon Sep 17 00:00:00 2001 From: sungmin ha Date: Fri, 22 Jun 2012 17:22:47 +0900 Subject: [PATCH] [Title]enhanced mobile panel by "With axis" [Type]Enhancement [Module]eventinjector-eplugin [Priority]Major [Jira#] // Jira Issue Number [Redmine#] // Redmine Isuue Number [Problem] // Problem Description [Cause] // Cause Description [Solution] // Solution Description [TestCase] // Executed the test-target (How to) --- .../sensor/accelerometer/page/Accelerometer.java | 18 ++- .../sensor/accelerometer/page/MobilePanel.java | 126 ++++++++++++--------- package/pkginfo.manifest | 4 +- 3 files changed, 92 insertions(+), 56 deletions(-) diff --git a/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/Accelerometer.java b/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/Accelerometer.java index 1b98dfc..15d31d2 100644 --- a/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/Accelerometer.java +++ b/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/Accelerometer.java @@ -70,6 +70,7 @@ public class Accelerometer extends AbstractInjectorPage { Button checkboxMagnetic; Button checkboxTilt; Button button01, button02, button03; + Button withAxisCheck; private Text dataText; Timer dataOutputTimer; @@ -125,11 +126,11 @@ public class Accelerometer extends AbstractInjectorPage { panelComposite.setLayoutData(gd); // Create composite containing moving type selection radio buttons - Composite radioComposite = formUtil.createComposite(mobileComposite, 3); + Composite radioComposite = formUtil.createComposite(mobileComposite, 4); gd = new GridData(SWT.CENTER, SWT.FILL, false, true); radioComposite.setLayoutData(gd); - button01 = formUtil.createButton(radioComposite, "X/Z ", SWT.RADIO); + button01 = formUtil.createButton(radioComposite, "X/Z", SWT.RADIO); button01.setSelection(true); mode = Mode.YAW_PITCH; button01.addSelectionListener(new SelectionAdapter() { @@ -139,7 +140,7 @@ public class Accelerometer extends AbstractInjectorPage { super.widgetSelected(e); } }); - button02 = formUtil.createButton(radioComposite, "X/Y ", SWT.RADIO); + button02 = formUtil.createButton(radioComposite, "X/Y", SWT.RADIO); button02.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { @@ -155,6 +156,17 @@ public class Accelerometer extends AbstractInjectorPage { super.widgetSelected(e); } }); + withAxisCheck = formUtil.createButton(radioComposite, "With axis", SWT.CHECK); + withAxisCheck.setSelection(false); + withAxisCheck.addSelectionListener(new SelectionAdapter() { + public void widgetSelected(SelectionEvent e) { + if(withAxisCheck.getSelection()) + panel.isWithAxis = true; + else + panel.isWithAxis = false; + super.widgetSelected(e); + } + }); // Create text (data output) diff --git a/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/MobilePanel.java b/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/MobilePanel.java index 4205381..56834ec 100644 --- a/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/MobilePanel.java +++ b/org.tizen.sensor.accelerometer/src/org/tizen/sensor/accelerometer/page/MobilePanel.java @@ -238,6 +238,7 @@ public class MobilePanel extends JPanel implements ISelectionListener { public boolean phone_pos_conv = false; public IDevice currentDevice; + public boolean isWithAxis = false; /* * http://code.google.com/android/reference/android/hardware/Sensors.html @@ -249,14 +250,19 @@ public class MobilePanel extends JPanel implements ISelectionListener { * surface. */ // Mobile size - final double sx = 15; // size x - final double sy = 40; // size y - final double sz = 5; // size z + final double sx = 15 * 1.4; // size x + final double sy = 40 * 1.4; // size y + final double sz = 5 * 1.4; // size z // Display size - final double dx = 12; // size x - final double dy1 = 33; // size y - final double dy2 = -15; + final double dx = 12 * 1.4; // size x + final double dy1 = 33 * 1.4; // size y + final double dy2 = -15 * 1.4; + + // for axis display + final double xAxisLen = 35; + final double yAxisLen = 75; + final double zAxisLen = 25; /** Contains the grid model of the phone. */ double[][] phone = { @@ -280,6 +286,12 @@ public class MobilePanel extends JPanel implements ISelectionListener { {-dx, dy1, sz}, {-dx, dy2, sz}, {-dx, dy2, sz}, { dx, dy2, sz}, { dx, dy2, sz}, { dx, dy1, sz}, + // x axis + { xAxisLen, 0, 0 }, { 0, 0, 0 }, + // y axis + { 0, yAxisLen, 0 }, { 0, 0, 0 }, + // z axis + { 0, 0, zAxisLen }, { 0, 0, 0 }, }; private Timer timer; private Timer geomagneticTimer; @@ -321,6 +333,7 @@ public class MobilePanel extends JPanel implements ISelectionListener { mPage.button02.setSelection(false); mPage.button03.setSelection(false); mPage.mode = Mode.YAW_PITCH; + mPage.withAxisCheck.setSelection(false); mPage.checkboxAcceleration.setSelection(true); mPage.panel.accelerometerTimer(mPage.checkboxAcceleration.getSelection()); @@ -818,58 +831,69 @@ private void updateSensorGyro(){ double draw_roll = old_gyro_rollDegree - rollDegree; double draw_pitch = old_gyro_pitchDegree-pitchDegree; double draw_yaw = old_gyro_yawDegree-yawDegree; + int vector_len = phone.length; + if(!isWithAxis) + vector_len = 32; - for (int i=0; i, sungmin Ha @@ -9,7 +9,7 @@ Install-dependency:common-eplugin[linux], base-ide-product[linux] Source:eventinjector-eplugin Package:eventinjector-eplugin -Version:0.2.22 +Version:0.2.23 OS:windows Build-host-os:linux Maintainer:yeongkyoon Lee , sungmin Ha -- 2.7.4