buscador

Visita

Mostrando las entradas con la etiqueta Graficar Circulo - Rect谩ngulo - Triangulo - Cuadrado - Rombo - Linea en android studio. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Graficar Circulo - Rect谩ngulo - Triangulo - Cuadrado - Rombo - Linea en android studio. Mostrar todas las entradas

s谩bado, 22 de enero de 2022

馃煝Android 23 : Graficar las figuras Geom茅tricas en android Studio (Circulo - Rect谩ngulo - Triangulo - Cuadrado - Rombo - Linea )

Bienvenidos al blog en esta oportunidad desarrollaremos el proyecto utilizando las clases Piant, Canvas, Path y revisaremos como se dibujar铆a las figuras geom茅tricas  como un circulo, un rect谩ngulo ,cuadrado,triaungulo y un ovalo. 
¿Para que sirve la Clase Lienzo? Lienzo es la clase que hereda de Canvas y redefine el paint().

¿Para que sirve la Clase Canvas? Es un control Apropiado para dibujar en una superficie. 

¿Para que sirve la Clase Paint? Sirve para dibujar su contenido.

¿Para que sirve la Clase Shader? Sirve para dibujar formas graficas 

¿Qu茅 es SweepGradient ? Es un constructor de la clase Shader. SweepGradient(float cx, float cy, int[] colors, float[])

¿Para que utiliza la clase Path?
La clase Path permite definir un trazado a partir de segmentos de l铆nea y curvas. Una vez definido puede ser dibujado con canvas.Un Path tambi茅n puede ser utilizado para dibujar un texto sobre el trazado marcado. Fuente : Androidwww.androidcurso.com

Primero creamos el nuevo proyecto en android Studio, rev铆senlo como hacer el nuevo proyecto en el post Crear nuevo proyecto en Android Studio.

Una vez creado el nuevo proyecto empezamos por eliminar el contenido que se crea al momento de crear el nuevo proyecto y agregamos el id al Layout de la actividad android:id="@+id/layout1".

En la actividad no se realiza ning煤n dise帽o porque lo haremos el pintado con el lienzo, una vez realizado el cambio de id del RelativeLayout, empezamos con el c贸digo que es lo que se trata este proyecto.

Primero se instancia las variables con el Xml de la vista  en el metodo Oncreate de la clase:
RelativeLayout layout1 = (RelativeLayout) findViewById(R.id.layout1);
Lienzo fondo = new Lienzo(this);
layout1.addView(fondo);

luego comenzamos con el c贸digo completo, cada line谩 de c贸digo esta para que separan para que sirve y cual es su funci贸n.

class Lienzo extends View {
public Lienzo(Context context) {
super(context);
}
protected void onDraw(Canvas canvas) {
//Obetenemos el ancho y el alto de la vista
int x = getWidth();
int y = getHeight();
//creamos una variable para el radio del circulo
int radius;
//instanciamos a la variable radio
radius = 100;
//creamos un objeto de la clase paint y lo guardamos en una variable
Paint paint = new Paint();
//Indicamos el tipo de trazo de paint
paint.setStyle(Paint.Style.FILL);
//indicamos el fondo de la vista
paint.setColor(Color.parseColor("#5F6A6A"));
//pintamos el fondo
canvas.drawPaint(paint);
//Circulo
paint.setColor(Color.parseColor("#B7950B"));
canvas.drawCircle(x / 2, 140, radius, paint);
//Rectangulo
paint.setColor(Color.parseColor("#1F618D"));
canvas.drawRect((x/2)-200,280,(y/2),400,paint);
//Cuadrado
paint.setColor(Color.parseColor("#F7F9F9"));
canvas.drawRect((x/2)-200,440,(y/2),700,paint);
//Triangulo
Path path = new Path();
path.moveTo(x/2, y/2 - 50);
path.lineTo(x/2 - 200, y/2 + 180);
path.lineTo(800, y/2 + 180);
paint.setStyle(Paint.Style.
FILL); // el tipo de trazado
// convertimos un color Hexadecimal
paint.setColor(Color.parseColor("#C0392B"));
// pintamos un triangulo
canvas.drawPath(path, paint);
//ovalo
//Dibujo con Shadeintsnaciamos a SweepGradient
//Realizamos un arreglo de colores
int[] colors = {Color.RED, Color.BLUE,Color.GREEN,Color.YELLOW,Color.BLACK};
//indicamos a shader cx,cy,lista de colores,posicion
Shader shader = new SweepGradient(x/2, (y/2)+260,colors, null);
//indicamos que paint guarde a shade
paint.setShader(shader);
canvas.drawOval((x/2)-200,1000,(y/2),1200,paint);
// pintar una linea
canvas.drawLine(100, 30, 1000, 30, paint);
paint.setStrokeWidth(10); } }

Una vez desarrollado todo el c贸digo sin ning煤n error lo ejecutamos, para ver el funcionamiento del c贸digo.

PROYECTO EJECUTADO
Si te gusto y te ayudo el contenido no olvides de compartir y puedes ayudarme donando para seguir creciendo en esta comunidad "EL inform谩tico Ibero". Suscribete a mi canal de YouTube y Sigue en mis redes sociales.

ABRE EL PROYECTO DIRECTAMENTE DESDE GITHUB
https://github.com/raul1995/DrawGeometricasApp.git

Apoyen suscribi茅ndose a mi canal de Youtube canal " EL INFORMATICO IBERO" , Compartan el contenido del Blog, si les gusto el contenido del blog y del canal suscribanse es Gratis!!
Raul Tamani A. ©. Im谩genes del tema de fpm. Con tecnolog铆a de Blogger.

Adblock Detectado

Apoya este sitio desactivando el Adblock para seguir navegando. ¡Gracias!

¡Ya Desactive el Adblock!