Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-09-2021
DaniMir DaniMir is offline
Registrado
 
Registrado: sep 2021
Posts: 6
Poder: 0
DaniMir Va por buen camino
Lightbulb Diagrama de sistema de agua de una casa

Hola buen día a todos, espero me puedan ayudar con lo siguiente:

Lo que me gustaría es encontrar el método para poder dibujar lo siguiente en este TImage:

Las fotos obviamente son imagenes que descargue de la red pero en lo que concierne a las lineas se deben pintar al dar Click en una area especifica del TImage en color naranja con un grosor de 6 pixeles, y lo mismo para la líneas negras. y quisiera ver la posibilidad de que fueran líneas rectas.

En cuanto a las imagenes deben también aparecer en el punto donde de click en el TImage y debejen poder rotar a un angulo que el usuario desee con un Edit

La malla como referencia tiene 20 pixeles (por lo que todo es a esa escala en teoría).

De momento quería implementar lo siguiente pero no se muy bien como:

Código Delphi [-]
type
TForm1 = class(TForm)
ScrollBar1: TScrollBar;
ScrollBar2: TScrollBar;
Image1: TImage;
Label1: TLabel;
 
 procedure Image1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type Tlinea = packed record // Es un registro
x1 : integer; //Uso de base de datos
y1 : integer;
x2 : integer;
y2 : integer;
 
 end;
type Tfigura = packed record // Es un registro
x1 : integer; //Esquina superior izq de la figura
y1 : integer;
angulo : integer;
nTubo : integer;
 
 end;
var
 
 Form1: TForm1;
Tubo : Array [1..100] of Tlinea;
Casa : Array[1..50] of Tfigura;
nTubo : Integer;
nCasa : Integer;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Image1Click(Sender: TObject);
var
K,I: Integer;
begin
Image1.Canvas.Pen.Color := RGB(147,212,255);
for I := 1 to 100 do
begin
image1.canvas.moveto(0,i*20);
image1.canvas.Lineto(2000,i*20);
Image1.canvas.MoveTo(i*20,0);
Image1.canvas.LineTo(i*20,2000);
end;
nTubo:=0;
nCasa:=0;
end;

Espero me puedan ayudar
Imágenes Adjuntas
Tipo de Archivo: jpg Panel1.jpg (17,6 KB, 8 visitas)
Tipo de Archivo: png Panel2.png (28,5 KB, 22 visitas)

Última edición por Casimiro Notevi fecha: 22-09-2021 a las 22:16:09.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Diagrama trex2000 MS SQL Server 1 12-09-2006 07:54:10
lectura medidor sistema distrib. de agua Gustavo Gowdak Varios 2 20-04-2006 20:58:49
lectura de medidor sistema distrib. de agua Gustavo Gowdak OOP 1 20-04-2006 20:53:18
Diagrama de tablas automatico marceloalegre Varios 3 18-07-2005 21:58:02
Diagrama de Barras Rabata Varios 1 15-09-2004 18:40:15


La franja horaria es GMT +2. Ahora son las 16:40:13.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi