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
46 stars 32 forks source link

gctString empty 338 times (MIL2525D) #260

Closed NorbertThoden closed 7 years ago

NorbertThoden commented 7 years ago

Summary of Issue Encountered:

The Esri Dictionary/DictionarySymbolStyle (MIL2525D) contains about 6800 resultItems. We reduce them to an amount of ~1900 items relevant for us: so-called Rde-Items. (by skipping frame symbol, graphical modifier and so on...)

These Rde-Items can be divided into different geometry types: Point, Polyline and Polygon.

The Rde-Items of geometrytype Polyline and Polygon contains a gct_-String like these: if (QLatin1String("gct_arrow") if (QLatin1String("gct_arrow_with_offset") if (QLatin1String("gct_parallel_lines") if (QLatin1String("gct_parallel_lines_mid_line") if (QLatin1String("gct_two_line") if (QLatin1String("gct_arrow_with_tail") if (QLatin1String("gct_open_triangle") if (QLatin1String("gct_freehand_line") if (QLatin1String("gct_freehand_arrow") if (QLatin1String("gct_freehand_reverse_arrow") if (QLatin1String("gct_freehand_u") if (QLatin1String("gct_rectangular_1_pt") if (QLatin1String("gct_circular") if (QLatin1String("gct_rectangular") if (QLatin1String("gct_circle") if (QLatin1String("gct_hook") if (QLatin1String("gct_horns") if (QLatin1String("gct_t") if (QLatin1String("gct_triple_arrow") if (QLatin1String("gct_two_line_3_or_4_pt") if (QLatin1String("gct_u_or_t_shape") if (QLatin1String("gct_parallel_lines_with_ticks")

These gct_-String is necessary to create an adequate user interface / rubberband of this advanced symbol.

Unfortunately there are 338 Rde-Items where the gct_-String is missing.... Therefore the adequate user interface / rubberband in undefined….

Do we miss something?

Describe the product and version used:

AcrGISRuntime Qt V100.0.0 (C++)

Include the military symbology standard and version/change set (ex. -2525D):

2525D (mil2525d.stylx -> 21468160bytes)

csmoore commented 7 years ago

I'm not sure I completely understand the issue - are you trying to determine if a symbol is a Point, Line, or Area symbol?

If so, there is a tag for that (that is actually always located in the index [:-3] if that helps): ex: image

Those "GCT_" (I think it stood for "Geometry Conversion/Transformation") tags+cases are just case where a special drawing/point ordering rule was specified in the standard.

NorbertThoden commented 7 years ago

Hi Chris!

Thank you for answer!

No, i´m not trying to determining the geometry type. I saw the tag and we use that. (Process the complete item list (~6800) after dictionary is loaded to have a map key to geometry type. If required the geometry tye is available synchron, not only asynchron.)

But back to our question:

The "GCT_" means "Geometry Conversion/Transformation" - sounds likly. As i understand a missing gct_string means default rule. And the default rule is defined by the geometry type (point, polyline, polygon).

Is that correct?

NorbertThoden commented 7 years ago

"closing" of the thread was unwanted...

csmoore commented 7 years ago

That is correct, if there is not a "GCT_" string present, then there are no special drawing rules/constraints that apply to that (line/area) symbol.

NorbertThoden commented 7 years ago

Hi Chris! That´s sounds fine!

BTW: I´m very happy with this forum (and especially your support) 👍

Thx Norbert