 |
Club Builder Foro de C++Builder en español
|
| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Raúl Capt


Registrado: 16 Ago 2002Mensajes: 174Ubicación: Oruro (Bolivia)
|
Publicado: Dom 16 May, 2004 12:23 am Asunto: Linea con formato y grosor... |
|
|
Hola a todos...
Como estoy apurado tratare de explicarme lo mas rapido q pueda, lo que necesito es hacer una linea, circulos, etc pero el estilo quiero que sea punteado, o con formato diferente al solido para que me entiendan pero necesito que esta se dibuje con un grosor superior a 2 pixeles, pero cuando cambio el grosor el formato se pierde...
Espero que me ayuden...
Gracias de antemano.. |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Mie 26 May, 2004 9:43 pm Asunto: |
|
|
En Windows NT/2000/XP/2003 el propio API permite crear plumas (PEN) de cualquier grosor incluso cuando son líneas punteadas. Un ejemplo:
int grosor = 5;
LOGBRUSH lb = { BS_SOLID, clBlue, 0 };
Canvas->Pen->Handle = ExtCreatePen(PS_GEOMETRIC | psDot, grosor, &lb, 0, 0);
// Ahora dibujamos normalmente
Canvas->Ellipse(10, 10, 90, 90);
Canvas->MoveTo(0, 0);
Canvas->LineTo(100, 100);
También podrías echarle un vistazo a la función del API "LineDDA". Con ella puedes dibujar líneas de cualquier tipo aunque es un poco más complicadilla. La ventaja es que es valida para todas las versiones de Windows, la desventaja es que solo sirve para crear líneas.
Tampoco seria una gran dificultad crear rutinas propias para dibujar figuras con líneas/curvas a nuestro gusto. |
|
| Volver arriba |
|
 |
Raúl Capt


Registrado: 16 Ago 2002Mensajes: 174Ubicación: Oruro (Bolivia)
|
Publicado: Jue 27 May, 2004 10:15 pm Asunto: Linea con formato y grosor |
|
|
Gracias por responder leo...!!!
lo voy a probar y otra pregunta, sera que sera suficiente para que lo pueda usar en el Canvas de un TImage???
Gracias de Antemano |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Jue 27 May, 2004 10:59 pm Asunto: |
|
|
Vale para cualquier Canvas.
int grosor = 5;
LOGBRUSH lb = { BS_SOLID, clBlue, 0 };
Image1->Canvas->Pen->Handle = ExtCreatePen(PS_GEOMETRIC | psDot, grosor, &lb, 0, 0);
// Ahora dibujamos normalmente
Image1->Canvas->Ellipse(10, 10, 90, 90);
Image1->Canvas->MoveTo(0, 0);
Image1->Canvas->LineTo(100, 100); |
|
| Volver arriba |
|
 |
|
|
No puedes publicar temas nuevos en este foro No puedes responder a temas en este foro No puedes editar tus mensajes en este foro No puedes borrar tus mensajes en este foro No puedes votar en las encuestas de este foro
|
© 2002–2026 Club Builder · Funciona con phpBB.
|