erickzli / sdecoder Goto Github PK
View Code? Open in Web Editor NEWA decoder for ArcGIS binary symbol file.
License: Apache License 2.0
A decoder for ArcGIS binary symbol file.
License: Apache License 2.0
Add a flag that can make the program test all the files in a testing directory.
Is your feature request related to a problem? Please describe.
The Marked symbols and Line symbols are as importance as the Fill Symbol.
But currently,The parser function only be supported to analysis Fill Symbol.If there were some binary datas of Line Symbol or Marked Symbol to parser,it always get some err result.
Describe the solution you'd like
The grandParser function could support analysis the Marked Symbol and Line Symbol binary data.
And return the Json string should corresponding with the symbol type.
Describe the bug
Not only the line symbol which contained in fill symbols lost activeness info,And marked symbols which contained in line symbol the same.
Screenshots
just like this is the fill symbol,some line symbol is contained in it:
the fill line symbol(only has one layer):
the parsed result:
"lineProperties_fillingLine": {
"name": "Filling Line",
"numberOfLineLayers": 1,
"lineLayer": [
{
"number": 1,
"type": "Simple Line",
"color_simpleLineColor": {
"name": "Simple Line Color",
"space": "RGB",
"firstField": 91.231851,
"secondField": -49.888863,
"thirdField": 80.838943
},
"width": 1.000000,
"style": "Solid"
}
]
},
"lineProperties_outline": {
"name": "Outline",
"numberOfLineLayers": 1,
"lineLayer": [
{
"number": 1,
"type": "Simple Line",
"color_simpleLineColor": {
"name": "Simple Line Color",
"space": "RGB",
"firstField": 54.043767,
"secondField": 0.000000,
"thirdField": 0.000000
},
"width": 1.000000,
"style": "Solid"
}
]
},
the fill line and outline don't have the activeness infos .
Describe the bug
Such like the line symbol data for index-8-name-cartogline.data.
It's templat parsed result is:
{
...other parsed infos.
template info:
"template": {
"interval": 3.000000,
"linePatternFeature": {
"patternLength": 0.000000,
"gapLength": 1.000000
},
"linePatternFeature": {
"patternLength": 1.000000,
"gapLength": 1.000000
},
"linePatternFeature": {
"patternLength": 3.000000,
"gapLength": 4.000000
},
"linePatternFeature": {
"patternLength": 2.000000,
"gapLength": 3.000000
}
}
...
This linePatternFeature filed is redefinition,which is invalid for json parser.
Description
Some features have multiple color fields where they share the same key called "color", which is not banned based on JSON standard (p, ii),
It is expected that other standards will refer to this one, strictly adhering to the JSON text format, while imposing restrictions on various encoding details. Such standards may require specific behaviours. JSON itself specifies no behaviour.
However, my fellow developer suggested that non-repeated keys are ideal for the future development.
Expected behavior
All the keys should be non-repeated.
In JSON, the last instance of a specific level should not contain a comma.
The parser is malfunctioned on the three mentioned features, where it parses 8 bytes after the correct position.
Error shown:
++++START parsing layer NO. 3
-------------------------------
START parsing a layer...
ERROR: Filling type 9 not support
ERROR occurred. Stopped...
"error": "Filling type."
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.