patch partiel du text + patch image
This commit is contained in:
@@ -3,12 +3,11 @@ package com.iutlaval.myapplication.Game.Cards;
|
|||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.BitmapFactory;
|
import android.graphics.BitmapFactory;
|
||||||
import android.graphics.Color;
|
|
||||||
|
|
||||||
import com.iutlaval.myapplication.Game.Board;
|
import com.iutlaval.myapplication.Game.Board;
|
||||||
import com.iutlaval.myapplication.Game.Player.Player;
|
import com.iutlaval.myapplication.Game.Player.Player;
|
||||||
import com.iutlaval.myapplication.R;
|
import com.iutlaval.myapplication.R;
|
||||||
import com.iutlaval.myapplication.Video.DrawableCard;
|
import com.iutlaval.myapplication.Video.Drawables.DrawableCard;
|
||||||
|
|
||||||
public abstract class Card {
|
public abstract class Card {
|
||||||
private static Bitmap frameBitmap = null;
|
private static Bitmap frameBitmap = null;
|
||||||
|
|||||||
@@ -1,17 +1,13 @@
|
|||||||
package com.iutlaval.myapplication.Game;
|
package com.iutlaval.myapplication.Game;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
|
||||||
import android.graphics.BitmapFactory;
|
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
|
|
||||||
import com.iutlaval.myapplication.Game.Cards.Card;
|
import com.iutlaval.myapplication.Game.Cards.Card;
|
||||||
import com.iutlaval.myapplication.Game.Cards.DemoCard;
|
import com.iutlaval.myapplication.Game.Cards.DemoCard;
|
||||||
import com.iutlaval.myapplication.InvalidDataException;
|
import com.iutlaval.myapplication.InvalidDataException;
|
||||||
import com.iutlaval.myapplication.R;
|
import com.iutlaval.myapplication.Video.Drawables.Drawable;
|
||||||
import com.iutlaval.myapplication.Video.Drawable;
|
import com.iutlaval.myapplication.Video.Drawables.DrawableCard;
|
||||||
import com.iutlaval.myapplication.Video.DrawableCard;
|
|
||||||
import com.iutlaval.myapplication.Video.FpsTime;
|
|
||||||
import com.iutlaval.myapplication.Video.Rectangle;
|
import com.iutlaval.myapplication.Video.Rectangle;
|
||||||
import com.iutlaval.myapplication.Video.Renderer;
|
import com.iutlaval.myapplication.Video.Renderer;
|
||||||
|
|
||||||
|
|||||||
+6
-5
@@ -1,10 +1,9 @@
|
|||||||
package com.iutlaval.myapplication.Video;
|
package com.iutlaval.myapplication.Video.Drawables;
|
||||||
|
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
import android.graphics.Canvas;
|
import android.graphics.Canvas;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.Paint;
|
import android.graphics.Paint;
|
||||||
import android.graphics.Rect;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
@@ -12,6 +11,8 @@ import androidx.annotation.NonNull;
|
|||||||
import com.iutlaval.myapplication.ERROR_CODE;
|
import com.iutlaval.myapplication.ERROR_CODE;
|
||||||
import com.iutlaval.myapplication.GameActivity;
|
import com.iutlaval.myapplication.GameActivity;
|
||||||
import com.iutlaval.myapplication.InvalidDataException;
|
import com.iutlaval.myapplication.InvalidDataException;
|
||||||
|
import com.iutlaval.myapplication.Video.Rectangle;
|
||||||
|
import com.iutlaval.myapplication.Video.Renderer;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -21,7 +22,7 @@ public class Drawable {
|
|||||||
private float x,y;
|
private float x,y;
|
||||||
private String name;
|
private String name;
|
||||||
private Bitmap bitmap;
|
private Bitmap bitmap;
|
||||||
private static Paint p;
|
protected static Paint p;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* cree un drawable a partir de coordonné est d'un nom
|
* cree un drawable a partir de coordonné est d'un nom
|
||||||
@@ -198,7 +199,7 @@ public class Drawable {
|
|||||||
/**
|
/**
|
||||||
* cette fonction permet d'initialiser le pinceau
|
* cette fonction permet d'initialiser le pinceau
|
||||||
*/
|
*/
|
||||||
private void checkPaint() {
|
protected void checkPaint() {
|
||||||
if(p==null)
|
if(p==null)
|
||||||
p = new Paint();
|
p = new Paint();
|
||||||
}
|
}
|
||||||
@@ -214,7 +215,7 @@ public class Drawable {
|
|||||||
* @param text texte a afficher
|
* @param text texte a afficher
|
||||||
* @return liste de lignes de texte
|
* @return liste de lignes de texte
|
||||||
*/
|
*/
|
||||||
private List<String> cutText(int charPerLines,String text)
|
protected List<String> cutText(int charPerLines,String text)
|
||||||
{
|
{
|
||||||
List<String> output = new ArrayList<>();
|
List<String> output = new ArrayList<>();
|
||||||
//TODO cut text in lines
|
//TODO cut text in lines
|
||||||
+2
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.iutlaval.myapplication.Video;
|
package com.iutlaval.myapplication.Video.Drawables;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
@@ -11,6 +11,7 @@ import android.util.Log;
|
|||||||
import com.iutlaval.myapplication.ERROR_CODE;
|
import com.iutlaval.myapplication.ERROR_CODE;
|
||||||
import com.iutlaval.myapplication.Game.Cards.Card;
|
import com.iutlaval.myapplication.Game.Cards.Card;
|
||||||
import com.iutlaval.myapplication.InvalidDataException;
|
import com.iutlaval.myapplication.InvalidDataException;
|
||||||
|
import com.iutlaval.myapplication.Video.Rectangle;
|
||||||
|
|
||||||
public class DrawableCard extends Drawable{
|
public class DrawableCard extends Drawable{
|
||||||
|
|
||||||
+50
@@ -0,0 +1,50 @@
|
|||||||
|
package com.iutlaval.myapplication.Video.Drawables;
|
||||||
|
|
||||||
|
import android.graphics.Bitmap;
|
||||||
|
import android.graphics.Canvas;
|
||||||
|
import android.graphics.Color;
|
||||||
|
|
||||||
|
import androidx.annotation.MainThread;
|
||||||
|
|
||||||
|
import com.iutlaval.myapplication.GameActivity;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public class DrawableCardDescription extends Drawable {
|
||||||
|
private static int TEXT_X_RES = 281;
|
||||||
|
private static int TEXT_Y_RES = 195;
|
||||||
|
|
||||||
|
private Bitmap bitmap;
|
||||||
|
|
||||||
|
public DrawableCardDescription(String text, float x_pos, float y_pos, String name, float x_size, float y_size, float textSize) {
|
||||||
|
super(x_pos,y_pos,name);
|
||||||
|
int x_scaled_size = (int)x_size* GameActivity.screenWidth/100;
|
||||||
|
int y_scaled_size = (int)y_size* GameActivity.screenHeight/100;
|
||||||
|
|
||||||
|
checkPaint();
|
||||||
|
super.p.setColor(Color.BLACK);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
List<String> linesOfText = cutText(20,text);
|
||||||
|
p.setTextSize(textSize);
|
||||||
|
|
||||||
|
//+10 permet d'e prendre en compte les p,q,j qui dessende plus bas que les autres
|
||||||
|
Bitmap bitmap = Bitmap.createBitmap(TEXT_X_RES, TEXT_Y_RES, Bitmap.Config.ARGB_8888);
|
||||||
|
Canvas c = new Canvas(bitmap);
|
||||||
|
|
||||||
|
int index = 1;
|
||||||
|
for(String line : linesOfText)
|
||||||
|
{
|
||||||
|
c.drawText(line ,0,index*y_scaled_size/linesOfText.size(),p);
|
||||||
|
index++;
|
||||||
|
}
|
||||||
|
|
||||||
|
this.bitmap = Bitmap.createScaledBitmap(bitmap,x_scaled_size,y_scaled_size, GameActivity.bilinearFiltering);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Bitmap getBitmap() {
|
||||||
|
return bitmap;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -59,7 +59,7 @@ public class Rectangle {
|
|||||||
* /!\ ne pas le lancer plus d'une fois sinon les mesures devienderons n'importequoi /!\
|
* /!\ ne pas le lancer plus d'une fois sinon les mesures devienderons n'importequoi /!\
|
||||||
* /!\ toutes les dimention du rectangle doivent être comprise entre 0 et 100 sinon elle sortiron de l'ecran/!\
|
* /!\ toutes les dimention du rectangle doivent être comprise entre 0 et 100 sinon elle sortiron de l'ecran/!\
|
||||||
*/
|
*/
|
||||||
protected void scaleRectangleToScreen()
|
public void scaleRectangleToScreen()
|
||||||
{
|
{
|
||||||
set(getPositionX()* GameActivity.screenWidth/100,
|
set(getPositionX()* GameActivity.screenWidth/100,
|
||||||
getPositionY()*GameActivity.screenHeight/100,
|
getPositionY()*GameActivity.screenHeight/100,
|
||||||
|
|||||||
@@ -20,4 +20,6 @@ public class RectangleCanevas extends Canvas {
|
|||||||
r.getPositionY()+r.getHeight(),
|
r.getPositionY()+r.getHeight(),
|
||||||
paint);
|
paint);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ import android.view.SurfaceView;
|
|||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
|
||||||
import com.iutlaval.myapplication.Game.GameLogicThread;
|
import com.iutlaval.myapplication.Game.GameLogicThread;
|
||||||
|
import com.iutlaval.myapplication.Video.Drawables.Drawable;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 116 KiB After Width: | Height: | Size: 116 KiB |
|
Before Width: | Height: | Size: 54 KiB After Width: | Height: | Size: 54 KiB |
Reference in New Issue
Block a user