[Pergunta] Radius e Bordas

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Re: [Pergunta] Radius e Bordas

Mensagem por Jiraya em Qua 04 Jul 2012, 15:31

Código:

/*
 **  Usage:
 **      draw_roundrect_ext(x1,y1,x2,y2,outline,radius,precision)
 **
 **  Arguments:
 **      x1,y1,x2,y2    coordinates of the corners of the rectangle
 **      outline        set to TRUE for outline, FALSE for solid
 **      radius          radius of the rounded corners
 **      precision      quality of the rounded corners, positive integer
 **
 **  Returns:
 **      nothing
 **
 **  GMLscripts.com
 */
{
    var x1,y1,x2,y2,out,rad,pre,i,j,x1r,x2r,y1r,y2r;
    x1  = argument0;
    y1  = argument1;
    x2  = argument2;
    y2  = argument3;
    out = argument4;
    rad = min(argument5,abs(x1-x2)/2,abs(y1-y2)/2);
    pre = max(1,argument6);

    i  = 0;
    j  = 90 / pre;
    x1r = x1 + rad;
    x2r = x2 - rad;
    y1r = y1 + rad;
    y2r = y2 - rad;

    if (out) {
        draw_primitive_begin(pr_linestrip);
    }else{
        draw_primitive_begin(pr_trianglefan);
        draw_vertex(mean(x1,x2),mean(y1,y2));
    }
    draw_vertex(x2,y2r);
    draw_vertex(x2,y1r);
    repeat (pre) {
        i += j;
        draw_vertex(x2r+lengthdir_x(rad,i),y1r+lengthdir_y(rad,i));
    }
    draw_vertex(x1r,y1);
    repeat (pre) {
        i += j;
        draw_vertex(x1r+lengthdir_x(rad,i),y1r+lengthdir_y(rad,i));
    }
    draw_vertex(x1,y2r);
    repeat (pre) {
        i += j;
        draw_vertex(x1r+lengthdir_x(rad,i),y2r+lengthdir_y(rad,i));
    }
    draw_vertex(x2r,y2);
    repeat (pre) {
        i += j;
        draw_vertex(x2r+lengthdir_x(rad,i),y2r+lengthdir_y(rad,i));
    }
    draw_vertex(x2,y2r);
    draw_primitive_end();
}
esse script n é de minha autoria.

isso pode resolver seu problema com o raio dos cantos.

Jiraya

Ranking : Nota A
Número de Mensagens : 1134
Data de inscrição : 20/03/2010
Notas recebidas : A+A
Reputação : 108
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 1

https://www.facebook.com/seito.washiro.7

Voltar ao Topo Ir em baixo

Re: [Pergunta] Radius e Bordas

Mensagem por Kabeção em Qua 04 Jul 2012, 15:39

Se quer aumentar a espessura da borda e só usar mais de um draw_rectangle como outline em posição diferente.

Código:
// draw_rectangle_out(x1,y1,x2,y2,largura)

for (i = 0; i < argument4*2; i += 1) {
    draw_rectangle(argument0+i/2,argument1+i/2,argument2-i/2,argument3-i/2,1);
}

Kabeção

Ranking : Sem avaliações
Número de Mensagens : 2314
Data de inscrição : 08/06/2008
Reputação : 100
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 3
   : 0
   : 1

http://blackcapapps.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: [Pergunta] Radius e Bordas

Mensagem por Gonçalves em Qua 04 Jul 2012, 17:16

1. Usa draw_set_color (Exemplo):

Código:
draw_set_color(c_blue)
draw_roundrect(x1,y1,x2,y2,0)
draw_set_color(c_green)
draw_roundrect(x1,y1,x2,y2,1)

Na entendi a dúvida 2. :/

Gonçalves

Ranking : Nota B
Número de Mensagens : 1013
Data de inscrição : 29/10/2010
Notas recebidas : B + A + C
Reputação : 79
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Pergunta] Radius e Bordas

Mensagem por Conteúdo patrocinado Hoje à(s) 14:14


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum