mykml 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 83cd55f029551ebc17b7a0b46847b414f6ad5a36
4
+ data.tar.gz: 35b3d59f44ff4c3756813467aed0f7ab0eb3e1c2
5
+ SHA512:
6
+ metadata.gz: f5533f8751b01b9b3421a0f47a452f3e08f0b95d28c735e97b9af3779da974c3cb97f97d4d520638a373b4d0cf2dbc2c04b96164f0f0507b0c7104b999134fcf
7
+ data.tar.gz: b43a6265a5bd488f6f49f13ef27e5de2a267dc376c36a3d021166a1219a9be1601c2912d1e393ab7e25bf794cb189fa59ae29d817f22733c43b9ce1e06fec1fa
checksums.yaml.gz.sig ADDED
Binary file
data.tar.gz.sig ADDED
@@ -0,0 +1 @@
1
+ A�(‚� V�dx�]���*UJɁ�L��q_ta��q�ށ���"���Tr�\;�:�� f�tD(���Jg��/䎼��A���l;Lx��H��!{�gќƭ��9��ʈQV��l� o0bڴ��c�q ~u���硚U�T2�&�c�g7��H���lS��0D�R�`�:ޯ�{3�|����.ܟ���`8���;���n�k߫K�LLlQs�!�,u������G����zX㜋p�H�J��n��,��j
data/lib/mykml.rb ADDED
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: mykml.rb
4
+
5
+ require 'dynarex'
6
+ require 'nokogiri'
7
+
8
+
9
+ class MyKML
10
+
11
+ def initialize(logfile)
12
+
13
+ # parse the log file entries into a Dynarex file
14
+
15
+ @dx = Dynarex.new 'log/entry(time, lat, lon)'
16
+ @dx.format_mask = '\[[!time] #\d+\] *INFO -- : [!lat], [!lon]'
17
+
18
+ a = File.read(logfile).lines
19
+ a.shift if a.first =~ /^#/
20
+
21
+ @dx.import a.join
22
+
23
+ end
24
+
25
+ def to_kml()
26
+
27
+ doc = Nokogiri::XML(@dx.to_xml(pretty: true))
28
+
29
+ xslfile = File.read(File.join(File.dirnam(__FILE__), '..',
30
+ 'xslt','mykml.xsl')
31
+ xslt = Nokogiri::XSLT(xslfile)
32
+ xslt.transform(doc)
33
+ end
34
+
35
+ end
data/xsl/mykml.xsl ADDED
@@ -0,0 +1,34 @@
1
+ <?xml version='1.0' encoding='UTF-8'?>
2
+ <xsl:stylesheet xmlns:xsl='http://www.w3.org/1999/XSL/Transform' version='1.0' xmlns="http://www.opengis.net/kml/2.2">
3
+ <xsl:output method='xml' indent='yes' omit-xml-declaration='yes'/>
4
+ <xsl:template match='log'>
5
+ <kml >
6
+ <Document>
7
+ <xsl:apply-templates select='summary/styles'/>
8
+ <xsl:apply-templates select='records/entry'/>
9
+ </Document>
10
+ </kml>
11
+ </xsl:template>
12
+ <xsl:template match='summary/styles'>
13
+
14
+ <xsl:for-each select='*'>
15
+ <Icon>
16
+ <href>
17
+ <xsl:value-of select='name()'/>
18
+ </href>
19
+ </Icon>
20
+ <dd>
21
+ <xsl:value-of select='.'/>
22
+ </dd>
23
+ </xsl:for-each>
24
+
25
+ </xsl:template>
26
+ <xsl:template match='records/entry'>
27
+ <Placemark>
28
+ <Point>
29
+ <coordinates><xsl:value-of select="lon"/>,<xsl:value-of select="lat"/></coordinates>
30
+ </Point>
31
+ </Placemark>
32
+ </xsl:template>
33
+ </xsl:stylesheet>
34
+
metadata ADDED
@@ -0,0 +1,108 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mykml
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE3MTAxODE4MDkyMVoXDTE4MTAxODE4MDkyMVowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAMG6bVnTvCc2PR416Z9j/uAsODQT3i9U0PU5uwBdmHSNcDFy0A7NxC3oncOu
19
+ L9kJ1xvJDJoFq/q1mDQP+fWKwecmZ4ogLqiFzTEUHkO88c4AoN4WZi7fYvcRLNGx
20
+ oi6SqWo0JGZn71kro/ev/MK2BX7pMTX3NtxzEUHBZC6UUCfchxjAewrAk1ZO1Mo7
21
+ JeBcb5iLKy8WYSc3H4Yvxg71bLxJBNB+qDO8sznSCJaMlxXy35Sfb0l8bm16ofTz
22
+ kPbAx/BvwcSREUHw2Qb5PfnNpoBSHHN8N/Ilm5BB352V6py7y8jFU8JbBqzOiKGe
23
+ +ik/JI1KLaq77O+7I5IxY7wr6qcCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQUURt9nRl5vVhLeFom8oq/A5nUN9kwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAnkcNi+v+
27
+ NWzqRqwYCaNAJMYfeYNFJDioyxME+4/XJTOuWeCpBOtwQH1gjef+WJTCD6Ynypcv
28
+ AbiT4uOXfLD3EeA/P2wCwTFO1JqXFZWbb9ykOM2PubO7ddG2TmMfmhwfKVZXZvFQ
29
+ eEdLbdMR0ecwwTh2wjXfuAF4eQyCfkvqNj6+Es6iL4GjV6i0HOTJKbPHOmTWOz8h
30
+ XGZRh2+rMK+VqPTlMhA20Rk0POSSn7Tm2g7WWB8oMgZW5mTI0XkxXYoK1PhaKBjF
31
+ Jfep7vcCeGPGq3iKPA0AqW8ac7qzIp3qxT32WDk3U2xKOtVatSpGsnFbH1akSavg
32
+ IxS+ok99wei1Ig==
33
+ -----END CERTIFICATE-----
34
+ date: 2017-10-18 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: dynarex
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '1.7'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 1.7.26
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '1.7'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 1.7.26
56
+ - !ruby/object:Gem::Dependency
57
+ name: nokogiri
58
+ requirement: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - "~>"
61
+ - !ruby/object:Gem::Version
62
+ version: '1.8'
63
+ - - ">="
64
+ - !ruby/object:Gem::Version
65
+ version: 1.8.1
66
+ type: :runtime
67
+ prerelease: false
68
+ version_requirements: !ruby/object:Gem::Requirement
69
+ requirements:
70
+ - - "~>"
71
+ - !ruby/object:Gem::Version
72
+ version: '1.8'
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 1.8.1
76
+ description:
77
+ email: james@jamesrobertson.eu
78
+ executables: []
79
+ extensions: []
80
+ extra_rdoc_files: []
81
+ files:
82
+ - lib/mykml.rb
83
+ - xsl/mykml.xsl
84
+ homepage: https://github.com/jrobertson/mykml
85
+ licenses:
86
+ - MIT
87
+ metadata: {}
88
+ post_install_message:
89
+ rdoc_options: []
90
+ require_paths:
91
+ - lib
92
+ required_ruby_version: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ required_rubygems_version: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ requirements: []
103
+ rubyforge_project:
104
+ rubygems_version: 2.6.13
105
+ signing_key:
106
+ specification_version: 4
107
+ summary: Generates KML from a log file.
108
+ test_files: []
metadata.gz.sig ADDED
@@ -0,0 +1,3 @@
1
+ B�&��X��-6.HS�����>���E���
2
+ [��Q3��S�5ɪr<�|�G.����,�N��s�¯��j�+�����<?Rͯ�N�y&�����O��xӀ�}��2:�Fq7�S�?���g�ȳn��yCV@WU��4��;(�C�Q��A��B��t��w�|G�u�����B�bE��&�WN!�9���G����p9`:��Mg%��
3
+ ��9��:{�@|