Bug 318288 - Add support for reading and writing the KML Model tag
Summary: Add support for reading and writing the KML Model tag
Status: RESOLVED FIXED
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: 1.6 (KDE 4.11)
Platform: Other Linux
: NOR task
Target Milestone: ---
Assignee: Sanjiban Bairagya
URL:
Keywords: junior-jobs
Depends on:
Blocks:
 
Reported: 2013-04-13 11:25 UTC by Dennis Nienhüser
Modified: 2013-05-19 10:55 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Nienhüser 2013-04-13 11:25:49 UTC
There's an initial patch to read and write the KML Model tag at https://git.reviewboard.kde.org/r/108405/diff

Take this patch as a base, clean it up and finish it. See the KML reference on the Model tag: https://developers.google.com/kml/documentation/kmlreference#model and our KML guide at http://marble.kde.org/kml-guide.php
Comment 1 Dennis Nienhüser 2013-04-29 18:29:32 UTC
The existing reviewboard patch contains some already submitted files unfortunately, so applying the patch is a bit tricky.

You can try
- download the patch to model.diff
- run (in marble's source dir) patch -p1 < model.diff
- patch ain't reversed, but you don't want to apply it to existing files (these are questions that will come up).
- Check the results carefully. You will have to make some adjustments and resolve some conflicts.
Comment 2 Dennis Nienhüser 2013-05-17 16:42:51 UTC
Git commit 7db836860dc5021cf8f9882ad0432b6de43d2cf8 by Dennis Nienhüser, on behalf of Sanjiban Bairagya.
Committed on 17/05/2013 at 18:40.
Pushed by nienhueser into branch 'master'.

Support reading the KML Model tag

REVIEW: 110403
REVIEW: 108405

M  +11   -0    src/lib/geodata/CMakeLists.txt
A  +78   -0    src/lib/geodata/data/GeoDataAlias.cpp     [License: LGPL]
A  +52   -0    src/lib/geodata/data/GeoDataAlias.h     [License: LGPL]
M  +2    -0    src/lib/geodata/data/GeoDataGeometry.h
M  +1    -0    src/lib/geodata/data/GeoDataLink.cpp
M  +1    -1    src/lib/geodata/data/GeoDataLink.h
A  +93   -0    src/lib/geodata/data/GeoDataLocation.cpp     [License: LGPL]
A  +56   -0    src/lib/geodata/data/GeoDataLocation.h     [License: LGPL]
A  +191  -0    src/lib/geodata/data/GeoDataModel.cpp     [License: LGPL]
A  +85   -0    src/lib/geodata/data/GeoDataModel.h     [License: LGPL]
A  +92   -0    src/lib/geodata/data/GeoDataOrientation.cpp     [License: LGPL]
A  +62   -0    src/lib/geodata/data/GeoDataOrientation.h     [License: LGPL]
A  +93   -0    src/lib/geodata/data/GeoDataResourceMap.cpp     [License: LGPL]
A  +56   -0    src/lib/geodata/data/GeoDataResourceMap.h     [License: LGPL]
A  +93   -0    src/lib/geodata/data/GeoDataScale.cpp     [License: LGPL]
A  +54   -0    src/lib/geodata/data/GeoDataScale.h     [License: LGPL]
A  +48   -0    src/lib/geodata/handlers/kml/KmlAliasTagHandler.cpp     [License: LGPL]
C  +5    -6    src/lib/geodata/handlers/kml/KmlAliasTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 063% similarity]
M  +3    -0    src/lib/geodata/handlers/kml/KmlAltitudeModeTagHandler.cpp
M  +5    -1    src/lib/geodata/handlers/kml/KmlAltitudeTagHandler.cpp
M  +1    -0    src/lib/geodata/handlers/kml/KmlAltitudeTagHandler.h
M  +3    -0    src/lib/geodata/handlers/kml/KmlCoordinatesTagHandler.cpp
M  +4    -0    src/lib/geodata/handlers/kml/KmlElementDictionary.cpp
M  +8    -3    src/lib/geodata/handlers/kml/KmlElementDictionary.h
M  +4    -1    src/lib/geodata/handlers/kml/KmlHeadingTagHandler.cpp
M  +2    -2    src/lib/geodata/handlers/kml/KmlHrefTagHandler.cpp
M  +7    -2    src/lib/geodata/handlers/kml/KmlLatitudeTagHandler.cpp
M  +1    -0    src/lib/geodata/handlers/kml/KmlLatitudeTagHandler.h
M  +9    -3    src/lib/geodata/handlers/kml/KmlLinkTagHandler.cpp
M  +1    -1    src/lib/geodata/handlers/kml/KmlLinkTagHandler.h
A  +49   -0    src/lib/geodata/handlers/kml/KmlLocationTagHandler.cpp     [License: LGPL]
C  +5    -6    src/lib/geodata/handlers/kml/KmlLocationTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 061% similarity]
M  +6    -0    src/lib/geodata/handlers/kml/KmlLongitudeTagHandler.cpp
M  +1    -0    src/lib/geodata/handlers/kml/KmlLongitudeTagHandler.h
A  +55   -0    src/lib/geodata/handlers/kml/KmlModelTagHandler.cpp     [License: LGPL]
C  +4    -4    src/lib/geodata/handlers/kml/KmlModelTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 075% similarity]
A  +48   -0    src/lib/geodata/handlers/kml/KmlOrientationTagHandler.cpp     [License: LGPL]
C  +5    -6    src/lib/geodata/handlers/kml/KmlOrientationTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 060% similarity]
M  +10   -9    src/lib/geodata/handlers/kml/KmlRefreshModeTagHandler.cpp
A  +48   -0    src/lib/geodata/handlers/kml/KmlResourceMapTagHandler.cpp     [License: LGPL]
C  +5    -6    src/lib/geodata/handlers/kml/KmlResourceMapTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 060% similarity]
M  +6    -0    src/lib/geodata/handlers/kml/KmlRollTagHandler.cpp
M  +1    -1    src/lib/geodata/handlers/kml/KmlRollTagHandler.h
A  +47   -0    src/lib/geodata/handlers/kml/KmlScaleTagHandler.cpp     [License: LGPL]
C  +4    -5    src/lib/geodata/handlers/kml/KmlScaleTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 075% similarity]
C  +15   -11   src/lib/geodata/handlers/kml/KmlSourceHrefTagHandler.cpp [from: src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp - 055% similarity]
C  +5    -4    src/lib/geodata/handlers/kml/KmlSourceHrefTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 066% similarity]
C  +14   -11   src/lib/geodata/handlers/kml/KmlTargetHrefTagHandler.cpp [from: src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp - 055% similarity]
C  +5    -4    src/lib/geodata/handlers/kml/KmlTargetHrefTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 066% similarity]
M  +10   -1    src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp
C  +12   -10   src/lib/geodata/handlers/kml/KmlXTagHandler.cpp [from: src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp - 057% similarity]
C  +5    -4    src/lib/geodata/handlers/kml/KmlXTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 068% similarity]
C  +12   -10   src/lib/geodata/handlers/kml/KmlYTagHandler.cpp [from: src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp - 057% similarity]
C  +6    -4    src/lib/geodata/handlers/kml/KmlYTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 068% similarity]
C  +12   -10   src/lib/geodata/handlers/kml/KmlZTagHandler.cpp [from: src/lib/geodata/handlers/kml/KmlTiltTagHandler.cpp - 056% similarity]
C  +4    -4    src/lib/geodata/handlers/kml/KmlZTagHandler.h [from: src/lib/geodata/handlers/kml/KmlRollTagHandler.h - 068% similarity]
M  +7    -1    src/lib/geodata/parser/GeoDataTypes.cpp
M  +6    -0    src/lib/geodata/parser/GeoDataTypes.h
M  +1    -0    tests/CMakeLists.txt
A  +105  -0    tests/TestModel.cpp     [License: LGPL]

