From 7442d1fca472b17ad95b9f2f388e5c5ef6319bdb Mon Sep 17 00:00:00 2001 From: Luca Warmenhoven Date: Fri, 17 May 2024 14:53:45 +0200 Subject: [PATCH 1/2] Added fitness activity switching --- .../Fitbot/app/src/main/AndroidManifest.xml | 4 +++- .../fitbot/ui/activities/MainActivity.java | 14 ++++++++++- .../PersonalMotionPreviewElement.java | 7 ++++++ .../src/main/res/layout/activity_fitness.xml | 23 +++++++++++++++---- .../com/example/fitbot/PathSegmentTest.java | 4 +++- 5 files changed, 45 insertions(+), 7 deletions(-) diff --git a/code/src/Fitbot/app/src/main/AndroidManifest.xml b/code/src/Fitbot/app/src/main/AndroidManifest.xml index 8578a7c..7ca5680 100644 --- a/code/src/Fitbot/app/src/main/AndroidManifest.xml +++ b/code/src/Fitbot/app/src/main/AndroidManifest.xml @@ -15,9 +15,11 @@ android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/Theme.Fitbot" > - + diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java index 949e2b0..82c916d 100644 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/activities/MainActivity.java @@ -1,6 +1,7 @@ package com.example.fitbot.ui.activities; import android.annotation.SuppressLint; +import android.content.Intent; import android.os.Bundle; import android.support.design.widget.NavigationView; import android.support.v4.view.GravityCompat; @@ -8,6 +9,8 @@ import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarDrawerToggle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; +import android.util.Log; +import android.widget.Button; import com.example.fitbot.R; @@ -17,17 +20,26 @@ public class MainActivity extends AppCompatActivity { DrawerLayout drawerLayout; NavigationView navigationView; Toolbar toolbar; + Button startButton; @SuppressLint("WrongViewCast") @Override protected void onCreate (Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setContentView(R.layout.activity_main); + setContentView(R.layout.activity_main ); /*---Hooks---*/ drawerLayout = findViewById(R.id.drawer_layout); navigationView = findViewById(R.id.nav_view); toolbar = findViewById(R.id.toolbar); + startButton = findViewById(R.id.startButton); + + startButton.setOnClickListener(v -> { + // Switch to fitness activity + Log.i("MainActivity", "Switching to FitnessActivity"); + Intent intent = new Intent(MainActivity.this, FitnessActivity.class); + startActivity(intent); + }); /*---Tool Bar---*/ // setSupportActionBar(toolbar); diff --git a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/components/PersonalMotionPreviewElement.java b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/components/PersonalMotionPreviewElement.java index 32631ee..ef111ad 100644 --- a/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/components/PersonalMotionPreviewElement.java +++ b/code/src/Fitbot/app/src/main/java/com/example/fitbot/ui/components/PersonalMotionPreviewElement.java @@ -4,6 +4,7 @@ import android.content.Context; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Path; +import android.util.Log; import android.view.View; import com.example.fitbot.util.path.GesturePath; @@ -24,6 +25,8 @@ public class PersonalMotionPreviewElement extends View { private Path referencePath, performingPath; private Paint referencePaint, performingPaint; + private Paint backgroundColor = new Paint(); + /** * Constants for the preview path projection. */ @@ -42,6 +45,9 @@ public class PersonalMotionPreviewElement extends View { */ public PersonalMotionPreviewElement(Context context, GesturePath path) { super(context); + Log.i("PersonalMotionPreviewElement", "Creating new PersonalMotionPreviewElement."); + this.backgroundColor = new Paint(); + this.backgroundColor.setColor(0xFF000000); // Black this.path = path; this.motionProcessor = new MotionProcessor(); this.motionProcessor.startListening(); @@ -158,6 +164,7 @@ public class PersonalMotionPreviewElement extends View { @Override public void onDraw(Canvas canvas) { + canvas.drawRect(0, 0, getWidth(), getHeight(), backgroundColor); // Draw the sport preview canvas canvas.drawPath(referencePath, referencePaint); canvas.drawPath(performingPath, performingPaint); diff --git a/code/src/Fitbot/app/src/main/res/layout/activity_fitness.xml b/code/src/Fitbot/app/src/main/res/layout/activity_fitness.xml index 35990c8..38aa5c9 100644 --- a/code/src/Fitbot/app/src/main/res/layout/activity_fitness.xml +++ b/code/src/Fitbot/app/src/main/res/layout/activity_fitness.xml @@ -1,10 +1,25 @@ - - + + + android:layout_height="match_parent" + android:orientation="vertical"> - \ No newline at end of file + + + \ No newline at end of file diff --git a/code/src/Fitbot/app/src/test/java/com/example/fitbot/PathSegmentTest.java b/code/src/Fitbot/app/src/test/java/com/example/fitbot/PathSegmentTest.java index a7d7bca..0ab0f1d 100644 --- a/code/src/Fitbot/app/src/test/java/com/example/fitbot/PathSegmentTest.java +++ b/code/src/Fitbot/app/src/test/java/com/example/fitbot/PathSegmentTest.java @@ -1,9 +1,12 @@ package com.example.fitbot; +import static org.junit.Assert.assertEquals; + import com.example.fitbot.util.path.GesturePath; import com.example.fitbot.util.path.PathSegment; import org.joml.Vector3f; +import org.junit.Test; public class PathSegmentTest { @@ -23,7 +26,6 @@ public class PathSegmentTest { @Test - @DisplayName("Test Path Segment Interpolation") public void test_pathSegmentInterpolation() { Vector3f start = new Vector3f(0, 0, 0); Vector3f end = new Vector3f(1, 1, 1); From 13fca50d6f27925d0b7692fe201f4d25b0ddc04e Mon Sep 17 00:00:00 2001 From: Luca Warmenhoven Date: Fri, 17 May 2024 14:56:20 +0200 Subject: [PATCH 2/2] Updated .gitignore --- code/src/Fitbot/.gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/src/Fitbot/.gitignore b/code/src/Fitbot/.gitignore index aa724b7..732c947 100644 --- a/code/src/Fitbot/.gitignore +++ b/code/src/Fitbot/.gitignore @@ -13,3 +13,5 @@ .externalNativeBuild .cxx local.properties +.idea +.vscode \ No newline at end of file