Ver Mensaje Individual
  #1  
Antiguo 22-09-2021
DaniMir DaniMir is offline
Registrado
 
Registrado: sep 2021
Posts: 6
Reputación: 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