Esri / military-features-data

Source data for Esri defense and intelligence feature templates. This data is used to create features and derived data products using military symbology.
Apache License 2.0
45 stars 32 forks source link

Unable to Rotate Dictionary Renderer Symbols #204

Closed joebayles closed 6 years ago

joebayles commented 8 years ago

Tasks

Initial Comments

I've noticed that I am unable to rotate symbols.

ArcGIS Pro 1.2 Final (Build 5023) Military Overlay Template

  1. Create a unit, like the one above (Edit > Features > Create)
  2. Rotate that unit (Modify Features > Alignment > Rotate)
    • Expected Behavior: Symbol rotates on anchor point (center of rectangle)
    • Unexpected Behavior:
      • Without echelon modifier: Symbol moves like it is being rotated on center of rectangle, but snaps back to 0° (no movement)
      • With echelon modifier: Symbol rotates on anchor point (center of echelon modifier), but snaps back to 0° rotation of the symbol, but it has recentered on where the center of the rectangle is, effectively moving the symbol.
  3. Edit directional attributes (Edit > Selection > Attributes)
    • Expected Behavior: Symbol rotates on anchor point (center of rectangle)
    • Unexpected Behavior:
      • Edit Direction: No change.
      • Edit Symbol Rotation: No change.

Before attempted rotation: image

After attempted rotation: image

csmoore commented 8 years ago

@joebayles - can you provide a more detailed repro-case (using this version of Pro, load the data from here, do this, expected/unexpected behavior, etc.) - so we can use this issue to propose a Pro CR.

Also please indicate if this needed for a project or just an enhancement request.

joebayles commented 8 years ago

ArcGIS Pro 1.2 Final (Build 5023) Military Overlay Template (from NSEC portal)

  1. Create a unit, like the one above (Edit > Features > Create)
  2. Rotate that unit (Modify Features > Alignment > Rotate)
    • Expected Behavior: Symbol rotates on anchor point (center of rectangle)
    • Unexpected Behavior:
      • Without echelon modifier: Symbol moves like it is being rotated on center of rectangle, but snaps back to 0° (no movement)
      • With echelon modifier: Symbol rotates on anchor point (center of echelon modifier), but snaps back to 0° rotation of the symbol, but it has recentered on where the center of the rectangle is, effectively moving the symbol.
  3. Edit directional attributes (Edit > Selection > Attributes)
    • Expected Behavior: Symbol rotates on anchor point (center of rectangle)
    • Unexpected Behavior:
      • Edit Direction: No change.
      • Edit Symbol Rotation: No change.

That explanation might be a little weird, please let me know and I can demo it for you. This is not for a project.

csmoore commented 8 years ago

@joebayles - thanks for the very good repro cases - I directly edited the original issue descriptions with these (so this info is there) and linked to a public version of the template (so other teams who will need to work on this will have access to)

csmoore commented 8 years ago

@jeconley - we would like to propose a Pro 1.3 CR for this if possible

jeconley commented 8 years ago

Can you tell me a specific symbol to try with and without the echelon? I can repro the problem without the echelon but haven't located a feature template yet that has one.

csmoore commented 8 years ago

@jeconley - sorry I didn't realize the echelon thing was in this issue (I thought it was just rotating DictionaryRenderer symbols in general):

To edit a feature to change this, pick one of the symbols in the LandUnits layer and change the "echelon" attribute.

image

jeconley commented 8 years ago

Thanks @csmoore. CR329504 has been entered and is currently marked priority yes for Pro 1.3. It looks like this has the same underlying causes as issue with the z-fighting.

mbriat commented 8 years ago

I don't see anything that will persist the rotation as expected. I'm seeing the same behavior with a simple renderer. Seems like the rotation tool should not be available if the angle cannot be persisted. I'm seeing a Symbol Size and Symbol Rotation field, but they cannot be used with a Dictionary renderer like other renderers (burger/review connected attributes/Rotation-Size).

mbriat commented 8 years ago

Some echelons have really large sizes and it seems the rotation centers in the middle of the bounding box. This happens to fall on the echelon mark for some echelon values. Here is the bounding box as seen by the scale tool image Happens for Battalion/Squadron, Company/Battery/Troop and Regiment/Group. I think they are not sized and centered correctly.

csmoore commented 8 years ago

@mbriat - thanks for having a look - I don't recall having to do anything special with those when I was just drawing with the SVGs but we can have a closer look - especially if this is the only issue causing this behavior.

