diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapRenderer.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapRenderer.kt index 738c9bcc8..3523b83ed 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapRenderer.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapRenderer.kt @@ -142,7 +142,7 @@ class MapRenderer( * @param screenY The y-coordinate of the touch event on the screen. * @return The name of the intersected planet, or null if no intersection occurred. */ - fun getIntersectedPlanetName(screenX: Float, screenY: Float): String? { + fun getIntersectedPlanetFact(screenX: Float, screenY: Float): String? { if (viewport[2] == 0 || viewport[3] == 0) { Log.d("Viewport dimensions", "Viewport dimensions are invalid: ${viewport.joinToString()}") return null @@ -151,7 +151,7 @@ class MapRenderer( val ray = calculateRay(screenX, screenY, camera, viewport) for (planet in renderablePlanets) { if (planet.checkHit(ray.origin, ray.direction)) { - return planet.name + return planet.funFact } } return null diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapSurfaceView.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapSurfaceView.kt index ded15f920..00eb1ef61 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapSurfaceView.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/MapSurfaceView.kt @@ -31,17 +31,17 @@ class MapSurfaceView(context: Context, private val viewModel: MapViewModel) : renderMode = RENDERMODE_CONTINUOUSLY } - private fun showPlanetInfo(planetName: String) { - Toast.makeText(context, "You clicked on $planetName!", Toast.LENGTH_SHORT).show() + private fun showPlanetInfo(planetFact: String) { + Toast.makeText(context, "Fun fact: $planetFact", Toast.LENGTH_SHORT).show() } @SuppressLint("ClickableViewAccessibility") override fun onTouchEvent(event: MotionEvent): Boolean { scaleGestureDetector.onTouchEvent(event) if (event.action == MotionEvent.ACTION_DOWN) { - val planetName = viewModel.mapRenderer.getIntersectedPlanetName(event.x, event.y) - if (planetName != null) { - showPlanetInfo(planetName) + val planetFact = viewModel.mapRenderer.getIntersectedPlanetFact(event.x, event.y) + if (planetFact != null) { + showPlanetInfo(planetFact) } else { Log.d("On touch event", "No planet was clicked.") } diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetData.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetData.kt index 66e55b781..ccbc76a9e 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetData.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetData.kt @@ -16,5 +16,6 @@ data class PlanetData( var dec: Double = 0.0, // Declination in degrees var cartesian: Triple = Triple(0.0f, 0.0f, 0.0f), // Cartesian coordinates val textureId: Int, - val iconRes: Int = 0 // New field for the button icon + val iconRes: Int = 0, // New field for the button icon + val funFact: String = "" // New field for the planet fun fact ) diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetsRepository.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetsRepository.kt index c241ef05b..f1c407ab8 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetsRepository.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/planets/PlanetsRepository.kt @@ -47,34 +47,44 @@ class PlanetsRepository( "Mercury", "199", textureId = R.drawable.mercury_texture, - iconRes = R.drawable.mercury_icon), + iconRes = R.drawable.mercury_icon, + funFact = "Mercury’s surface has ice on it !"), PlanetData( "Venus", "299", textureId = R.drawable.venus_texture, - iconRes = R.drawable.venus_icon), + iconRes = R.drawable.venus_icon, + funFact = "A day is longer than a year on Venus !"), PlanetData( - "Mars", "499", textureId = R.drawable.mars_texture, iconRes = R.drawable.mars_icon), + "Mars", + "499", + textureId = R.drawable.mars_texture, + iconRes = R.drawable.mars_icon, + funFact = "Mars has the largest volcano in the solar system !"), PlanetData( "Jupiter", "599", textureId = R.drawable.jupiter_texture, - iconRes = R.drawable.jupiter_icon), + iconRes = R.drawable.jupiter_icon, + funFact = "Jupiter is a great comet catcher !"), PlanetData( "Saturn", "699", textureId = R.drawable.saturn_texture, - iconRes = R.drawable.saturn_icon), + iconRes = R.drawable.saturn_icon, + funFact = "Saturn's rings are 90% water !"), PlanetData( "Uranus", "799", textureId = R.drawable.uranus_texture, - iconRes = R.drawable.uranus_icon), + iconRes = R.drawable.uranus_icon, + funFact = "You can't stand on Uranus !"), PlanetData( "Neptune", "899", textureId = R.drawable.neptune_texture, - iconRes = R.drawable.neptune_icon))) + iconRes = R.drawable.neptune_icon, + funFact = "Neptune has supersonic winds !"))) } /** @@ -142,8 +152,8 @@ class PlanetsRepository( context = context, name = planetData.name, position = floatArrayOf(position.first, position.second, position.third), - textureId = planetData.textureId // Resource ID for the planet’s texture - ) + textureId = planetData.textureId, // Resource ID for the planet’s texture + funFact = planetData.funFact) } } } diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Moon.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Moon.kt index ea4c92bd1..725ba2db6 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Moon.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Moon.kt @@ -32,7 +32,8 @@ class Moon( textureId = getCurrentMoonPhaseTextureId(), numBands = numBands, stepsPerBand = stepsPerBand, - scale = 0.05f) { + scale = 0.05f, + funFact = "The Moon is moving away from Earth !") { /** Companion object containing moon phase calculation and texture mapping logic. */ companion object { /** diff --git a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Planet.kt b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Planet.kt index 6d3d92bf3..42e02279b 100644 --- a/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Planet.kt +++ b/app/src/main/java/com/github/lookupgroup27/lookup/model/map/renderables/Planet.kt @@ -37,7 +37,8 @@ open class Planet( var textureId: Int, numBands: Int = SphereRenderer.DEFAULT_NUM_BANDS, stepsPerBand: Int = SphereRenderer.DEFAULT_STEPS_PER_BAND, - private val scale: Float = 0.02f + private val scale: Float = 0.02f, + val funFact: String = "" ) : Object() { private val sphereRenderer = SphereRenderer(context, numBands, stepsPerBand) diff --git a/app/src/main/res/drawable/astro_logo3.png b/app/src/main/res/drawable/astro_logo3.png new file mode 100644 index 000000000..6ca8d1fc0 Binary files /dev/null and b/app/src/main/res/drawable/astro_logo3.png differ diff --git a/app/src/main/res/drawable/white_background.png b/app/src/main/res/drawable/white_background.png new file mode 100644 index 000000000..7b95c4563 Binary files /dev/null and b/app/src/main/res/drawable/white_background.png differ diff --git a/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml index 6f3b755bf..cc5ec32f6 100644 --- a/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml +++ b/app/src/main/res/mipmap-anydpi/ic_launcher_round.xml @@ -1,6 +1,6 @@ - - - + + + \ No newline at end of file