Pintar shape de varios colores.

223 views
Skip to first unread message

mpulla

unread,
May 2, 2014, 4:19:42 PM5/2/14
to publice...@googlegroups.com
Buen día

Se puede hacer un Shape de la forma como el del adjunto de color Amarillo y a este pintarlo de varios colores por ejemplo 1/3 de color morado, 1/3 color tomate y 1/3 de color azul

Si es que no se puede darle esa forma me tocaría pintar al shape rectangular de la forma anterior descrita.

Me podrían decir cómo hacerlo?

Gracias por su ayuda.

Mauricio
Shape.png

Irwin Rodriguez

unread,
May 2, 2014, 4:27:28 PM5/2/14
to publice...@googlegroups.com
Hola Mauricio, eso seria para un odontograma? yo hice uno hace tiempo y no pude darle la forma asi que lo dejé rectangular.

Cualquier cosa me escribes a mi correo.

Saludos!
--
Ing. Irwin Rodríguez
Consultor Informático
0412-521.06.79
 

Antes de imprimir este documento piense bien si es necesario hacerlo, el árbol que servirá para hacer el papel tardará 7 años en crecer. 

 
NOTA: La información mostrada en este mensaje es de caracter Confidencial y está dirigida unicamente a los contactos señalados en el encabezado; si el lector de este correo no es el destinatario del mismo, se le notifica que cualquier copia o distribución queda totalmente prohibida. Si usted ha recibido este mensaje por error, por favor notifique inmediatamente al remitente por este mismo medio y bórrelo de su sistema.

Alejandro Isla

unread,
May 4, 2014, 9:11:03 PM5/4/14
to publice...@googlegroups.com
Con shape´s no creo que puedas obtener esa forma, pero si tenes ganas de crear unos cuantos bitmap´s con el control image podrías hacerlo tranquilamente.

En principio tendríamos el bitmap del rectángulo central y los 8 bitmap de los vértices, es decir 9 bitmap´s, cada uno tiene que tener una versión de acuerdo a cada uno de los 3 colores, es decir 9 * 3 = 27 bitmaps y lógicamente, sus 27 mask, lo que hace un gran total de 54 bitmap.

Aunque teniendo en cuenta que se obtienen con flip verticales o/y horizontales de una esquina, no es tanto trabajo.

Luego los grabas con un nombre codificado para poder asignarlo al control image correspondiente según su caracteristica (es derechaabajorojo.bmp; derechamediorojo.bmp; derechaabajoazul.bmp; etc. etc.)

Saludos.

Alejandro Isla

unread,
May 4, 2014, 10:23:56 PM5/4/14
to publice...@googlegroups.com
Por ejemplo, con algunos bitmap. (el segmento inferior está desalineado para que se note la composición)

Saludos.
odonto.png
bitmaps.rar

Mario López

unread,
May 4, 2014, 10:53:21 PM5/4/14
to publice...@googlegroups.com
@Mauricio: si usás VFP9 podés usar PolyPoints con el shape, fijate en:

https://groups.google.com/forum/#!msg/publicesvfoxpro/Hcr-jwIPp8c/JEjr0IwyTToJ

Ejemplo:
---
WITH NEWOBJECT("xForm")
    .Show(1)
ENDWITH


DEFINE CLASS xForm as Form
    ADD OBJECT shpBorde1 as ShapeBorde WITH Rotation = 0
    ADD OBJECT shpBorde2 as ShapeBorde WITH Rotation = 90, BackColor = 65535
    ADD OBJECT shpBorde3 as ShapeBorde WITH Rotation = 180
    ADD OBJECT shpBorde4 as ShapeBorde WITH Rotation = 270
ENDDEFINE    


