Code : Tout sélectionner
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=..\..\..\tmp\Icones\gates.ico
#AutoIt3Wrapper_outfile=csv2gpsexec_tab.exe
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_Res_Comment=Merci au site AutoIt France et plus précisement à Tlem
#AutoIt3Wrapper_Res_Description=Outils de mise en forme de fichier issu du site www2.alertgps.com pour le plugin GPSXexec de RideRunner
#AutoIt3Wrapper_Res_Fileversion=1.1.0.0
#AutoIt3Wrapper_Res_Language=1036
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#cs ----------------------------------------------------------------------------
AutoIt Version: 3.2.12.1
Author: myName
Script Function:
Template AutoIt script.
#ce ----------------------------------------------------------------------------
; Script Start - Add your code below here
#include <UpDownConstants.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#include <File.au3>
#include <IE.au3>
;If Not FileExists(@ScriptDir & "\csv2gpsexec.ini") Then
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "with_gui ", "false or true default=false")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "files_in ", "add files.csv , ex:files1.csv,files2.csv,...filesn.csv")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "file_out ", "file_out name")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "concatenation ", "concatenation all files , false or true default=false")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "units ", "unit (MI,FT,YD,KM,M) default is M")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "minhdg ", "Minimun trigger heading at location in degres(default=nothing)")
; IniWrite("csv2gpsexec.ini", "csv2gpsexec.ini", "maxhdg ", "Minimun trigger heading at location in degres(default=nothing)")
;EndIf
#Region ### START Koda GUI section ###
Global $softName = "GCS Search 1.1"
; Load Interface language
Global $fileLanguagePath = @ScriptDir & "\*.lng"
ExistFile($fileLanguagePath)
Global $alang
_FileReadToArray($fileLanguagePath, $alang)
Dim $aLang[16] = [15, "A Propos", "Configuration" , "Langue", "Annuler", "Radars", "Radars fixes", "Radars mobiles", _
"Radars feu rouge", "Radars zones dangereuse", "Concaténer les fichiers :", _
"Options", "MINHDG :", "MAXHDG" ,"DISTANCE :", "UNITES :"]
;Début création menu principal
$Form1_1 = GUICreate("Csv2GPSExec Convertion V1.1", 568, 353, -1, -1)
;Creation de la Tab Principal
GUICtrlCreateTab(0, 0, 560, 340)
GUICtrlSetFont(-1, 8, 800, 0, "Arial")
$Menu1 = GUICtrlCreateMenu("?")
$MenuAPropos = GUICtrlCreateMenuItem($aLang[1], $Menu1)
$Settings = GUICtrlCreateMenu($aLang[2])
$Choix_Langage = GUICtrlCreateMenuItem($aLang[3], $Settings)
;Onglet AlertGps
GUICtrlCreateTabItem("AlertGps")
GUICtrlSetFont(-1, 8, 800, 0, "Arial")
$Annuler = GUICtrlCreateButton($aLang[4], 392, 296, 75, 25)
$OK = GUICtrlCreateButton("OK", 480, 296, 75, 25)
$Group1 = GUICtrlCreateGroup($aLang[5], 8, 20, 297, 305)
$Fic_RF = GUICtrlCreateInput("", 16, 63, 250, 21)
$Choix_RF = GUICtrlCreateButton("...", 270, 63, 20, 20)
$Lb_RF = GUICtrlCreateLabel($aLang[6]&" (RF):", 16, 39, 200, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_RM = GUICtrlCreateInput("", 16, 119, 250, 21)
$Choix_RM = GUICtrlCreateButton("...", 270, 119, 20, 20)
$Lb_RM = GUICtrlCreateLabel($aLang[7]&" (RM):", 16, 95, 200, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_RFR = GUICtrlCreateInput("", 16, 183, 250, 21)
$Choix_RFR = GUICtrlCreateButton("...", 270, 183, 20, 20)
$Lb_RFR = GUICtrlCreateLabel($aLang[8]&" (RFR):", 16, 159, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_ZD = GUICtrlCreateInput("", 16, 247, 250, 21)
$Choix_ZD = GUICtrlCreateButton("...", 270, 247, 20, 20)
$Lb_ZD = GUICtrlCreateLabel($aLang[9]&" (ZD):", 16, 223, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Fusion = GUICtrlCreateCheckbox($aLang[10], 16, 287, 185, 17)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup($aLang[11], 312, 20, 241, 169)
$Lb_Minhdg = GUICtrlCreateLabel("MINHDG :", 327, 75, 72, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Maxhdg = GUICtrlCreateLabel("MAXHDG :", 327, 110, 76, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Distance = GUICtrlCreateLabel($aLang[12], 327, 145, 88, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Inp_Minhdg = GUICtrlCreateInput("", 442, 70, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Maxhdg = GUICtrlCreateInput("", 442, 105, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Distance = GUICtrlCreateInput("", 442, 140, 97, 21)
$Lb_Unites = GUICtrlCreateLabel($aLang[13], 327, 40, 68, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Unites = GUICtrlCreateCombo("", 442, 35, 97, 25)
GUICtrlSetData(-1, "Miles|Feet|Yards|Kilometers|Meters", "Kilometers")
GUICtrlCreateGroup("", -99, -99, 1, 1)
;Fin Onglet AlertGps
;Onglet GpsPassion
GUICtrlCreateTabItem("GpsPassion")
GUICtrlSetFont(-1, 8, 800, 0, "Arial")
$Annuler2 = GUICtrlCreateButton($aLang[4], 392, 296, 75, 25)
$OK2 = GUICtrlCreateButton("OK", 480, 296, 75, 25)
$Group3 = GUICtrlCreateGroup($aLang[5], 8, 20, 297, 305)
$Fic_RF2 = GUICtrlCreateInput("", 16, 63, 250, 21)
$Choix_RF2 = GUICtrlCreateButton("...", 270, 63, 20, 20)
$Lb_RF2 = GUICtrlCreateLabel($aLang[6]&" (RadarsF):", 16, 39, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_RM2 = GUICtrlCreateInput("", 16, 119, 250, 21)
$Choix_RM2 = GUICtrlCreateButton("...", 270, 119, 20, 20)
$Lb_RM2 = GUICtrlCreateLabel($aLang[7]&" (RadarsM): ", 16, 95, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_RFR2 = GUICtrlCreateInput("", 16, 183, 250, 21)
$Choix_RFR2 = GUICtrlCreateButton("...", 270, 183, 20, 20)
$Lb_RFR2 = GUICtrlCreateLabel($aLang[8]&" (RadarsFR):", 16, 159, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlCreateLabel(" ...CET ONGLET EST...", 16, 220, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlCreateLabel(" ...EN COURS DE DEVELOPPEMENT...", 16, 240, 270, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Fusion2 = GUICtrlCreateCheckbox($aLang[10], 16, 287, 185, 17)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group4 = GUICtrlCreateGroup($aLang[11], 312, 20, 241, 169)
$Lb_Minhdg2 = GUICtrlCreateLabel($aLang[12], 327, 75, 72, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Maxhdg2 = GUICtrlCreateLabel($aLang[13], 327, 110, 76, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Distance2 = GUICtrlCreateLabel($aLang[14], 327, 145, 88, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Inp_Minhdg2 = GUICtrlCreateInput("", 442, 70, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Maxhdg2 = GUICtrlCreateInput("", 442, 105, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Distance2 = GUICtrlCreateInput("", 442, 140, 97, 21)
$Lb_Unites2 = GUICtrlCreateLabel($aLang[15], 327, 40, 68, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Unites2 = GUICtrlCreateCombo("", 442, 35, 97, 25)
GUICtrlSetData(-1, "Miles|Feet|Yards|Kilometers|Meters", "Kilometers")
GUICtrlCreateGroup("", -99, -99, 1, 1)
;Fin Onglet GpsPassion
;Onglet Trapster
GUICtrlCreateTabItem("Trapster")
GUICtrlSetFont(-1, 8, 800, 0, "Arial")
$Annuler3 = GUICtrlCreateButton($aLang[4], 392, 296, 75, 25)
$OK3 = GUICtrlCreateButton("OK", 480, 296, 75, 25)
$Group5 = GUICtrlCreateGroup($aLang[5], 8, 20, 297, 305)
$Fic_RF3 = GUICtrlCreateInput("", 16, 63, 250, 21)
$Choix_RF3 = GUICtrlCreateButton("...", 270, 63, 20, 20)
$Lb_RF3 = GUICtrlCreateLabel($aLang[6]&" (speed-trap):", 16, 39, 400, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
;$Fic_RM3 = GUICtrlCreateInput("", 16, 119, 250, 21)
;$Choix_RM3 = GUICtrlCreateButton("...", 270, 119, 20, 20)
;$Lb_RM3 = GUICtrlCreateLabel("Radars mobiles (RM): ", 16, 95, 200, 20)
;GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Fic_RFR3 = GUICtrlCreateInput("", 16, 183, 250, 21)
$Choix_RFR3 = GUICtrlCreateButton("...", 270, 183, 20, 20)
$Lb_RFR3 = GUICtrlCreateLabel($aLang[7]&" (redlight-camera):", 16, 159, 400, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Fusion3 = GUICtrlCreateCheckbox($aLang[10], 16, 287, 185, 17)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group6 = GUICtrlCreateGroup($aLang[11], 312, 20, 241, 169)
$Lb_Minhdg3 = GUICtrlCreateLabel($aLang[12], 327, 75, 72, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Maxhdg3 = GUICtrlCreateLabel($aLang[13], 327, 110, 76, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Lb_Distance3 = GUICtrlCreateLabel($aLang[14], 327, 145, 88, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Inp_Minhdg3 = GUICtrlCreateInput("", 442, 70, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Maxhdg3 = GUICtrlCreateInput("", 442, 105, 97, 21)
GUICtrlCreateUpdown(-1, $UDS_WRAP)
GUICtrlSetLimit(-1, 360, 0)
$Inp_Distance3 = GUICtrlCreateInput("", 442, 140, 97, 21)
$Lb_Unites3 = GUICtrlCreateLabel($aLang[15], 327, 40, 68, 20)
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
$Cb_Unites3 = GUICtrlCreateCombo("", 442, 35, 97, 25)
GUICtrlSetData(-1, "Miles|Feet|Yards|Kilometers|Meters", "Kilometers")
GUICtrlCreateGroup("", -99, -99, 1, 1)
;Fin Onglet Traster
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE, $Annuler
Exit
Case $Choix_RF
$aFic_RF = FileOpenDialog("Radars Fixes", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RF <> "" Then GUICtrlSetData($Fic_RF, $aFic_RF)
Case $Choix_RM
$aFic_RM = FileOpenDialog("Radars Mobiles", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RM <> "" Then GUICtrlSetData($Fic_RM, $aFic_RM)
Case $Choix_RFR
$aFic_RFR = FileOpenDialog("Radars Feu Rouge", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RFR <> "" Then GUICtrlSetData($Fic_RFR, $aFic_RFR)
Case $Choix_ZD
$aFic_ZD = FileOpenDialog("Radars Zones Dangereuses", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_ZD <> "" Then GUICtrlSetData($Fic_ZD, $aFic_ZD)
Case $MenuAPropos
_Apropos()
Case $OK
$vFic_RF = GUICtrlRead($Fic_RF)
$vFic_RM = GUICtrlRead($Fic_RM)
$vFic_RFR = GUICtrlRead($Fic_RFR)
$vFic_ZD = GUICtrlRead($Fic_ZD)
If $vFic_RF & $vFic_RM & $vFic_RFR & $vFic_ZD <> "" Then
SplashTextOn("", "Conversion en cours ...", 250, 60, -1, -1, 32, "", 12, 800)
$Distance = GUICtrlRead($Inp_Distance)
$Maxhdg = GUICtrlRead($Inp_Maxhdg)
$Minhdg = GUICtrlRead($Inp_Minhdg)
$Unites = GUICtrlRead($Cb_Unites)
Select
Case $Unites = "Miles"
$Unites = "MI"
Case $Unites = "Feet"
$Unites = "FT"
Case $Unites = "Yards"
$Unites = "YD"
Case $Unites = "Kilometers"
$Unites = "KM"
Case $Unites = "Meters"
$Unites = "M"
EndSelect
Dim $aRF, $aRM, $aRFR, $aZD
_FileReadToArray($vFic_RF, $aRF)
_FileReadToArray($vFic_RM, $aRM)
_FileReadToArray($vFic_RFR, $aRFR)
_FileReadToArray($vFic_ZD, $aZD)
Dim $sRF, $sRM, $sRFR, $sZD
If IsArray($aRF) Then
$aRF = _DoIt($aRF, "RADAR_FIXE", $Unites, $Maxhdg, $Minhdg, $Distance)
$sRF = _ArrayToString($aRF, @CRLF)
EndIf
If IsArray($aRM) Then
$aRM = _DoIt($aRM, "RADAR_MOBILE", $Unites, $Maxhdg, $Minhdg, $Distance)
$sRM = _ArrayToString($aRM, @CRLF)
EndIf
If IsArray($aRFR) Then
$aRFR = _DoIt($aRFR, "RADAR_FEU_ROUGE", $Unites, $Maxhdg, $Minhdg, $Distance)
$sRFR = _ArrayToString($aRFR, @CRLF)
EndIf
If IsArray($aZD) Then
$aZD = _DoIt($aZD, "ZONE_DANGEREUSE", $Unites, $Maxhdg, $Minhdg, $Distance)
$sZD = _ArrayToString($aZD, @CRLF)
EndIf
If _IsChecked($Cb_Fusion) Then
FileWrite("Radars_Fusion.csv", $sRF & @CRLF & $sRM & @CRLF& $sRFR & @CRLF & $sZD)
Else
If $sRF <> "" Then _SaveNewFile($vFic_RF, $sRF)
If $sRM <> "" Then _SaveNewFile($vFic_RM, $sRM)
If $sRFR <> "" Then _SaveNewFile($vFic_RFR, $sRFR)
If $sZD <> "" Then _SaveNewFile($vFic_ZD, $sZD)
EndIf
SplashOff()
MsgBox(64, "Csv2GPSExec Convertion", "Conversion terminée")
EndIf
;Fin Boucle Onglet AlertGps
;Boucle pour Onglet GpsPassion
Case $GUI_EVENT_CLOSE, $Annuler2
Exit
Case $Choix_RF2
$aFic_RF2 = FileOpenDialog("Radars Fixes", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RF2 <> "" Then GUICtrlSetData($Fic_RF2, $aFic_RF2)
Case $Choix_RM2
$aFic_RM2 = FileOpenDialog("Radars Mobiles", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RM2 <> "" Then GUICtrlSetData($Fic_RM2, $aFic_RM2)
Case $Choix_RFR2
$aFic_RFR2 = FileOpenDialog("Radars Feu Rouge", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RFR2 <> "" Then GUICtrlSetData($Fic_RFR2, $aFic_RFR2)
Case $MenuAPropos
_Apropos()
Case $OK2
$vFic_RF2 = GUICtrlRead($Fic_RF2)
$vFic_RM2 = GUICtrlRead($Fic_RM2)
$vFic_RFR2 = GUICtrlRead($Fic_RFR2)
If $vFic_RF2 & $vFic_RM2 & $vFic_RFR2 <> "" Then
SplashTextOn("", "Conversion en cours ...", 250, 60, -1, -1, 32, "", 12, 800)
$Distance2 = GUICtrlRead($Inp_Distance2)
$Maxhdg2 = GUICtrlRead($Inp_Maxhdg2)
$Minhdg2 = GUICtrlRead($Inp_Minhdg2)
$Unites2 = GUICtrlRead($Cb_Unites2)
Select
Case $Unites2 = "Miles"
$Unites2 = "MI"
Case $Unites2 = "Feet"
$Unites2 = "FT"
Case $Unites2 = "Yards"
$Unites2 = "YD"
Case $Unites2 = "Kilometers"
$Unites2 = "KM"
Case $Unites2 = "Meters"
$Unites2 = "M"
EndSelect
Dim $aRF2, $aRM2, $aRFR2
_FileReadToArray($vFic_RF2, $aRF2)
_FileReadToArray($vFic_RM2, $aRM2)
_FileReadToArray($vFic_RFR2, $aRFR2)
Dim $sRF2, $sRM2, $sRFR2 , $TypeRadar2
If IsArray($aRF2) Then
$aRF2 = _DoIt2($aRF2, $TypeRadar2, $Unites2, $Maxhdg2, $Minhdg2, $Distance2)
$sRF2 = _ArrayToString($aRF2, @CRLF)
EndIf
If IsArray($aRM2) Then
$aRM2 = _DoIt2($aRM2, $TypeRadar2, $Unites2, $Maxhdg2, $Minhdg2, $Distance2)
$sRM2 = _ArrayToString($aRM2, @CRLF)
EndIf
If IsArray($aRFR2) Then
$aRFR2 = _DoIt2($aRFR2, $TypeRadar2, $Unites2, $Maxhdg2, $Minhdg2, $Distance2)
$sRFR2 = _ArrayToString($aRFR2, @CRLF)
EndIf
If _IsChecked($Cb_Fusion2) Then
FileWrite("Radars_Fusion.csv", $sRF2 & @CRLF & $sRM2 & @CRLF& $sRFR2)
Else
If $sRF2 <> "" Then _SaveNewFile($vFic_RF2, $sRF2)
If $sRM2 <> "" Then _SaveNewFile($vFic_RM2, $sRM2)
If $sRFR2 <> "" Then _SaveNewFile($vFic_RFR2, $sRFR2)
EndIf
SplashOff()
MsgBox(64, "Csv2GPSExec Convertion", "Conversion terminée")
EndIf
;Fin Boucle pour Onglet GpsPassion
;Boucle pour Onglet Trapster
Case $GUI_EVENT_CLOSE, $Annuler3
Exit
Case $Choix_RF3
$aFic_RF3 = FileOpenDialog("Radars Fixes", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RF3 <> "" Then GUICtrlSetData($Fic_RF3, $aFic_RF3)
Case $Choix_RFR3
$aFic_RFR3 = FileOpenDialog("Radars Feu Rouge", @ScriptDir, "Fichier asc (*.csv)", 1)
If $aFic_RFR3 <> "" Then GUICtrlSetData($Fic_RFR3, $aFic_RFR3)
Case $MenuAPropos
_Apropos()
Case $OK3
$vFic_RF3 = GUICtrlRead($Fic_RF3)
$vFic_RFR3 = GUICtrlRead($Fic_RFR3)
If $vFic_RF3 & $vFic_RFR3 <> "" Then
SplashTextOn("", "Conversion en cours ...", 250, 60, -1, -1, 32, "", 12, 800)
$Distance3 = GUICtrlRead($Inp_Distance3)
$Maxhdg3 = GUICtrlRead($Inp_Maxhdg3)
$Minhdg3 = GUICtrlRead($Inp_Minhdg3)
$Unites3 = GUICtrlRead($Cb_Unites3)
Select
Case $Unites3 = "Miles"
$Unites3 = "MI"
Case $Unites3 = "Feet"
$Unites3 = "FT"
Case $Unites3 = "Yards"
$Unites3 = "YD"
Case $Unites3 = "Kilometers"
$Unites3 = "KM"
Case $Unites3 = "Meters"
$Unites3 = "M"
EndSelect
Dim $aRF3, $aRFR3
_FileReadToArray($vFic_RF3, $aRF3)
_FileReadToArray($vFic_RFR3, $aRFR3)
Dim $sRF3, $sRFR3, $TypeRadar3
If IsArray($aRF3) Then
$aRF3 = _DoIt3($aRF3, $TypeRadar3, $Unites3, $Maxhdg3, $Minhdg3, $Distance3)
$sRF3 = _ArrayToString($aRF3, @CRLF)
EndIf
If IsArray($aRFR3) Then
$aRFR3 = _DoIt3($aRFR3, $TypeRadar3, $Unites3, $Maxhdg3, $Minhdg3, $Distance3)
$sRFR3 = _ArrayToString($aRFR3, @CRLF)
EndIf
If _IsChecked($Cb_Fusion3) Then
FileWrite("Radars_Fusion.csv", $sRF3 & @CRLF & $sRFR3)
Else
If $sRF3 <> "" Then _SaveNewFile($vFic_RF3, $sRF3)
If $sRFR3 <> "" Then _SaveNewFile($vFic_RFR3, $sRFR3)
EndIf
;Fin Boucle pour Onglet Trapster
SplashOff()
MsgBox(64, "Csv2GPSExec Convertion", "Conversion terminée")
EndIf
EndSwitch
WEnd
Exit
; #######################################################
; #################### Fonctions ####################
; #######################################################
Func _IsChecked($control)
Return BitAND(GUICtrlRead($control), $GUI_CHECKED) = $GUI_CHECKED
EndFunc ;==>_IsChecked
Func _DoIt($aRadars, $TypeRadar, $Unt, $Mxhdg = 0, $Mnhdg = 0, $Dst = 0)
Local $i, $Var, $Var2, $Longitude, $Latitude, $Vitesse
For $i = 1 To $aRadars[0]
$Var = StringSplit($aRadars[$i], ",")
$Longitude = $Var[1]
$Latitude = $Var[2]
$Var2 = StringSplit($Var[3], '@"')
$Vitesse = $Var2[3]
If $Vitesse = "" Then $Vitesse = 0
$aRadars[$i] = $Latitude & ',' & $Longitude & ',' & $Mxhdg & ',' & $Mnhdg & ',' & _
$Dst & ',' & $Unt & ',"' & $TypeRadar & "_" & $Vitesse & '"'
Next
_ArrayDelete($aRadars, 0) ; On supprime le nombre d'élément du tableau
Return $aRadars
EndFunc ;==>_DoIt
Func _DoIt2($aRadars2, $TypeRadar2, $Unt2, $Mxhdg2 = 0, $Mnhdg2 = 0, $Dst2 = 0)
Local $j, $Var, $Var2, $Longitude2, $Latitude2, $Vitesse2
For $j = 1 To $aRadars2[0]
$Var = StringSplit($aRadars2[$j], ",");sépare en 3 éléments
$Longitude2 = StringReplace($Var[1], " ", "");efface espace dans le résultat
$Latitude2 = StringReplace($Var[2], " ", "");efface espace dans le résultat
$Var2 = StringSplit($Var[3], '-"');sépare le 3ème élément en 3 éléments
$TypeRadar2 = $Var2[3];devrais récupérer le 3ème élément du 1er 3ème element
$Vitesse2 = $Var2[2];devrais récupérer le 2ème éléments du 1er 3ème élément
If $TypeRadar2 = "" Then $TypeRadar2 = 0
If $Vitesse2 = "" Then $Vitesse2 = 0
; MsgBox (4096, "La vitesse est de :" ,$TypeRadar2)
$aRadars2[$j] = $Latitude2 & ',' & $Longitude2 & ',' & $Mxhdg2 & ',' & $Mnhdg2 & ',' & _
$Dst2 & ',' & $Unt2 & ',"' & $TypeRadar2 & "_" & $Vitesse2 & '"'
Next
_ArrayDelete($aRadars2, 0) ; On supprime le nombre d'élément du tableau
Return $aRadars2
EndFunc ;==>_DoIt2
Func _DoIt3($aRadars3, $TypeRadar3, $Unt3, $Mxhdg3 = 0, $Mnhdg3 = 0, $Dst3 = 0)
Local $k, $Var, $Var2, $Longitude3, $Latitude3, $Vitesse3
For $k = 1 To $aRadars3[0]
$Var = StringSplit($aRadars3[$k], ",")
$Longitude3 = $Var[1]
$Latitude3 = $Var[2]
If $Var[4] = '"Confidence: low' Then $TypeRadar3 = "SPEEDTRAP_LOW"
If $Var[4] = '"Confidence: medium' Then $TypeRadar3 = "SPEEDTRAP_MEDIUM"
If $Var[4] = '"Confidence: high' Then $TypeRadar3 = "SPEEDTRAP_HIGH"
$aRadars3[$k] = $Latitude3 & ',' & $Longitude3 & ',' & $Mxhdg3 & ',' & $Mnhdg3 & ',' & _
$Dst3 & ',' & $Unt3 & ',"' & $TypeRadar3 & '"'
Next
_ArrayDelete($aRadars3, 0) ; On supprime le nombre d'élément du tableau
Return $aRadars3
EndFunc ;==>_DoIt3
Func _SaveNewFile($Fichier, $sRadar)
Local $szDrive, $szDir, $szFName, $szExt, $Path
$Path = _PathSplit($Fichier, $szDrive, $szDir, $szFName, $szExt)
$Fichier = $szDrive & $szDir & $szFName & "_New" & $szExt
$hFichier = FileOpen($Fichier, 2)
If $hFichier = -1 Then
MsgBox(0, "Erreur", "Impossible de traiter le fichier :" & @CRLF & $Fichier)
Return
EndIf
FileWrite($hFichier, $sRadar)
FileClose($hFichier)
EndFunc ;==>_SaveNewFile
Func _Apropos()
$sHTML = 'Ce programme est conçu pour modifier<br>' & _
'quatre fichiers ascii issus du site <a href=http://www.alertegps.com/index1.asp>http://www.alertegps.com/index1.asp</a><br><br>' & _
'Les fichiers au format Garmin sont à télécharger ' & _
'<a href=http://www2.alertegps.com/download_basic.asp?id_matos=8&menu=1&sous_menu=1>ici</a><br><br>' & _
'On obtient quatre fichiers :<br>' & _
'Ils contiennent les positions radar des pays suivant :<br>' & _
'France , Engleterre , Belgique , Pays-Bas , Espagne , Portugal , Suède .<br>' & _
'RF.csv , radars fixe<br>' & _
'RFR.csv, radars feu rouge<br>' & _
'RM.csv, radars mobile<br>' & _
'ZD.csv, zones dangereuses<br><br>' & _
'Exemple du format de ces 4 fichiers (ZD.csv n''ayant pas de vitesse définie ex: @110)<br>' & _
'55.50166,-21.30224,"Num 3461@110" (Radar fixe)"<br>' & _
'55.42566,-21.30207,"Num 3457@110" (Radar feu rouge)"<br>' & _
'55.30042,-21.23435,"Num 3455@90" (Radar Mobile)<br>' & _
'55.30413,-20.96288,"Num 3456" (Zone Danger)<br><br>' & _
'Ce format est compatible Garmin, soit :<br>' & _
'Longitude,Latitude,"Numéro_du_POI@vitesse"<br><br>' & _
'Nous obtenons en sortie :<br>' & _
'Latitude,Longitude,MinHdg,MaxHdg,,,Distance,Unités,"TYPE_RADAR_VITESSE"<br>' & _
'soit au final :<br>' & _
'-21.30224,55.50166,,,500,M,"RADAR_FIXE_110"<br>' & _
'-21.30207,55.42566,,,500,M,"RADAR_FEU_ROUGE_110"<br>' & _
'-21.23435,55.30042,,,500,M,"RADAR_MOBILE_90"<br>' & _
'-20.96288,55.30413,,,500,M,"ZONE_DANGER_0"<br><br>' & _
'Autre liens de téléchargement :<br>' & _
'<a href=http://www.gpspassion.com/forumsen/default.asp>GpsPassion.com</a><br>' & _
'<a href=http://www.trapster.com/index.php>Trapster.com</a><br><br>' & _
'Remerciement :<br>' & _
'Ce logiel a été réalisé dans son intégralité par :<br>' & _
'Tlem du forum <a href=http://www.autoitscript.fr/forum/>AutoIt France</a>'
_IEErrorHandlerRegister()
$oIE = _IECreateEmbedded()
$GuiApropos = GUICreate("À Propos", 640, 550, -1, -1, $WS_OVERLAPPEDWINDOW + $WS_VISIBLE + $WS_CLIPSIBLINGS + $WS_CLIPCHILDREN)
$GUIActiveX = GUICtrlCreateObj($oIE, 5, 5, 630, 500)
$OK4 = GUICtrlCreateButton("OK", 300, 515, 75, 25)
_IENavigate($oIE, "")
_IEBodyWriteHTML($oIE, $sHTML)
GUISetState()
While 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE Or $msg = $OK4
ExitLoop
EndSelect
WEnd
GUIDelete($GuiApropos)
EndFunc ;==>_Apropos
Func ExistFile($z)
If FileExists($z) = 0 Then ;LanguageDefaut()
_FileWriteFromArray($fileLanguagePath, "default.lng")
MsgBox(16, $softName, "Aucun fichier langue disponible" & @CR & @CR & $z & " " & @CR & @CR & "Une langue par défault est crée.")
Exit
EndIf
EndFunc ;==>ExistFile
Func LanguageDefaut()
If @error Then
Dim $aLang[16] = [15, "A Propos", "Configuration" , "Langue", "Annuler", "Radars", "Radars fixes", "Radars mobiles", _
"Radars feu rouge", "Radars zones dangereuse", "Concaténer les fichiers :", _
"Options", "MINHDG :", "MAXHDG" ,"DISTANCE :", "UNITES :"]
EndIf
EndFunc ;==>LanguageDefaut