= MapWithAI = Allows the use of MapWithAI data in JOSM. == Features == #Features * Located in **[[Action/Download|Download Data]]**: Download arbitrary data (non-cropped at this time) in the `Download from MapWithAI API` tab -- ''note that you cannot download multiple MapWithAI layers'' * Located in **[[Menu/Data|data menu]]** * **MapWithAI: Download data**: Download MapWithAI data from the current download area (if more than one layer, a dialog will ask for a layer to be selected). This is dependent upon configured URLs (defaults to MapWithAI). {{{#!comment * **MapWithAI: Download arbitrary data** ''([wikitr:/Help/ExpertMode expert mode] only)'': Download MapWithAI data inside an arbitrary bounding box, optionally cropping to the bounding box. The bounding box defaults to the current map view. This is also dependent upon configured URLs. }}} * **MapWithAI: Add selected data**: Add the selected data from the MapWithAI data layer to a OSM Data Layer * **MapWithAI: Attempt to merge potentially duplicate ways** ''([wikitr:/Help/ExpertMode expert mode] only)'': Attempt to merge potentially duplicate ways. Done automatically for MapWithAI data, but is available for other uses (may or may not work as expected). * [#RemoteControl Remote Control] + [#UploadHooks Upload Hooks] * Map paint style * Automatically added by the plugin * Can be automatically toggled on/off with the `MapWithAI` layer (this requires the `MapWithAI` plugin) * Can show `new`, `modified`, or `pre-existing` MapWithAI data (depends upon the `source` tag). * Live counter of objects added with `MapWithAI` * Preferences * Set MapWithAI url(s) * Choose whether or not MapWithAI automatically switches layers * Choose how many features you want to add per action * Choose whether or not to merge buildings with address nodes (note: this only applies to buildings that will have one ''and only one'' address inside it) * Change tags ''([wikitr:/Help/ExpertMode expert mode] only)'' that you want to be replaced. For example, `highway=residential` can become `disused:highway=road`. ''This replacement only occurs during download.'' {{{#!comment Access MapWithAI/RapiId data for arbitrary regions in [wikitr:/Help/Action/Download Download Data] with the new ''with the `Download from MapWithAI API'' tab. To download for the current working area simply use ''MapWithAI: Download data'' in the [wikitr:/Help/Menu/Data Data menu]. Add selected objects from the MapWithAI layer to the OSM data layer with ''MapWithAI: Add selected data' in the Data menu. Can automatically activate the OSM data layer after adding. Can select unlimited number of objects. * [#Remotecontrol Remote Control] * [/Styles/MapWithAI PaintStyle] * added by the plugin * Can show `new`, `modified`, or `pre-existing` MapWithAI data (depends upon the `source` tag). * Live counter of objects added with `MapWithAI` * Choose how many features you want to add per action * Choose whether or not to merge buildings with address nodes (note: ) * Change tags ''([wikitr:/Help/ExpertMode expert mode] only)'' that you want to be replaced. For example, `highway=residential` can become `disused:highway=road`. }}} == Installation === Mandatory 1. see [[Help/Preferences/Plugins]] for details) === Paintstyle (Plugin should automatically add and enable it) 1. Start JOSM 2. Open JOSM Preferences 3. Go to `Map Settings` (the globe with a grid over it) 4. Go to `Map Paint Styles` 5. Add `MapWithAI` from the `Available style` list 6. Press OK == Basic Usage ==#BasicUsage Please note that the screen shots were taken with `Expert Mode` checked in JOSM preferences. You may not see all the actions available without that check, the missing actions may be buggy or for a niche audience. 1. Prepare the area of interest as usual by downloading OSM data and choosing a background imagery. 2. Download data from MapWithAI by going to the `Data` -> `MapWithAI: Download Data`. The default keyboard shortcut is **`Ctrl+R`** (`Cmd+R` on Mac). \\ [[Image(GetData.png, alt=Download Data, center, 80%, link=)]]\\ \\ This simply uses the OSM data boundaries for the MapWithAI download too. If several data layers are loaded, a dialog will ask from which layer the data boundaries should give the target for the MapWithAI download. MapWithAI holds all of its data in one single layer. {{{#!comment This is dependent upon configured URLs (defaults to MapWithAI). }}} 3. Switch to the `MapWithAI` layer if it is not already activated. 4. Select objects to add to the topmost OSM data layer. 5. Add the selected objects by going to `Data` -> `MapWithAI: Add selected data` (default keyboard shortcut is **`Shift+A`**) [[Image(SaveData.png, alt=Add selected data, center, 80%, link=)]] == Advanced Usage == The ''MapWithAI: Attempt to merge potential duplicate ways'' is available in [wikitr:/Help/ExpertMode expert mode] only. It attempts to merge potentially duplicate ways. Done automatically for MapWithAI data, but is available for other uses (may or may not work as expected). === Preferences === ||= Preference =||= Explanation =||= Expert Mode =|| || API URLs || URLs for MapWithAI service (if blank, resets to default after JOSM restart) || no || || Automatically switch layers || When adding data switch layers automatically (default `yes`) || no || || Maximum features (add) || The maximum number of objects that can be selected in the MapWithAI Layer (default `5`) || no || || Merge address nodes and buildings || Merge buildings added from the MapWithAI layer with one single existing address node inside the building on the OSM layer (default `yes`) || no || || Replacement tags || Table of keys to replace (default is empty) || yes || The table of replacement tags has `Key` and `Value` columns in the format of `key=TAG=VALUE` and `value=TAG=VALUE`, for example: [[Image(TagReplacement.png, alt=Add Tag, center, 80%,link=)]] Note that you can remove a tag by using `key=TAG=VALUE` and `value=TAG=`. MapWithAI has an own tab in the Plugins register in the JOSM Preferences dialog. [[Image(MapWithAIPreferencePanel.png, alt=MapWithAI Preferences, center, 80%)]] === Remote control === #RemoteControl If JOSM is running with remote control enabled and the MapWithAI plugin is installed, you can go to http://localhost:8111/features?q=mapwithai . Remote control ''only'' affects the current MapWithAI layer. * Downloading data for current layers http://localhost:8111/mapwithai * Setting a bbox to download data http://localhost:8111/mapwithai?bbox=longitude1,latitude1,longitude2,latitude2 * Setting an arbitrary URL http://localhost:8111/mapwithai?url=STRING * Setting max objects to add in each action http://localhost:8111/mapwithai?max_obj=INT * Setting autoswitch layer http://localhost:8111/mapwithai?switch_layer=BOOLEAN * Setting a crop bbox http://localhost:8111/mapwithai?crop_bbox=longitude1,latitude1,longitude2,latitude2 === Upload Hooks === #UploadHooks * `mapwithai`: The count of OSM objects added and still present from the MapWithAI layer (splits and deletions may cause this to be inaccurate) * `mapwithai:options`: A semi-colon (`;`) separated list of non-default options * `version`: The version of the MapWithAI plugin. Added in case there is a severe bug so it can be blacklisted. * `task`: The bounding box for a task, if one is detected * `maxadd`: The maximum number of MapWithAI objects that are permitted to be added per operation. `<1` allows any number of objects to be added. * `url`: Shows non-default urls. Always the last `mapwithai:option`. === Advanced Settings === #AdvancedSettings * `mapwithai.conflation.simplifyway` -- threshold at which to determine if a way may need to be simplified. Defaults to `0.5`. * `mapwithai.conflation.simplifywaynodepercentagerequired` -- The percentage of nodes at which point the user is asked if the way should be simplified. Defaults to `20` (percent). === Building === [https://gitlab.com/gokaart/JOSM_MapWithAI/wikis/Building-and-Testing Building and Testing]