@Dbarnes1 - while we are planning on editing a bunch of SVGs this sprint we may want to take a look at these 3 - and if they don't already have the "reference frame" embedded we should probably add that also

jeconley commented 8 years ago

A fix has been installed and will be available in build 5603

csmoore commented 8 years ago

@joebayles - sounds the rotation issue (third step/issue in description) is ready to verify on Pro 1.3.5603+

This doesn't address the second step/issue in the description - anchor/center point changing with echelon issue but that issue appears to be a repeat of - https://github.com/Esri/military-features-data/issues/202 (and perhaps also https://github.com/Esri/military-features-data/issues/212 )

joebayles commented 8 years ago

@csmoore thanks for clarifying which issue the fix was installed for.

I updated today (Build 5682), and downloaded a fresh version of the Military Overlay template 1.0.1 (though the name of the aptx is still 1.0.0, something for @Dbarnes1 (https://github.com/ArcGIS/solutions-desktop-templates/issues/255)).

I attempted to change the rotation by:

Neither worked. So, to be clear, I see no change from my original issue.

@csmoore let me know if there's anything else you'd like me to try.

csmoore commented 8 years ago

@joebayles - thanks for testing - I understand step 3 in the original issue description better now - but there is nothing in MilitaryOverlay that does anything with these properties - was that expected? (in ArcMap you could add layer properties to rotate based on an attribute but not sure if this exists in Pro - @Dbarnes1 might know)

@jeconley - just checking what the fix was expected for CR329504 - now that I have tried these steps myself with the rotate and scale tools - it makes more sense that these dictionary renderer symbols would behave differently (and perhaps not honor those tools - which I guess is why MarcO's suggestion was perhaps to disable them )

jeconley commented 8 years ago

@csmoore The CR essentially just combined the different symbol elements into one symbol. This will not have an impact with the editing tools. Based on what Marc-O has said, it is my understanding that the rotation editing tool will only 'work' even there is a place to store the rotation, in other words the rotation is being driven from a field. I haven't had a chance to try it myself but I can shortly. I can follow up with the editing team to see if they plan to disable the tools.

Actually, I just tried it with a simple render with the fields map and the tools don't work in this case either.

joebayles commented 8 years ago

@csmoore no problem, happy to do it. I assumed that nothing would happen when I edited that attribute, but I checked anyway. I did expect based on the CR that the Rotate Tool would work. To answer your question about user expectation, I would expect that:

I think that editing tools like move/rotate should be enabled if at all possible. I understand there are technical constraints, but they would greatly enhance usability in military map/overlay creation.

csmoore commented 8 years ago

So to try to translates this into something a user would like to do in Pro with a feature layer - do we have 2 issues (neither of which probably have any short term solution - but I would like to at least understand the product problem and the CR we'd like to write):

  1. Pro does not support rotating a feature layer symbol based on an attribute ( @Dbarnes1 @BobBooth - do we know this is a fact, I haven't personally found a way)
  2. Dictionary Renderer Layers do not support the scale and rotate edit tools
jeconley commented 8 years ago

@csmoore Pro does support rotating a feature layer symbol based on an attribute. There are two ways in Pro to do this.

The first is to set it at the layer level which will apply the rotation to all of the symbols in the layer. This is supported for the single symbol, unique value and graduated symbol renderers. This is found under the 'Review connected attributes' option in the menu on the renderer. image

The second is to map the rotation at the symbol layer level in the symbol editor. This can be accessed in the symbol editor by selecting 'connect attributes' in the menu of the editor. When you do this a database can will show next to the attributes that can be mapped on the Layers tab. Click on the can and set the field that contains the rotation. attmap

For the dictionary, I think the only option would be to add the option to map the attribute at the layer level which would apply the attribute mapping to all the symbols in the layer.

csmoore commented 8 years ago

@jeconley - many thanks for showing us how to map symbol attributes for a (non-dictionary) layer (I will learn that hamburger button one day) - I guess we do need to work together to figure out how to get rotation and scale working similarly for the dictionary renderer

@joebayles - if you need a rotation indication before 1.4 the method Jamie outlines will likely be your only near term choice - add a second layer for the indicator like was done in ArcMap

Dbarnes1 commented 7 years ago

@joebayles @csmoore I recently touched base with the Pro team about creating visual variables for the dictionary renderer, which would enable attribute based symbol rotation (the first option Jamie presents above) and they entered it in their backlog for Pro 2.0 (v.next after 1.4)

lfunkhouser commented 6 years ago

Closing. The use case to rotate the military symbol on a map is not clear.