This commit is contained in:
f1iwq2
2020-04-17 15:59:50 +02:00
parent 8f2e8119a6
commit ce096cfcb7
20 changed files with 3164 additions and 1717 deletions

Binary file not shown.

View File

@@ -2,7 +2,7 @@ object FormConfig: TFormConfig
Left = 316
Top = 238
Width = 598
Height = 340
Height = 382
Caption = 'Configuration g'#233'n'#233'rale'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
@@ -16,7 +16,7 @@ object FormConfig: TFormConfig
TextHeight = 13
object Label6: TLabel
Left = 128
Top = 248
Top = 288
Width = 332
Height = 13
Caption =
@@ -41,7 +41,7 @@ object FormConfig: TFormConfig
Left = 8
Top = 8
Width = 265
Height = 89
Height = 81
Caption = 'CDM Rail'
TabOrder = 0
object Label1: TLabel
@@ -151,7 +151,7 @@ object FormConfig: TFormConfig
end
object Button1: TButton
Left = 112
Top = 272
Top = 312
Width = 105
Height = 25
Caption = 'Appliquer et Fermer'
@@ -160,7 +160,7 @@ object FormConfig: TFormConfig
end
object GroupBox3: TGroupBox
Left = 8
Top = 104
Top = 96
Width = 265
Height = 105
Caption = 'Acc'#232's r'#233'seau '#224' l'#39'interface vers la centrale LENZ'
@@ -246,11 +246,35 @@ object FormConfig: TFormConfig
end
object Button2: TButton
Left = 352
Top = 272
Top = 312
Width = 113
Height = 25
Caption = 'Fermer sans appliquer'
TabOrder = 5
OnClick = Button2Click
end
object GroupBox5: TGroupBox
Left = 8
Top = 208
Width = 265
Height = 57
Caption = 'Versions du programme'
TabOrder = 6
object CheckVerifVersion: TCheckBox
Left = 8
Top = 16
Width = 249
Height = 17
Caption = 'V'#233'rifications de nouvelle version au d'#233'marrage'
TabOrder = 0
end
object CheckInfoVersion: TCheckBox
Left = 8
Top = 32
Width = 241
Height = 17
Caption = 'Information sur la version actuelle'
TabOrder = 1
end
end
end

View File

@@ -4,7 +4,7 @@ interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls ;
Dialogs, ExtCtrls, StdCtrls , verif_version ;
type
TFormConfig = class(TForm)
@@ -37,6 +37,9 @@ type
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
GroupBox5: TGroupBox;
CheckVerifVersion: TCheckBox;
CheckInfoVersion: TCheckBox;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormActivate(Sender: TObject);
@@ -277,6 +280,9 @@ begin
connecte_USB;
end;
verifVersion:=CheckVerifVersion.Checked;
notificationVersion:=CheckInfoVersion.Checked;
formConfig.close;
end;
@@ -305,6 +311,10 @@ begin
if Valeur_entete=0 then RadioButton1.checked:=true;
if Valeur_entete=1 then RadioButton2.checked:=true;
if Valeur_entete=2 then RadioButton3.checked:=true;
CheckVerifVersion.Checked:=verifVersion;
CheckInfoVersion.Checked:=notificationVersion;
end;
end.

Binary file not shown.

View File

@@ -1,7 +1,7 @@
object FormConfigTCO: TFormConfigTCO
Left = 542
Top = 389
Width = 405
Width = 360
Height = 251
Caption = 'Configuration du TCO'
Color = clBtnFace
@@ -11,7 +11,7 @@ object FormConfigTCO: TFormConfigTCO
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
OnActivate = FormActivate
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
@@ -42,34 +42,14 @@ object FormConfigTCO: TFormConfigTCO
Height = 13
Caption = 'Nombre de cellules en vertical:'
end
object LabelNbCellX: TLabel
Left = 192
Top = 52
Width = 96
Height = 20
Caption = 'LabelNbCellX'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
end
object LabelNbCellY: TLabel
Left = 192
Top = 76
Width = 96
Height = 20
Caption = 'LabelNbCellX'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
object LabelErreur: TLabel
Left = 35
Top = 144
Width = 3
Height = 13
end
object ButtonOK: TButton
Left = 168
Left = 240
Top = 176
Width = 75
Height = 25
@@ -110,4 +90,20 @@ object FormConfigTCO: TFormConfigTCO
Caption = 'dessine grille'
TabOrder = 4
end
object EditNbCellX: TEdit
Left = 184
Top = 56
Width = 49
Height = 21
TabOrder = 5
Text = 'EditNbCellX'
end
object EditNbCellY: TEdit
Left = 184
Top = 80
Width = 49
Height = 21
TabOrder = 6
Text = 'EditNbCellY'
end
end

View File

