gps_floris Geplaatst 2 augustus 2009 Geplaatst 2 augustus 2009 Sinds enkele dagen ben ik in het bezit van een Pioneer avic navigatiesysteem. Nu wil ik in dit navigatiesysteem ook caches zetten net zoals in mijn eerder gebruikte PDA met tomtom. Pioneer levert een software program waar je zelf poi`s kunt invoeren. Deze genereert dat een KML bestand dat via een SD kaartje de caches zichtbaar maakt op het scherm. Nu is het mij al gelukt om met een macro de caches om te zetten in een CSV bestand wat inleeesbaar is in de Pioneer software. Maar hier moet ik handmatig een aanpassingen in doen. Zoals een , vervangen voor ; om de overzet te vereenvoudigen zou ik graag zien dat het CSV bestand dat gemaakt word meteen voorzien is van ; ipv , De macro die ik gebruik ziet er als volgt uit: (gevonden op GSAK forum) Goto Position=Top while not($_eol) $_txt1 = $d_longitude $_txt2 = $d_latitude $_txt3 = Quote($d_name) $_txt4 = Quote($d_container) $result = TextOut("C:\caches.csv","none","comma") # Just in case file permission error or something test for error IF Left($result,7) = "*Error*" Pause Msg=$result Cancel EndIf Goto position=next Endwhile Als uitkomst krijg ik dan: 5.805217,50919533,"MAA","Micro" Terwijl ik graag: 5.805217;5091953';"MAA";"Micro" Als uitkomst zou zien. Is er iemand die hier kaas van gegeten heeft om dit aan te passen??? Nog Mooier zou meteen een KML bestand als uitkomst zijn maar stapje voor stapje naar een klik bewerking Zoals bij de export naar de tomtom Zie namelijk bij de export mogenlijkheden van GSAK geen KML optie
fub Geplaatst 2 augustus 2009 Geplaatst 2 augustus 2009 GPSBabel kan zo ongeveer elk formaat omzetten in elk ander formaat. Beslist de moeite waard om eens naar te kijken dus.
Sparks Sailor Geplaatst 2 augustus 2009 Geplaatst 2 augustus 2009 Ik zou proberen in de TextOut de comma te vervangen door semicolon. Misschien werkt dat
gps_floris Geplaatst 2 augustus 2009 Auteur Geplaatst 2 augustus 2009 Ik zou proberen in de TextOut de comma te vervangen door semicolon. Misschien werkt dat Heerlijk die forum`s Semicolon werkt (je moet het maar weten in GSAK help stonden maar twee optie`s) Op naar de volgende stap in de macro @fub met GPSbable heb ik ook geprobeerd om een KML bestand te maken maar nog zonder goed resultaat.
gps_floris Geplaatst 8 augustus 2009 Auteur Geplaatst 8 augustus 2009 Na wat verder stoeien heb ik weer een probleempje dat ik nog niet opgelost krijg Ik heb er een veld bijgemaakt voor de hint: $_txt1 = $d_longitude $_txt2 = $d_latitude $_txt3 = Quote($d_name) $_txt4 = Quote($d_container) $_txt5 = $d_Hints Maar als er nu een hint is die in de pagina een <br> gebruikt heeft dat gaar de tekst na de <br> naar de volgende regel: 5.805217;50.919533;"MAA";"Micro";houten trede / wooden step Let op, de cache past maar op 1 manier terug op z'n plaats! Attention, the cache fits in just one way in it's hiding place! 5.919833;50.911833;"WIP CACHE: OVERBROEK";"Small";onder tegel 5.71945;50.907583;"De Geul en de Maas";"Micro"; 5.929167;50.92275;"FONTEIN HOENSBROEK";"Micro";buis / met gc Wat bij het importeren van het CSV bestand problemen geeft. Is er een optie om dit te voorkomen ??
team_wolfje Geplaatst 1 september 2009 Geplaatst 1 september 2009 (bewerkt) Je moet voordat je het veld exporteert, de " (dubbele quote) vervangen door twee enkele quote-jes . = '' (lijkt hetzelfde, maar is een verschil. In CSV formaat moet je alle tekst velden met quotes omgeven als er een komma in staat. Dus "Dit is een, test". In CSV formaat mag een veld dat je met quotes omgeeft niet daarbinnen nog een quote bevatten. Dus NIET "Dit is een" test". In CSV formaat is het CrLF (einde van de regel) het afbreken van een compleet record (=serie velden). Dus in een veld zelf mag géén CrLf voorkomen. Oplossing: Replace functie gebruiken: $Tekst = Quote(Replace($_Quote,"''",$Tekst,True)) Quote($Tekst) De waarde van $Tekst wordt gezocht op een " (dubbele quote) en dit wordt vervangen door '' (twee enkele quotes). Tevens wordt de tekst door dubbele quotes omgeven. Erin: $Tekst=dit is een," test Eruit: $Tekst="dit is een,'' test" Dit kun je ook gebruiken voor het Einde Regel verhaal in de hints. $Tekst = AllTrim(Replace($_NewLine,". ",$Tekst,True)) Erin: $Tekst=Dit is regel 1 Dit is regel 2 Dit is regel 3 Eruit: $Tekst=Dit is regel1. Dit is regel 2. Dit is regel3. (De AllTrim zit erin om de laatste spatie te verwijderen. Nu houdt je een perfecte CSV "string" over . Dus in het bovenstaande voorbeeld (met beide bovenstaande oplossingen gecombineerd): $_txt1 = $d_longitude $_txt2 = $d_latitude $_txt3 = Quote(AllTrim(Replace($_NewLine,". ",Replace($_Quote,"''",$d_Name,True),True))) $_txt4 = Quote($d_container) If not(IsEmpty($d_Hints)) $_txt5 = Quote(AllTrim(Replace($_NewLine,". ",Replace($_Quote,"''",$d_Hints,True),True))) else $_txt5 ="No Hints" EndIf [Edit]Haakjes foutje in de laatste code [Edit]$d_Hint moet zijn $d_Hints 1 september 2009 bewerkt door team_wolfje
gps_floris Geplaatst 1 september 2009 Auteur Geplaatst 1 september 2009 Supper !!! jammer dat ik op het punt sta om de comp uit te schakelen moet helaas weg. Maar straks ga ik dit zeker nog proberen
gps_floris Geplaatst 1 september 2009 Auteur Geplaatst 1 september 2009 @ Team wolfje Wat een duidelijke uitleg (ik kan het ook nog volgen ) En het werkt ook nog Weer een stapje dichter bij naar een een knop druk in GSAC naar een KML bestand Zou een macro een KML file kunnen maken met een bepaalde indeling???
team_wolfje Geplaatst 1 september 2009 Geplaatst 1 september 2009 (bewerkt) Ja hoor, dat kan, maar moet ik een keertje in duiken. Wat ik nu heb gedaan is een PHP script met een java script gemaakt die van een INC (include) bestand vanuit GSAK aangemaakt met alle gevonden caches gebruik maakt. Dat laatste bestand upload ik naar mijn site en de Google map staat er op. In actie: Team_Wolfje Geocaching Map 1 september 2009 bewerkt door team_wolfje
gps_floris Geplaatst 2 september 2009 Auteur Geplaatst 2 september 2009 Dat ziet er netjes uit. Een standaard KML file die voor Google map gebruikt wordt werkt maar beperkt. Dan verschijnen wel de icoontjes op het scherm maar de info komt dan niet naar boven. Ik heb een verzoek naar Clyde gestuurd om mogenlijk ook in de toekomst een exportoptie te krijgen voor de Pioneer`s met de juiste KML file. Er staan er al meerdere in waarom dan ook niet voor de Pioneer`s De sotware van Pioneer die de KML file genereert geeft als uitkomst: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <kml xmlns="http://earth.google.com/kml/2.1"> <Document> <AvicFeedsFileVersion>1.0</AvicFeedsFileVersion> <metadata> <igoicon> <filename>icon20090815-213417.BMP</filename> </igoicon> </metadata> <Folder> <name>POI</name> <Placemark> <name>MAA</name> <description/> <Point> <coordinates>5.805217,50.919533</coordinates> </Point> <metadata> <telephone>Micro</telephone> <igoicon> <filename>icon20090815-213417.BMP</filename> </igoicon> <additional_information>houten trede / wooden step. Let op, de cache past maar op 1 mani</additional_information> </metadata> </Placemark> </Folder> </Document> </kml> Team Wolfje het zou super zijn als je mij hier in de komende wintermaanden mee zou willen helpen (en mogenlijk nog meerdere pioneer gebruikers). Het heeft absoluut geen haast want ik krijg de cache`s er in maar via een omweg. Ik heb in het verleden gestoeid met acces en Typo3/php maar allemaal uit hobby. Mijn kennis gaat helaas niet zo ver om dit geheel zelfstandig uit te zoeken
team_wolfje Geplaatst 2 september 2009 Geplaatst 2 september 2009 Natuurlijk ben ik bereid om samen naar een dergelijke macro te kijken Altijd leuk weer een nieuwe programmeer uitdaging.
gps_floris Geplaatst 2 september 2009 Auteur Geplaatst 2 september 2009 Mijn dank dan alvast en ik heb er ook wel voor over
team_wolfje Geplaatst 2 september 2009 Geplaatst 2 september 2009 (bewerkt) Na even een paar minuutjes stoeien kom ik op het volgende resultaat uit de macro (voor twee geselecteerde caches): <?xml version="1.0" encoding="UTF-8" standalone="no"?> <kml xmlns="http://earth.google.com/kml/2.1"> <Document> <AvicFeedsFileVersion>1.0</AvicFeedsFileVersion> <metadata> <igoicon> <filename>icon20090815-213417.BMP</filename> </igoicon> </metadata> <Folder> <name>POI</name> <Placemark> <name>[Erwtje 201: Snertzoeker</name> <description/> <Point> <coordinates>5.733067,52.713567</coordinates> </Point> <metadata> <telephone>Micro</telephone> <igoicon> <filename>icon20090815-213417.BMP</filename> </igoicon> <additional_information>niet in de tuinen. let op het logo</additional_information> </metadata> </Placemark> <Placemark> <name>Oorlogshelden in de Polder 3: Karel Doorman</name> <description/> <Point> <coordinates>5.716667,52.683333</coordinates> </Point> <metadata> <telephone>Micro</telephone> <igoicon> <filename>icon20090815-213417.BMP</filename> </igoicon> <additional_information>hout zonder takken</additional_information> </metadata> </Placemark> </Folder> </Document> </kml> Hoe komen de BMP (cache icoontjes?) tot stand? Het mooiste zou zijn dat je die zelf kunt aanmaken bv voor de Traditionals een gecocacheT.BMP etc (de T is het cachetype) gelijk aan de TomTom icoontjes. De folders, daar staat nu POI in, maar mag dat bv ook "Found", "NotFound" en "Owned" zijn? Heb je zelf een voorbeeld uit de Pioneer die meerdere caches bevat? 2 september 2009 bewerkt door team_wolfje
gps_floris Geplaatst 2 september 2009 Auteur Geplaatst 2 september 2009 Als ik dit zo zie dekt dit behoorlijk de lading zo niet geheel....
team_wolfje Geplaatst 8 september 2009 Geplaatst 8 september 2009 De macro is klaar en staat op het GSAK forum. KML Export macro voor Pioneer
Aanbevolen berichten
Maak een account aan of meld je aan om een opmerking te plaatsen
Je moet lid zijn om een opmerking achter te kunnen laten
Account aanmaken
Maak een account aan in onze gemeenschap. Het is makkelijk!
Registreer een nieuw accountAanmelden
Ben je al lid? Meld je hier aan.
Nu aanmelden