I'm trying to parse KiCad PCB files (new format) and generally it is pretty well done, but there are some things that are not clear.
For now, I don't understand the difference between "gr_line" and "fp_line" and other drawing commands with corresponding prefixes.
It looks like fp_xxx are used in libraries (meaning "footprint"?) and gr_xxx are used for board-level elements ("graphic"?). gr_xxx seem to have an angle parameter, for which I can't figure out a setting in the KiCad, so I don't know what it means or how it is supposed to be used.
I'm sure I'll have more questions.