@@ -15,13 +15,14 @@ type
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
LabelNbCellX: TLabel;
LabelNbCellY: TLabel;
ButtonDessine: TButton;
CheckDessineGrille: TCheckBox;
EditNbCellX: TEdit;
EditNbCellY: TEdit;
LabelErreur: TLabel;
procedure ButtonOKClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ButtonDessineClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
private
{ Déclarations privées }
public
@@ -38,13 +39,47 @@ uses UnitPrinc;
{$R *.dfm}
procedure TFormConfigTCO.ButtonOKClick(Sender: TObject);
var i,erreur : integer;
function verif_config_TCO : boolean; // renvoie true si ok
var erreur : integer;
nokNbX,nokNbY,nokHt,nokLg : boolean;
begin
with formConfigTCO do
begin
Val(EditNbCellX.Text,NbreCellX,erreur);
nokNbX:=erreur<>0;
if nokNbX then LabelErreur.caption:='Erreur nombre de cellules X';
nokNbX:=(NbreCellX<20) or (NbreCellX>MaxCellX);
if nokNbX then LabelErreur.caption:='Erreur: nombre de cellules X: mini=20 maxi='+IntToSTR(MaxCellX);
Val(EditNbCellY.Text,NbreCellY,erreur);
nokNbY:=erreur<>0;
if nokNbY then LabelErreur.caption:='Erreur: nombre de cellules Y';
nokNbY:=nokNbY or (NbreCellY<10) or (NbreCellY>MaxCellY);
if nokNbY then LabelErreur.caption:='Erreur: nombre de cellules Y: mini=10 maxi='+IntToSTR(MaxCellY);
Val(EditTailleCellX.Text,LargeurCell,erreur);
nokLg:=erreur<>0;
if nokLg then LabelErreur.caption:='Erreur largeur de cellules';
nokLg:=nokLg or (LargeurCell<20) or (LargeurCell>50) ;
if nokLg then LabelErreur.caption:='Erreur: Tailles des cellules - largeur cellules mini=20 maxi=50';
Val(EditTailleCellY.Text,HauteurCell,erreur);
nokHt:=erreur<>0;
if nokHt then LabelErreur.caption:='Erreur hauteur de cellules';
nokHt:=nokHt or (HauteurCell<20) or (HauteurCell>50) ;
if nokHt then LabelErreur.caption:='Erreur: Tailles des cellules - hauteur cellules mini=20 maxi=50';
AvecGrille:=checkDessineGrille.Checked;
end;
verif_config_TCO:=not(nokNbX or nokNbY or nokHt or nokLg);
end;
procedure TFormConfigTCO.ButtonOKClick(Sender: TObject);
var i : integer;
begin
if verif_config_TCO then
begin
Val(EditTailleCellX.Text,i,erreur);
LargeurCell:=i;
Val(EditTailleCellY.Text,i,erreur);
HauteurCell:=i;
with formTCO do
begin
ImageTCO.Width:=LargeurCell*NbreCellX;
@@ -52,30 +87,18 @@ begin
end;
AvecGrille:=checkDessineGrille.Checked;
formTCO.affiche_TCO;
LabelErreur.caption:='';
close;
end;
procedure TFormConfigTCO.FormCreate(Sender: TObject);
begin
EditTailleCellX.Text:=IntToSTR(LargeurCell);
EditTailleCellY.Text:=IntToSTR(HauteurCell);
LabelNbCellX.Caption:=IntToSTR(NbreCellX);
LabelNbCellY.Caption:=IntToSTR(NbreCellY);
end;
procedure TFormConfigTCO.ButtonDessineClick(Sender: TObject);
var i,erreur : integer;
r : Trect;
c : tCanvas;
begin
Val(EditTailleCellX.Text,i,erreur);
LargeurCell:=i;
Val(EditTailleCellY.Text,i,erreur);
HauteurCell:=i;
if verif_config_TCO then
begin
with formTCO do
begin
ImageTCO.Width:=LargeurCell*NbreCellX;
@@ -83,5 +106,18 @@ begin
end;
formTCO.affiche_TCO;
end;
end;
procedure TFormConfigTCO.FormActivate(Sender: TObject);
begin
EditTailleCellX.Text:=IntToSTR(LargeurCell);
EditTailleCellY.Text:=IntToSTR(HauteurCell);
EditNbCellX.Text:=IntToSTR(NbreCellX);
EditNbCellY.Text:=IntToSTR(NbreCellY);
checkDessineGrille.Checked:=AvecGrille;
end;
end.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -1,11 +1,9 @@
object FormPrinc: TFormPrinc
Left = 56
Top = 197
AutoSize = True
BorderStyle = bsSingle
Left = 30
Top = 270
Width = 1212
Height = 664
Caption = 'Client TCP-IP CDM Rail ou USB - syst'#232'me LENZ'
ClientHeight = 606
ClientWidth = 1196
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
@@ -15,9 +13,13 @@ object FormPrinc: TFormPrinc
Menu = MainMenu1
OldCreateOrder = False
Position = poScreenCenter
Scaled = False
ShowHint = True
OnClose = FormClose
OnCreate = FormCreate
DesignSize = (
1196
606)
PixelsPerInch = 96
TextHeight = 13
object LabelTitre: TLabel
@@ -33,19 +35,6 @@ object FormPrinc: TFormPrinc
Font.Style = [fsBold, fsItalic]
ParentFont = False
end
object LabelEtat: TLabel
Left = 456
Top = 16
Width = 152
Height = 18
Caption = 'Initialisations en cours'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = []
ParentFont = False
end
object Image9feux: TImage
Left = 384
Top = 0
@@ -678,8 +667,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image2feux: TImage
Left = 1096
Top = 136
Left = 776
Top = 128
Width = 33
Height = 57
Picture.Data = {
@@ -752,8 +741,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image2Dir: TImage
Left = 968
Top = 48
Left = 696
Top = 184
Width = 41
Height = 25
Picture.Data = {
@@ -827,8 +816,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image3Dir: TImage
Left = 1008
Top = 48
Left = 768
Top = 136
Width = 49
Height = 25
Picture.Data = {
@@ -905,8 +894,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image4Dir: TImage
Left = 1056
Top = 48
Left = 816
Top = 128
Width = 57
Height = 25
Picture.Data = {
@@ -993,8 +982,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image5Dir: TImage
Left = 1112
Top = 48
Left = 664
Top = 120
Width = 65
Height = 25
Picture.Data = {
@@ -1091,8 +1080,8 @@ object FormPrinc: TFormPrinc
Visible = False
end
object Image6Dir: TImage
Left = 1112
Top = 80
Left = 808
Top = 152
Width = 81
Height = 25
Picture.Data = {
@@ -1198,41 +1187,27 @@ object FormPrinc: TFormPrinc
0000}
Visible = False
end
object Label1: TLabel
Left = 656
Top = 148
Width = 89
Height = 13
Caption = 'Nombre de trains : '
end
object LabelNbTrains: TLabel
Left = 760
Top = 144
Width = 9
Height = 19
Caption = '0'
object LabelEtat: TLabel
Left = 456
Top = 16
Width = 152
Height = 18
Anchors = [akTop, akRight]
Caption = 'Initialisations en cours'
Font.Charset = ANSI_CHARSET
Font.Color = clBlack
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
Font.Style = []
ParentFont = False
end
object BoutVersion: TButton
Left = 1008
Top = 16
Width = 83
Height = 33
Caption = 'Dem version'
TabOrder = 0
OnClick = BoutVersionClick
end
object ListBox1: TListBox
Left = 8
Top = 48
Width = 633
Height = 520
Style = lbOwnerDrawFixed
Anchors = [akLeft, akTop, akRight, akBottom]
Color = clBlack
Font.Charset = ANSI_CHARSET
Font.Color = clBlue
@@ -1241,34 +1216,31 @@ object FormPrinc: TFormPrinc
Font.Style = []
ItemHeight = 16
ParentFont = False
TabOrder = 1
TabOrder = 0
OnDrawItem = ListBox1DrawItem
end
object BoutonRaf: TButton
Left = 912
Top = 16
Width = 89
Height = 33
Caption = 'Rafraichissement'
TabOrder = 2
OnClick = BoutonRafClick
end
object ScrollBox1: TScrollBox
Left = 648
Top = 168
Top = 176
Width = 537
Height = 405
Height = 393
HorzScrollBar.Smooth = True
HorzScrollBar.Tracking = True
VertScrollBar.Smooth = True
VertScrollBar.Tracking = True
Anchors = [akTop, akRight, akBottom]
Color = clWhite
ParentColor = False
TabOrder = 3
TabOrder = 1
end
object GroupBox1: TGroupBox
Left = 656
Top = 8
Left = 648
Top = 0
Width = 249
Height = 129
Anchors = [akTop, akRight]
Caption = 'Commande d'#39'accessoires'
TabOrder = 4
TabOrder = 2
object Label2: TLabel
Left = 7
Top = 16
@@ -1309,17 +1281,6 @@ object FormPrinc: TFormPrinc
Text = '1'
OnEnter = EditvalEnter
end
object ButtonCommande: TButton
Left = 124
Top = 24
Width = 109
Height = 33
Hint = 'Ecriture des accessoires DCC'
Caption = 'Envoi commande'
TabOrder = 2
WordWrap = True
OnClick = ButtonCommandeClick
end
object ButtonEcrCV: TButton
Left = 8
Top = 64
@@ -1327,7 +1288,7 @@ object FormPrinc: TFormPrinc
Height = 25
Hint = 'Ecriture CV en mode direct sur voie de programmation'
Caption = 'Ecriture CV - 1 '#224' 255 par bus XpressNet'
TabOrder = 3
TabOrder = 2
WordWrap = True
OnClick = ButtonEcrCVClick
end
@@ -1339,28 +1300,20 @@ object FormPrinc: TFormPrinc
Hint = 'Lecture CV en mode direct sur voie de programmation'
Caption = 'Lecture CV - 1 '#224' 255 par le bus XpressNet'
Enabled = False
TabOrder = 4
TabOrder = 3
OnClick = ButtonLitCVClick
end
end
object ButtonTest: TButton
Left = 912
Top = 96
Width = 89
object ButtonCommande: TButton
Left = 124
Top = 24
Width = 109
Height = 33
Caption = 'Demande '#233'tat r'#233'trosignalisation'
TabOrder = 5
Hint = 'Ecriture des accessoires DCC'
Caption = 'Envoi commande'
TabOrder = 4
WordWrap = True
OnClick = ButtonTestClick
OnClick = ButtonCommandeClick
end
object ButtonInfo: TButton
Left = 1008
Top = 56
Width = 81
Height = 33
Caption = 'Informations'
TabOrder = 6
OnClick = ButtonInfoClick
end
object StatusBar1: TStatusBar
Left = 0
@@ -1380,56 +1333,139 @@ object FormPrinc: TFormPrinc
2143341208000000ED030000ED03000001568A64000006000000010000040000
00020000802500000000080000000000000000003F00000011000000}
end
object loco: TButton
Left = 1096
Top = 16
Width = 75
object Panel1: TPanel
Left = 912
Top = 0
Width = 273
Height = 169
Anchors = [akTop, akRight]
Caption = 'Panel1'
TabOrder = 5
object BoutonRaf: TButton
Left = 8
Top = 8
Width = 89
Height = 33
Caption = 'loco'
TabOrder = 9
OnClick = locoClick
Caption = 'Rafraichissement'
TabOrder = 0
OnClick = BoutonRafClick
end
object ButtonAffDebug: TButton
Left = 912
Top = 56
Left = 8
Top = 48
Width = 89
Height = 33
Caption = 'Affiche debug'
TabOrder = 10
TabOrder = 1
OnClick = ButtonAffDebugClick
end
object BoutVersion: TButton
Left = 102
Top = 8
Width = 83
Height = 33
Caption = 'Dem version'
TabOrder = 2
OnClick = BoutVersionClick
end
object loco: TButton
Left = 190
Top = 8
Width = 75
Height = 33
Caption = 'loco'
TabOrder = 3
OnClick = locoClick
end
object ButtonInfo: TButton
Left = 104
Top = 48
Width = 81
Height = 33
Caption = 'Informations'
TabOrder = 4
OnClick = ButtonInfoClick
end
object ButtonReprise: TButton
Left = 1096
Top = 56
Left = 190
Top = 48
Width = 75
Height = 33
Hint =
'Relance du bus DCC apr'#232's une '#233'criture d'#39'un CV ou une mise hors t' +
'ension de la centrale'
Caption = 'Reprise DCC'
TabOrder = 11
TabOrder = 5
OnClick = ButtonRepriseClick
end
object Button2: TButton
Left = 872
Top = 136
Width = 97
Height = 25
Caption = 'Test'
TabOrder = 12
Visible = False
OnClick = Button2Click
object ButtonTest: TButton
Left = 8
Top = 88
Width = 89
Height = 33
Caption = 'Demande '#233'tat r'#233'trosignalisation'
TabOrder = 6
WordWrap = True
OnClick = ButtonTestClick
end
object ButtonArretSimu: TButton
Left = 1008
Top = 96
Left = 104
Top = 88
Width = 81
Height = 33
Caption = 'Arret simulation'
TabOrder = 13
TabOrder = 7
Visible = False
OnClick = ButtonArretSimuClick
end
object ButtonAffTCO: TButton
Left = 192
Top = 88
Width = 73
Height = 33
Caption = 'Affiche TCO'
TabOrder = 8
OnClick = ButtonAffTCOClick
end
object ButtonLanceCDM: TButton
Left = 8
Top = 128
Width = 89
Height = 33
Caption = 'Lance CDM rail'
TabOrder = 9
OnClick = ButtonLanceCDMClick
end
end
object Panel2: TPanel
Left = 648
Top = 136
Width = 153
Height = 25
Anchors = [akTop, akRight]
Caption = 'Panel2'
TabOrder = 6
object Label1: TLabel
Left = 16
Top = 4
Width = 89
Height = 13
Caption = 'Nombre de trains : '
end
object LabelNbTrains: TLabel
Left = 120
Top = 2
Width = 9
Height = 19
Caption = '0'
Font.Charset = ANSI_CHARSET
Font.Color = clBlack
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
end
object Timer1: TTimer
Interval = 100
OnTimer = Timer1Timer
@@ -1447,8 +1483,7 @@ object FormPrinc: TFormPrinc
Left = 320
end
object MainMenu1: TMainMenu
Left = 1160
Top = 8
Left = 560
object Afficher1: TMenuItem
Caption = 'Afficher'
object Etatdesdtecteurs1: TMenuItem
@@ -1571,11 +1606,11 @@ object FormPrinc: TFormPrinc
Left = 352
end
object OpenDialog: TOpenDialog
Left = 1104
Top = 112
Left = 888
Top = 152
end
object SaveDialog: TSaveDialog
Left = 1120
Top = 88
Left = 888
Top = 16
end
end

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

View File

@@ -1,7 +1,7 @@
object FormTCO: TFormTCO
Left = 251
Top = 202
Width = 928
Left = 232
Top = 211
Width = 992
Height = 681
VertScrollBar.Visible = False
Caption = 'FormTCO'
@@ -15,47 +15,50 @@ object FormTCO: TFormTCO
KeyPreview = True
OldCreateOrder = False
OnActivate = FormActivate
OnClose = FormClose
OnCreate = FormCreate
OnDockOver = FormDockOver
OnKeyDown = FormKeyDown
DesignSize = (
976
643)
PixelsPerInch = 96
TextHeight = 13
object LabelX: TLabel
Left = 32
Top = 14
Width = 53
Height = 19
Caption = 'LabelX'
Left = 72
Top = 6
Width = 7
Height = 16
Caption = '0'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Height = -13
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label2: TLabel
Left = 16
Top = 16
Width = 13
Height = 13
Caption = 'X='
end
object Label3: TLabel
Left = 104
Top = 16
Width = 13
Height = 13
Caption = 'X='
Top = 6
Width = 49
Height = 16
Caption = 'Cellule'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -13
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object LabelY: TLabel
Left = 120
Top = 14
Width = 51
Height = 19
Caption = 'Label1'
Left = 96
Top = 6
Width = 7
Height = 16
Caption = '0'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Height = -13
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
@@ -63,120 +66,151 @@ object FormTCO: TFormTCO
object Label1: TLabel
Left = 776
Top = 8
Width = 3
Height = 13
Caption = '-'
end
object SourisX: TLabel
Left = 232
Top = 8
Width = 6
Height = 13
Caption = '0'
end
object SourisY: TLabel
Left = 288
Top = 8
Width = 6
Height = 13
Caption = '0'
end
object ImageTemp: TImage
Left = 16
Top = 464
Width = 97
Height = 97
end
object Label19: TLabel
Left = 912
Top = 456
Width = 32
Height = 13
Caption = 'Label1'
Anchors = [akRight, akBottom]
Caption = 'Zoom'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object ScrollBox: TScrollBox
Left = 8
Top = 32
Width = 889
Height = 433
HorzScrollBar.Smooth = True
HorzScrollBar.Tracking = True
VertScrollBar.Smooth = True
VertScrollBar.Tracking = True
Anchors = [akLeft, akTop, akRight, akBottom]
TabOrder = 0
DesignSize = (
885
429)
object ImageTCO: TImage
Left = 0
Top = 0
Width = 865
Height = 361
Anchors = [akLeft, akTop, akRight, akBottom]
PopupMenu = PopupMenu1
OnClick = ImageTCOClick
OnContextPopup = ImageTCOContextPopup
OnDragOver = ImageTCODragOver
OnMouseDown = ImageTCOMouseDown
OnMouseMove = ImageTCOMouseMove
OnMouseUp = ImageTCOMouseUp
end
end
object TrackBarZoom: TTrackBar
Left = 912
Top = 40
Width = 41
Height = 409
Anchors = [akTop, akRight, akBottom]
Max = 50
Min = 20
Orientation = trVertical
Position = 20
TabOrder = 1
TickMarks = tmTopLeft
OnChange = TrackBarZoomChange
end
object Panel1: TPanel
Left = 8
Top = 472
Width = 953
Height = 153
Anchors = [akLeft, akRight, akBottom]
Font.Charset = ANSI_CHARSET
Font.Color = clBlue
Font.Height = -9
Font.Name = 'MS Sans Serif'
Font.Style = []
ParentFont = False
TabOrder = 2
object Label4: TLabel
Left = 24
Top = 480
Width = 175
Height = 25
Left = 8
Top = 8
Width = 137
Height = 20
Caption = 'Adresse de l'#39#233'l'#233'ment: '
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
end
object Label5: TLabel
Left = 24
Top = 520
Width = 150
Height = 25
Left = 8
Top = 32
Width = 116
Height = 20
Caption = 'Type de l'#39#233'l'#233'ment: '
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
end
object ImagePalette1: TImage
Left = 440
Top = 480
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette1EndDrag
OnMouseDown = ImagePalette1MouseDown
object Label15: TLabel
Left = 8
Top = 56
Width = 123
Height = 20
Caption = 'Image de l'#39#233'l'#233'ment: '
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
end
object ImagePalette2: TImage
Left = 512
Top = 480
object ImagePalette5: TImage
Left = 504
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette2EndDrag
OnMouseDown = ImagePalette2MouseDown
end
object ImagePalette3: TImage
Left = 584
Top = 480
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette3EndDrag
OnMouseDown = ImagePalette3MouseDown
end
object ImagePalette4: TImage
Left = 656
Top = 480
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette4EndDrag
OnMouseDown = ImagePalette4MouseDown
end
object ImagePaletteDroit: TImage
Left = 440
Top = 528
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePaletteDroitEndDrag
OnMouseDown = ImagePaletteDroitMouseDown
end
object ImageSupG: TImage
Left = 512
Top = 528
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageSupGEndDrag
OnMouseDown = ImageSupGMouseDown
end
object ImageSupD: TImage
Left = 584
Top = 528
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageSupDEndDrag
OnMouseDown = ImageSupDMouseDown
end
object ImageInfD: TImage
Left = 656
Top = 528
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageInfDEndDrag
OnMouseDown = ImageInfDMouseDown
end
object ImageInfG: TImage
Left = 728
Top = 528
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageInfGEndDrag
OnMouseDown = ImageInfGMouseDown
OnEndDrag = ImagePalette5EndDrag
OnMouseDown = ImagePalette5MouseDown
end
object Label6: TLabel
Left = 424
Top = 488
Left = 200
Top = 22
Width = 9
Height = 19
Caption = '1'
@@ -187,9 +221,18 @@ object FormTCO: TFormTCO
Font.Style = [fsBold]
ParentFont = False
end
object ImagePalette2: TImage
Left = 288
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette2EndDrag
OnMouseDown = ImagePalette2MouseDown
end
object Label7: TLabel
Left = 496
Top = 488
Left = 272
Top = 22
Width = 9
Height = 19
Caption = '2'
@@ -200,35 +243,9 @@ object FormTCO: TFormTCO
Font.Style = [fsBold]
ParentFont = False
end
object Label8: TLabel
Left = 568
Top = 488
Width = 9
Height = 19
Caption = '3'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label9: TLabel
Left = 640
Top = 488
Width = 9
Height = 19
Caption = '4'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label10: TLabel
Left = 424
Top = 536
Left = 488
Top = 22
Width = 9
Height = 19
Caption = '5'
@@ -239,9 +256,54 @@ object FormTCO: TFormTCO
Font.Style = [fsBold]
ParentFont = False
end
object ImagePaletteDroit: TImage
Left = 216
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePaletteDroitEndDrag
OnMouseDown = ImagePaletteDroitMouseDown
end
object ImageSupG: TImage
Left = 216
Top = 56
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageSupGEndDrag
OnMouseDown = ImageSupGMouseDown
end
object ImageSupD: TImage
Left = 288
Top = 56
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageSupDEndDrag
OnMouseDown = ImageSupDMouseDown
end
object ImageInfD: TImage
Left = 360
Top = 56
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageInfDEndDrag
OnMouseDown = ImageInfDMouseDown
end
object ImageInfG: TImage
Left = 432
Top = 56
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageInfGEndDrag
OnMouseDown = ImageInfGMouseDown
end
object Label11: TLabel
Left = 496
Top = 536
Left = 200
Top = 70
Width = 9
Height = 19
Caption = '6'
@@ -253,8 +315,8 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label12: TLabel
Left = 568
Top = 536
Left = 272
Top = 70
Width = 9
Height = 19
Caption = '7'
@@ -266,8 +328,8 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label13: TLabel
Left = 640
Top = 536
Left = 344
Top = 70
Width = 9
Height = 19
Caption = '8'
@@ -279,8 +341,8 @@ object FormTCO: TFormTCO
ParentFont = False
end
object Label14: TLabel
Left = 712
Top = 536
Left = 416
Top = 70
Width = 9
Height = 19
Caption = '9'
@@ -291,22 +353,53 @@ object FormTCO: TFormTCO
Font.Style = [fsBold]
ParentFont = False
end
object Label15: TLabel
Left = 24
Top = 560
Width = 158
Height = 25
Caption = 'Image de l'#39#233'l'#233'ment: '
object ImagePalette3: TImage
Left = 360
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette3EndDrag
OnMouseDown = ImagePalette3MouseDown
end
object ImagePalette4: TImage
Left = 432
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImagePalette4EndDrag
OnMouseDown = ImagePalette4MouseDown
end
object Label8: TLabel
Left = 344
Top = 22
Width = 9
Height = 19
Caption = '3'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Arial Narrow'
Font.Style = []
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object Label9: TLabel
Left = 416
Top = 22
Width = 9
Height = 19
Caption = '4'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ImageDiag1: TImage
Left = 440
Top = 576
Left = 216
Top = 104
Width = 41
Height = 41
DragMode = dmAutomatic
@@ -314,8 +407,8 @@ object FormTCO: TFormTCO
OnMouseDown = ImageDiag1MouseDown
end
object Label16: TLabel
Left = 416
Top = 584
Left = 192
Top = 118
Width = 18
Height = 19
Caption = '10'
@@ -327,8 +420,8 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImageDiag2: TImage
Left = 512
Top = 576
Left = 288
Top = 104
Width = 41
Height = 41
DragMode = dmAutomatic
@@ -336,8 +429,8 @@ object FormTCO: TFormTCO
OnMouseDown = ImageDiag2MouseDown
end
object Label17: TLabel
Left = 488
Top = 584
Left = 264
Top = 118
Width = 17
Height = 19
Caption = '11'
@@ -349,8 +442,8 @@ object FormTCO: TFormTCO
ParentFont = False
end
object ImageFeu: TImage
Left = 584
Top = 576
Left = 368
Top = 104
Width = 25
Height = 41
DragMode = dmAutomatic
@@ -359,8 +452,30 @@ object FormTCO: TFormTCO
OnMouseDown = ImageFeuMouseDown
end
object Label18: TLabel
Left = 560
Top = 584
Left = 336
Top = 118
Width = 18
Height = 19
Caption = '30'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ImageAig45PG_AG: TImage
Left = 576
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageAig45PG_AGEndDrag
OnMouseDown = ImageAig45PG_AGMouseDown
end
object Label20: TLabel
Left = 552
Top = 22
Width = 18
Height = 19
Caption = '12'
@@ -371,137 +486,191 @@ object FormTCO: TFormTCO
Font.Style = [fsBold]
ParentFont = False
end
object ImageTemp: TImage
Left = 304
Top = 504
Width = 97
Height = 97
end
object SourisX: TLabel
Left = 232
Top = 8
Width = 36
Height = 13
Caption = 'SourisX'
end
object SourisY: TLabel
Left = 288
Top = 8
Width = 36
Height = 13
Caption = 'SourisY'
end
object EditAdrElement: TEdit
Left = 200
Top = 480
Width = 89
Height = 33
object Label3: TLabel
Left = 624
Top = 22
Width = 18
Height = 19
Caption = '13'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ImageAig45PD_AD: TImage
Left = 648
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageAig45PD_ADEndDrag
OnMouseDown = ImageAig45PD_ADMouseDown
end
object Label21: TLabel
Left = 696
Top = 22
Width = 18
Height = 19
Caption = '14'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ImageAig45PD_AG: TImage
Left = 720
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageAig45PD_AGEndDrag
OnMouseDown = ImageAig45PD_AGMouseDown
end
object Label22: TLabel
Left = 768
Top = 22
Width = 18
Height = 19
Caption = '15'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial'
Font.Style = [fsBold]
ParentFont = False
end
object ImageAig45PG_AD: TImage
Left = 792
Top = 8
Width = 41
Height = 41
DragMode = dmAutomatic
OnEndDrag = ImageAig45PG_ADEndDrag
OnMouseDown = ImageAig45PG_ADMouseDown
end
object Label23: TLabel
Left = 8
Top = 85
Width = 33
Height = 20
Caption = 'Texte'
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
TabOrder = 1
end
object EditAdrElement: TEdit
Left = 152
Top = 8
Width = 33
Height = 28
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
TabOrder = 0
OnChange = EditAdrElementChange
end
object EditTypeElement: TEdit
Left = 200
Top = 520
Width = 89
Left = 152
Top = 32
Width = 33
Height = 33
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
ReadOnly = True
TabOrder = 0
TabOrder = 1
end
object EditTypeImage: TEdit
Left = 152
Top = 56
Width = 33
Height = 28
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -16
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
TabOrder = 2
OnKeyPress = EditTypeImageKeyPress
end
object ButtonSauveTCO: TButton
Left = 784
Top = 480
Left = 854
Top = 48
Width = 91
Height = 33
Caption = 'Sauvegarder TCO'
TabOrder = 2
TabOrder = 3
WordWrap = True
OnClick = ButtonSauveTCOClick
end
object ButtonRedessine: TButton
Left = 784
Top = 520
Left = 856
Top = 8
Width = 89
Height = 33
Caption = 'Redessine'
TabOrder = 3
TabOrder = 4
OnClick = ButtonRedessineClick
end
object ScrollBox: TScrollBox
Left = 16
Top = 40
Width = 873
Height = 425
TabOrder = 4
object ImageTCO: TImage
Left = 0
Top = 0
Width = 865
Height = 409
PopupMenu = PopupMenu1
OnClick = ImageTCOClick
OnContextPopup = ImageTCOContextPopup
OnDragOver = ImageTCODragOver
OnMouseDown = ImageTCOMouseDown
OnMouseMove = ImageTCOMouseMove
OnMouseUp = ImageTCOMouseUp
end
end
object EditTypeImage: TEdit
Left = 200
Top = 560
Width = 89
Height = 33
Font.Charset = ANSI_CHARSET
Font.Color = clWindowText
Font.Height = -21
Font.Name = 'Arial Narrow'
Font.Style = []
ParentFont = False
TabOrder = 5
OnKeyPress = EditTypeImageKeyPress
end
object Button1: TButton
Left = 784
Top = 560
Left = 672
Top = 88
Width = 89
Height = 25
Caption = 'Simu det 1'
TabOrder = 6
TabOrder = 5
OnClick = Button1Click
end
object Button2: TButton
Left = 784
Top = 592
Left = 672
Top = 120
Width = 89
Height = 25
Caption = 'Simu Det 0'
TabOrder = 7
TabOrder = 6
OnClick = Button2Click
end
object ButtonConfigTCO: TButton
Left = 576
Top = 8
Left = 832
Top = 88
Width = 113
Height = 25
Height = 33
Caption = 'Configuration TCO'
TabOrder = 8
TabOrder = 7
OnClick = ButtonConfigTCOClick
end
object EditTexte: TEdit
Left = 96
Top = 88
Width = 89
Height = 21
TabOrder = 8
OnChange = EditTexteChange
end
end
object PopupMenu1: TPopupMenu
Left = 352
Top = 472
Left = 360
object Annulercouper: TMenuItem
Caption = 'Annuler couper'
OnClick = AnnulercouperClick
end
object N5: TMenuItem
Caption = '-'
end
object MenuCouper: TMenuItem
Caption = 'Couper'
OnClick = MenuCouperClick
@@ -517,61 +686,17 @@ object FormTCO: TFormTCO
object N1: TMenuItem
Caption = '-'
end
object Insrer1: TMenuItem
Caption = 'Ins'#233'rer'
object aiguillageG_PG: TMenuItem
Caption = 'Aiguillage gauche ; pointe '#224' gauche'
OnClick = aiguillageG_PGClick
end
object aiguillageD_PD: TMenuItem
Caption = 'Aiguillage droit ; pointe '#224' droite'
OnClick = aiguillageD_PDClick
end
object N2: TMenuItem
Caption = '-'
end
object Aiguillagegauchepointedroite1: TMenuItem
Caption = 'Aiguillage gauche ; pointe '#224' droite'
OnClick = Aiguillagegauchepointedroite1Click
end
object Aiguillagedroitpointegauche1: TMenuItem
Caption = 'Aiguillage droit : pointe '#224' gauche'
OnClick = Aiguillagedroitpointegauche1Click
end
object N3: TMenuItem
Caption = '-'
end
object Elmentdroit1: TMenuItem
Caption = 'El'#233'ment droit'
OnClick = Elmentdroit1Click
end
object N4: TMenuItem
Caption = '-'
end
object Courbegaucheversdroite1: TMenuItem
Caption = 'Courbe infD'
OnClick = Courbegaucheversdroite1Click
end
object Courbedroiteversgauche1: TMenuItem
Caption = 'Courbe infG'
OnClick = Courbedroiteversgauche1Click
end
object CourbeSupD1: TMenuItem
Caption = 'Courbe SupD'
OnClick = CourbeSupD1Click
end
object CourbeSupG1: TMenuItem
Caption = 'Courbe SupG'
OnClick = CourbeSupG1Click
end
end
object Tourner90G: TMenuItem
Caption = 'Tourner 90'#176' '#224' gauche'
Caption = 'Positionner 90'#176' '#224' gauche'
OnClick = Tourner90GClick
end
object Tourner90D: TMenuItem
Caption = 'Tourner 90'#176' '#224' droite'
Caption = 'Positionner 90'#176' '#224' droite'
OnClick = Tourner90DClick
end
object Pos_vert: TMenuItem
Caption = 'Positionner verticalement'
OnClick = Pos_vertClick
end
end
end

File diff suppressed because it is too large Load Diff

View File

@@ -1,129 +1,128 @@
/******************************************
/ fichier de configuration de signaux_complexes
/ gily - f1iwq - 2018
/******************************************
/ fichier de configuration de signaux complexes
/ cap de bouheyre avec signaux - 2018
/****************************************
/ Sans Log=0 / Avec Log=1 : génère un fichier log
Log=0
/ Affichage du débug du calcul des routes, et enregistrement dans le log si la variable précédente est à 1
TraceDet=0
/ Envoie un 0 après le pilotage des décodeurs
/ Mettre 1 si utilisation de décodeurs LEB
RazSignaux=1
/ si 1 envoie un 0 après le pilotage des décodeurs LEB
RazSignaux=0
/
/ modélisation des aiguillages : détermine les éléments connectés aux 3 branches des aiguilles (Pointe, Droit, Dévié (S)
/ adresse d'aiguillage,P=élément vers pointe D=élément vers Droit, S=élément vers dévié.
/ [60 ou 30 dans le cas d'un aiguillage en position déviée qui doit être fanchie à 30 ou 60]
/ Elément = détecteur (valeur uniquement numérique) ou aiguillage (adresse+branche de connexion (P S ou D)
/ Exemple : 1,P518,D523,S3P signifie : définition de l'aiguillage @1 : sur pointe relié au détecteur 518
/ adresse d'aiguillage[B],P=élément vers pointe D=élément vers Droit, S=élément vers dévié
/ B pour adresse d'aiguillage déja utilisée
/ Elément = détecteur (valeur uniquement numérique) ou aiguillage (adresse [TRI,TJS,TJD]+branche de connexion (P S ou D)
/ Exemples : 1,P518,D523,S3P signifie : définition de l'aiguillage @1 : sur pointe relié au détecteur 518
/ sur Droit relié au détecteur 518
/ sur Dévié, relié à l'aiguillage 3 en pointe
/ Pour une TJD : 26TJD,D530,S529,P28
/ P désigne l'autre adresse de la TJD
/ Aiguillage triple
/
/ Voir la documentation des signaux complexes pour une description complete
/ S'il n'y a pas de détecteur connecté à une branche d'aiguillage, mettre 0.
1,P518,S3P,D523,30
2,P12S,S5S,D519
3,P1S,S5D,D4P
4,P3D,S514,D6S
5,P515,S2S,D3S
6,P516,S4D,D0
7,P527,S520,D519
8,P527,S522,D521
9,P526,S515,D513,60
10,P19P,S528,D29P,30
11,P18P,D30D,S525
12,P517,D20S,S2P
17,P525,D535,S528
18,P11P,S517,D23P
19,P10P,S531,D22P
20,P520,D21P,S12D
21,P20D,S28D,D28D
22,P19D,S538,D537
23,P18D,S534,D538
24,P538,S533,D32S
25,P31S,D529,S27P
26TJD,D530,S529,P28
28TJD,D21D,S21S,P26
27,P25S,D530,S537
29,P10D,S30S,D513,60
30,P524,S29D,D11D
31,P534,S25P,D0
32,P22S,S24D,D0
1,S1BS,P2P,D3P,0
1B,P553,D16P,S1S
2,P1P,D4P,S2BS
2B,P521,D16D,S2S
3,P1D,D522,S5BP
4,P2D,D554,S6BP
5,P9P,S15P,D5BS
5B,P3S,S5D,D545,0,1
6,P10P,S546,D6BS
6B,P4S,D545,S6D
7,P15S,D566,S565
8,P20P,D566,S565
9,P5P,D530,S17P
10,P6P,D530,S18P
13,P17S,D563,S564
14,P18S,D563,S564
15,P5S,D546,S7P
16,P1BD,S16BS,D2BD
16B,P0,S16S,D557
17,P9S,D531,S13P
18,P10S,D562,S14P
20,P8P,D547,S548
21,P25P,S537,D23S
22,P24P,S561,D25S
23,P569,S21D,D538
24,P22P,S26P,D513
25,P21P,S22D,D570
26,P24S,S515,D514
28,P30P,S29P,D570
29,P28S,D516,S31P
30,P28P,D32S,S539
31TRI,27,P29S,D518,S0,S2-517
32,P571,D538,S30D
0
//
/ modélisation du réseau par branche
/ 1 ligne par branche - le sens de parcours de la branche est arbitraire.
/ Chaque ligne (branche) doit commmencer et finir par un aiguillage
/ Une ligne qui finit par un 0 signifie un heurtoir
/ 1 ligne par branche - le sens de parcours de la description n'a pas d'importance.
/ Chaque ligne (branche) doit comporter au moins un détecteur et au moins aiguillage
/ @ détecteur A=@aiguillage
/ Terminer par 0
/ Exemple : 519 est un détecteur - A2 est l'aiguillage 2
/ chaque ligne doit commencer par un aiguillage et se terminer par un aiguillage
/ Terminer par les brances par 0
/ Exemple : 519 est un détecteur - A2 est l'aiguillage 2 - A1B est l'aiguillage 1bis
/
A2,A12,517,A18,A11,A30,524,521,A8,527,A7,519,A2
A7,520,A20,A12
A1,A3,A4,514,522,A8
A1,523,526,A9,513,A29,A10,A19,531,518,A1
A9,515,A5
A11,525,A17,528,A10
A17,535,533,A24,538,A23
A7,520,A20,A21,A28,A26,530,A27,A25,A31,534,A23,A18
A26,529,A25
A22,537,A27
A22,A32,A24
A6,516,0
A31,0
/ rouge - jaune
A20,547,561,A22,A24,A26,515,518,A31,A29,A28,A30,539,522,A3,A1,A2,A4,A6B,545,A5B,A3
A26,514,517,A31
A26,515,518,A31
A24,513,516,A29
/grande boucle extérieure départ de couche rouge: de 569 à 569
A23,538,A32,571,553,A1B,A16,A2B,521,569,A23
/ grande boucle intérieure
A21,A25,570,A28
A4,554,537,A21
/ couche jaune
A10,530,A9,A5,A15,546,A6
A18,562,531,A17
A14,563,A13
A14,564,A13
/
A7,565,A8
A7,566,A8
A16B,557,0
A20S,548,0
0
/ liste des adresses des signaux et leur forme, pour affichage de l'image correspondante ,
/ avec ou sans bouton de commande pour le feu blanc, type de décodeur [, type de cible (pour les décodeurs Unisemaf uniquement)]
/
/ liste des signaux
/ la liste doit être terminée par une adresse à 0
/ forme : 2=2 feux(carré violet/blanc) / 3=3 feux / 4=4 feux / 5=5 feux (carré + blanc ou violet)
/ 7=7 feux (blanc ou violet + ralentissement / 9=9 feux (blanc ou violet + rappel ralentissement)
/ Dx : signal directionnel à x feux
/ type de décodeur : 1=digital Bahn 2=CDF 3=LDT 4=LEB 5=NMRA 6=Unisemaf
/ forme : 2=2 feux(carré violet/blanc) / 3=3 feux / 4=4 feux (carré) / 5=5 feux (carré + blanc)
/ 7=7 feux (carré+blanc + ralentissement / 9=9 feux (blanc ou violet + rappel ralentissement)
/ type de décodeur : 0=feu virtuel 1=digital Bahn 2=CDF 3=LDT 4=LEB
/ l'énumération destecteurs ne nécessite pas de parenthèses si il est seul, mais il faut des parenthèses si
/ le signal concerne plusieurs voies (donc détecteurs)
/ Notation de chaque ligne:
/ adresse de base du signal, forme, avec ou sans bouton de commande du feu blanc, type de décodeur [, détecteur (det2, det3, ...) , élément suivant ,
/ avec ou sans demande de verrouillage du feu au carré]
/
176,7,0,1,(520,A20),1
190,7,0,1,(523,526),1
204,9,0,1,(527,A7),1
218,7,0,1,(525,A17),1
232,2,1,1,(516,A6),1
260,9,1,1,(518,A1),1
274,3,0,1,(524,521),1
288,7,0,1,(522,A8),1
302,9,0,1,(526,A9),1
316,7,1,1,(515,A5),1
330,7,0,1,(519,A2),1
344,9,0,1,(528,A10),1
358,9,0,1,(517,A18),1
372,D3,1,(A10D)(A19S)(A19D,A22D)(A19D,A22S)
382,D3,1,(A29S,A10S)(A19S)(A19D,A22D)(A19D,A22S)
392,3,0,1,(535,533),1
420,7,0,1,(529,A25,530,A27,537,A27),1
448,7,0,1,(533,A24),1
462,9,0,1,(513,A29),1
476,9,0,1,(538,A23),1
497,9,0,4,(531,A19),1
600,7,0,0,(521,A8),1
/ adresse de base du signal, forme, réserve, type de décodeur [, (détecteur,..detecteur , élément suivant ..) ,
/ avec ou sans demande de verrouillage du feu au carré (0 ou 1)]
161,4,0,4,(538,A32),0
169,9,0,4,(539,A30),0,
177,9,0,4,(569,A23),0
185,4,0,4,(570,A25),0
193,4,0,4,(516,A29),0
201,2,0,4,(517,31TRI,518,31TRI),0
209,9,0,4,(513,A24),0
217,2,0,4,(514,A26,515,A26),0
225,9,0,4,(561,A22),0
233,4,0,4,(547,A20),0
241,4,0,4,(548,A20),1
1001,3,0,0,(537,554),0
1003,3,0,0,(553,A1B),0
1005,3,0,0,(571,553),0
1007,3,0,0,(554,A4),0
1009,3,0,0,(522,539),0
1011,3,0,0,(521,569),0
1013,3,0,0,(565,A7),0
1015,3,0,0,(562,A18),0
1017,3,0,0,(563,A14),0
1019,3,0,0,(564,A14),0
0
/
/ Section actionneurs. Ne fonctionne qu'en mode connecté à CDM en run
/ Fonctions Fx à envoyer aux locomotives sur passage d'un actionneur
/ actionneur,état,Nom du train,fonction,temporisation en ms avant remise à 0
/
/ Passages à niveau (PN)
/ (act_ferme_voie1,act_ouvre_voie1),(act_ferme_voie2,act_ouvre_voie2),...,PN(adresse_ferme,adresse_ouvre)
/
/ Klaxon (F2)
/ Uniquement en mode connecté à CDM
/ actionneur,état,Nom de la loco,fonction,temporisation en ms avant remise à 0
/815,1,CC406526,F2,400
/
/ passage à niveau à 2 voies
/(815,830),(820,840),PN(121+,121-)
/
/ passage à niveau à 1 voie
/(815,809),PN(121+,121-)
0

View File

@@ -107,9 +107,26 @@ A31,0
476,9,0,1,(538,A23),1
497,9,0,4,(531,A19),1
600,7,0,0,(521,A8),1
610,9,0,6,(520,A20),0,7
/ signaux de test
610,4,0,0,(521,a8),1
615,5,0,0,(521,a8),1
0
/
/ Section actionneurs. Ne fonctionne qu'en mode connecté à CDM en run
/ Fonctions Fx à envoyer aux locomotives sur passage d'un actionneur
/ actionneur,état,Nom du train,fonction,temporisation en ms avant remise à 0
/
/ Passages à niveau (PN)
/ (act_ferme_voie1,act_ouvre_voie1),(act_ferme_voie2,act_ouvre_voie2),...,PN(adresse_ferme,adresse_ouvre)
/
/ Klaxon (F2)
/ 815,1,CC406526,F2,400
/
/ passage à niveau à 2 voies
/(815,830),(820,840),PN(121+,121-)
/
/ passage à niveau à 1 voie
/(815,809),PN(121+,121-)
0

Binary file not shown.

View File

@@ -21,8 +21,9 @@ type
var
FormVersion: TFormVersion;
Lance_verif : integer;
verifVersion,notificationVersion : boolean;
Const Version='1.5'; //Version='1.2';// sert à la comparaison de la version publiée
Const Version='1.6'; //Version='1.2';// sert à la comparaison de la version publiée
implementation
@@ -65,8 +66,8 @@ var
dwTimeout : integer;
begin
Result:=False;
Try Fs:=TFileStream.Create(s,fmCreate);
DeleteFile(s);
Try Fs:=TFileStream.Create(s,fmCreate,fmShareDenyNone);
hSession:=InternetOpen('MyApp',INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
if Assigned(hSession) then
@@ -106,6 +107,7 @@ var s,s2,s3,Version_p,Url,LocalFile : string;
begin
//Affiche('vérifie version',clLime);
if not(AvecInit) then exit ;
if not(verifVersion) then exit;
Url:='http://cdmrail.free.fr/ForumCDR/viewtopic.php?f=77&t=3906#p50499';
LocalFile:='page.txt';
trouve_version:=false;
@@ -166,6 +168,7 @@ begin
Aff(s);
if MessageDlg(s+'. Voulez-vous la télécharger?',mtConfirmation,[mbYes,mbNo],0)=mrYes then
begin
// récupérer depuis la variable d'environnement windows USERPROFILE le repertoire de la session ouverte
s:=GetCurrentProcessEnvVar('USERPROFILE')+'\Downloads\Signaux_Complexes_GL.Zip';
Aff('Téléchargement de '+s3+' dans ');
Aff(s);
@@ -181,13 +184,13 @@ begin
else formVersion.Free;
end;
// if V_utile=V_publie then Affiche('Votre version '+Version_p+' est à jour',clLime);
if (V_utile=V_publie) and notificationVersion then Affiche('Votre version '+Version_p+' est à jour',clLime);
end;
end
else
begin
//Affiche('Pas d''accès au site CDM rail',clorange);
if notificationVersion then Affiche('Pas d''accès au site CDM rail',clorange);
end;
end;

View File

@@ -17,4 +17,7 @@ Version 1.42 : Correction erreur lecture signaux
Version 1.43 : Correction erreur gestion sémaphore
Version 1.44 : Gestion trains avec voitures éclairées
Version 1.45 : Rejette les n° d'objets supérieurs aiguillages à la même adresse
Version 1.5 : Nouvel algorithme de suivi des trains
Version 1.5 : Nouvel algorithme de suivi des trains - Gestion des feux provenant de voies en buttoir
Version 1.6 : Implémentation du TCO. Ouverture de CDM rail au démarrage avec LAY à la demande