DEFINE CLASS ShapeBorde as Shape
    BackStyle = 1
    BackColor = 16777215
    nWidth  = 100        && Alto / ancho del borde del grafico
    nHeight = 30       

    Width  = 100
    Height = 100


    PROCEDURE Init

    This.AddProperty("aPoints[5,2]")
   
    WITH This
        .aPoints[1,1] = 0
        .aPoints[1,2] = 0
   
        .aPoints[2,1] = .nWidth
        .aPoints[2,2] = 0

        .aPoints[3,1] = .nWidth - .nHeight
        .aPoints[3,2] = .nHeight

        .aPoints[4,1] = .nHeight
        .aPoints[4,2] = .nHeight

        .aPoints[5,1] = 0
        .aPoints[5,2] = 0

        .PolyPoints = [This.aPoints]
    ENDWITH
   
    ENDPROC
ENDDEFINE
---

HTH
Mario
---

Fidel Charny

unread,
May 5, 2014, 7:59:03 AM5/5/14
to publice...@googlegroups.com
Mira este artículo de Lus María Guayán en PortalFox.
Dibujando polígonos con VFP 9.0 (Luis M. Guayán)


El viernes, 2 de mayo de 2014 17:19:42 UTC-3, mpulla escribió:

mpulla

unread,
May 5, 2014, 10:01:22 AM5/5/14
to publice...@googlegroups.com
Hola Irwin.

Es para un odontograma, la idea de pintar el shape de varios colores, es para dar la posibilidad de tener varios tratamientos por lado del diente y así no tener que crear varios shape por lado del diente.

Gracias por tu ofrecimiento, cualquier duda te contacto.

Saludos.
Mauricio


mpulla

unread,
May 5, 2014, 10:08:01 AM5/5/14
to publice...@googlegroups.com
Hola Alejandro.

Gracias por la ayuda y esfuerzo.

El problema de tener los bitmap es que los colores no son fijos, depende de la cantidad de registros de una tabla y el color que asigne el usuario, por eso busco la manera de darle la forma al shape y si está complicado lo dejo rectangular, lo que más me interesa es poderle dar varios colores al mismo shape, para evitar crear muchos shapes.

Saludos.
Mauricio

Alejandro Isla

unread,
May 5, 2014, 10:23:15 AM5/5/14
to publice...@googlegroups.com
Si algo aprendí en este portal es que nunca tenes que decir "no se puede", siempre tenes que anteponer un " me parece que, creo que,...".

Miles de opciones nuestro querido fox.

Saludos.

mpulla

unread,
May 5, 2014, 11:09:45 AM5/5/14
to publice...@googlegroups.com
Hola Alejandro.

Tienes razón con Fox hay muchas posibilidades.

Pero no dije "No se puede", sabes me haces recordar las palabras que tenía el Profe Luis María Guayán bajo su firma: "La palabra imposible solo figura
en el diccionario de los tontos
"

Saludos.
Mauricio

mpulla

unread,
May 5, 2014, 11:18:45 AM5/5/14
to publice...@googlegroups.com
Hola Mario.

Gracias por el ejemplo, le da la forma deseada pero no dibuja bien la una de las líneas del shape, voy a ver que se puede hacer.
Sabes cómo se puede pintar el shape de varios colores?

Saludos.
Mauricio

mpulla

unread,
May 5, 2014, 11:19:52 AM5/5/14
to publice...@googlegroups.com
Hola Fidel

Gracias por el link lo voy a revisar..

Saludos.
Mauricio

Mario López

unread,
May 5, 2014, 4:00:37 PM5/5/14
to publice...@googlegroups.com
@Mauricio:

- lo de la línea seguro que es por la rotación, en el peor de los casos tendrías que calcular vos los puntos x,y
rotados a mano y ahí seguro que anda bien.

- lo de un shape de distintos colores "no se puede" :) pero si se puede perfectamente componer la figura con
distintos shapes sin borde de varios colores y después un shape transparente con borde sobre los anteriores.

Saludos,
Mario

Alejandro Isla

unread,
May 6, 2014, 12:18:16 AM5/6/14
to publice...@googlegroups.com
No mpulla, el que casi dijo "no se puede" fui yo, mi post es un post a mi mismo :-)

Saludos.
Reply all
Reply to author
Forward
0 new messages