Opened 17 years ago

Closed 17 years ago

#24 closed defect (fixed)

Fix some bugs in the ResizeBox symbolization code

Reported by: waltweltonlair Owned by: waltweltonlair
Priority: high Milestone: 1.2
Component: Server Version: 1.2.0
Severity: major Keywords:
Cc: External ID: 924135

Description

The symbolization code wasn't correctly handling the case of an off-center resize box, nor was it updating the resize box correctly in the case where the symbol definition had multiple graphic elements being added to the resize box.

The new code is also simpler.

  • we get the initial resize box extents and store them for reference
  • we then add the bounds of all graphic elements with resize control set to AddToResizeBox to a copy of these extents
  • now that we have the original resize box and the updated resize box, we can easily compute the scales / translations to be applied
  • all graphic elements with resize control set to AdjustToResizeBox are then transformed using the scales / translations

I also changed the boolean SE_RenderPrimitive::resize member to an enumerated type. This way we only have to evaluate the resizeControl parameter one time.

I tested the updated code with polylines, polygons, text, and raster elements. I used an off-center resize box, and tried all the different GrowControl options.

Attachments (1)

SymbologyPoints.sd (2.1 KB ) - added by waltweltonlair 17 years ago.
Sample SymbolDefinition used for testing

Download all attachments as: .zip

Change History (2)

by waltweltonlair, 17 years ago

Attachment: SymbologyPoints.sd added

Sample SymbolDefinition used for testing

comment:1 by waltweltonlair, 17 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.