-
Notifications
You must be signed in to change notification settings - Fork 109
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Import of graphic, layout and image objects #2124
base: master
Are you sure you want to change the base?
Commits on Nov 19, 2024
-
OcdFileImport: Handle graphic objects
OCD format recognizes symbol-less map objects that, however, render in map colors. They are called "graphic objects". We create synthetic symbols for graphic objects on import. All the Mapper symbols have the same name and number reflecting the anonymous nature of the source graphic objects. Closes OpenOrienteeringGH-959.
Configuration menu - View commit details
-
Copy full SHA for 519f53e - Browse repository at this point
Copy the full SHA 519f53eView commit details -
OcdFileImport: Hide imported graphics objects
There is a flag in the .ocd file to hide all graphics objects which was not yet evaluated. The status of the flag is now read and applied to all imported graphic objects.
Configuration menu - View commit details
-
Copy full SHA for 6201bf7 - Browse repository at this point
Copy the full SHA 6201bf7View commit details -
OcdFileImport: Import layout vector objects
Layout objects (line, area, text) can now be imported. Significant code parts were taken over from Libor's commits. Layout objects' symbols are hidden depending on the 'l' flag in si_ViewPar. The 'l' flag in si_DisplayPar is apparently not used for hiding layouts objects, but both flags are evaluated in parallel. Todo: for text objects the import of the format (font, size, alignment, bold, italic) needs to be added.
Configuration menu - View commit details
-
Copy full SHA for 2bf0335 - Browse repository at this point
Copy the full SHA 2bf0335View commit details -
OcdFileImport: Apply OcdParameterStreamReader
Refactor importDisplayPar() by using OcdParameterStreamReader.
Configuration menu - View commit details
-
Copy full SHA for 7f8c24d - Browse repository at this point
Copy the full SHA 7f8c24dView commit details -
OcdFileImport: Remove caching of imported graphic and layout symbols
There is no need to cache the dynamically created graphic and layout symbols. Instead create a temporary symbol and then scan the list of symbols whether an equal symbol is already present and thus can be used instead.
Configuration menu - View commit details
-
Copy full SHA for 3a596f0 - Browse repository at this point
Copy the full SHA 3a596f0View commit details -
OcdFileImport: Complete import of text layout objects
Text layout objects contain a limited set of formatting options, e.g., font type, font size, horizontal alignment, italic and bold type. These options are stored after the text string in the same format as for Parameter Strings.
Configuration menu - View commit details
-
Copy full SHA for fd92635 - Browse repository at this point
Copy the full SHA fd92635View commit details -
ImportExport: Avoid duplicate warnings
In addition to 'addWarning()' 'addWarningOnce()' only adds a warning to the list of warnings if the warning is not yet in the list.
Configuration menu - View commit details
-
Copy full SHA for ad935ae - Browse repository at this point
Copy the full SHA ad935aeView commit details -
OcdFileImport: Import of image objects
Image objects (as well as layout objects) define their color directly in the object definition. With this commit the import of layout, image and graphic objects is now done within a single function. A single warning is issued that these kind of objects are imported by means of auxiliary symbols and can't be exported in their original format. Closes OpenOrienteering#1231
Configuration menu - View commit details
-
Copy full SHA for ecf63a1 - Browse repository at this point
Copy the full SHA ecf63a1View commit details -
OcdFileImport: Hide layout objects individually
Layout objects can be hidden individually. This property is set within a parameter string (type 27). If the parameter string defines an image layout object, a warning is issue that this object type cannot be imported.
Configuration menu - View commit details
-
Copy full SHA for d8db904 - Browse repository at this point
Copy the full SHA d8db904View commit details -
OcdFileImport: Set cap and join styles in separate function
Setting of cap and join styles was done in the importLineSymbolBase() function and was replicated by this PR for importing special objects. In addition setupLineSymbolFraming() was setting the cap and join styles for framing lines (although only checking for a subset of cap and join styles). This commit moves the setting to a separate function.
Configuration menu - View commit details
-
Copy full SHA for 7a5f947 - Browse repository at this point
Copy the full SHA 7a5f947View commit details -
OcdFileImport: Import of image layout objects
Image layout objects are stored in parameter strings very similar to background images (i.e., templates), whereas the image file itself is stored outside the .ocd file. This commit imports image layout objects as templates (and informs the user about it) after the original templates have been imported and thus adds them to the end of the list of templates.
Configuration menu - View commit details
-
Copy full SHA for 8fd5a2b - Browse repository at this point
Copy the full SHA 8fd5a2bView commit details -
OcdFileImport: Import embedded images
Layout raster image objects can also be stored as embedded images directly in the .ocd file. This commit allows to save the embedded image locally in order to be added as a template to the map.
Configuration menu - View commit details
-
Copy full SHA for e363653 - Browse repository at this point
Copy the full SHA e363653View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d1add8 - Browse repository at this point
Copy the full SHA 2d1add8View commit details