http://commits.kde.org/marble/7db836860dc5021cf8f9882ad0432b6de43d2cf8
Comment 3 Dennis Nienhüser 2013-05-19 10:55:29 UTC
Git commit 542b43cedfb9b74ccb3b7a5f2691c72d16ef1a46 by Dennis Nienhüser, on behalf of Sanjiban Bairagya.
Committed on 19/05/2013 at 12:53.
Pushed by nienhueser into branch 'master'.

KML Model tag writer.

REVIEW: 110509

M  +1    -0    src/lib/geodata/CMakeLists.txt
M  +1    -1    src/lib/geodata/writers/kml/KmlLinkTagWriter.cpp
M  +2    -1    src/lib/geodata/writers/kml/KmlLinkTagWriter.h
M  +1    -1    src/lib/geodata/writers/kml/KmlLookAtTagWriter.cpp
A  +87   -0    src/lib/geodata/writers/kml/KmlModelTagWriter.cpp     [License: LGPL]
A  +29   -0    src/lib/geodata/writers/kml/KmlModelTagWriter.h     [License: LGPL]
M  +4    -0    tests/TestGeoDataWriter.cpp
A  +38   -0    tests/data/MackyModel.kml

http://commits.kde.org/marble/542b43cedfb9b74ccb3b7a5f2691c72d16ef1a46