-
Notifications
You must be signed in to change notification settings - Fork 28
/
Copy pathTODO
120 lines (107 loc) · 5.6 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
TODO: jot pad for libS52.so missing stuff, bug, snag, ... , brain dump
Last update:
2013JAN - add link to Pavel Kalian RleEditor, add Testing section
2014DEC - X-Track logic done, add testing using S-64
2016MAY - experiment in optimisation (GLES2): send 'idx palette' + 'vertex trans' to shader via Z
Curent focus (top priority *):
GL:
* -handle overlaping symbol at the center of the screen (find test case to debug)
-send XYZ to GPU where Z=(idx col pal 6bits + trans 2bits) = 64 colors + 4 levels of transparancy = 8bits
-exp: pseudo shadow map in GLSL using some bits left (32-8=24) [min GL ES2]
-exp: use shadow to gage channel gabarie
-implement pattern scale spacing (PASP field)
-handle GLU_TESS_MAX_COORD, GLU_TESS_TOLERANCE (not implemented in libtess)
-nice to have: fading chart boudary, calib symb, ..
S52:
-fix raz rle $SCODETREPNT04, $SCODETREPNT05,
-spot sounding (mouse hover depth feedback - vonoroide)
PL:
* -view group or somme equivalent functionality
-overscale (DATCVR01) (maybe LOD/chart scale/view scale)
-fix breaker color problem in CA49995A.000
-check/validate QUAPOS of spatial (not attribute) object
-upgrade to WRECK03 (C_s_md2.pdf: Item No. PL03.0.d02.cl.035)
-isobath tag
Coding:
* -use masked lines field (OGR/S57 MASK/FSPT) to use the line overlap trick (test case CA379035.000)
-check CRC32 of S57 in CATALOG.031
-read text referenced by CATALOG.031 (some text in M_NPUB/M_COVR also)
-write back mariner's parameter to .cfg (client job!)
-chart manager / chart extent / CATALOG.031 (client job!)
Testing:
-S-64
-apitrace: to record gl*() calls / playback / diff / optimisation
In a day:
-libgdal.a: full build is heavy, build only with the final driver set (S57, PNG, shapefile)
-code: static global variable should all be inside a context struct .. of course!
-BUG: S-52 specs 3.2 for TOPMAR01 (init 'floating' inside loop)
-OGR: IHOOCDD.XXX
-GL: display 'dipping distance' of light (need the height of eye and sea level)
-GL: bearing snap to light
-GL: optimisation - LOD --> reduce the nbr of vertex in area/line
(NP, need heuristique: http://en.wikipedia.org/wiki/Ramer-Douglas-Peucker_algorithm)
-PL: implement vector instruction command: symbol call (SC), arc (AA)
-PL: implement raster instruction for pattern and symbol (PBTM, SBTM)
-PL: SCAMAX
DONE
====
(put here TODO's that has been done)
-delete superfluous vertex on same slope
-rotate extent when chart rotate / augment view extent to fill screen
-experimental: supression of overlapping simple lines (ie overlaping LS() not processed) (also of same disp prio AREAS/LINES)
-combined adjacent areas of M_COVR, CATCOV=1; HODATA01 - boundary marking end of HO data. Use CSG as in _computeCentroid().
-alarm safety perimeter (pick GL trick) and route planning -try fast geo route instead of the pick GL trick
-text shadow
-WARN: chart no 1 PLib put $LINE in layer 0
-check handling anti-meridian (need a chart that overlap the meridian to debug)
-check user (if root warn & exit)
-load raster (RADAR Layer, high density bathy,...)
-signal object that land in layer 0 (ex TOPMAR/CA49995A.000/geo.id:123)
-handle C_AGGR and C_ASSO to showup in crusor pick (2 - slave, 3 - peer, need to hack GDAL TEMP_BUFFER_SIZE)
-display text description of symbol in PLib in cursor pick
-HTML5/SVG: s52ui (Dart & PhoneGap) handle web stuff (WebSocket)
-code: many S52_drawStr() params could be drawn from inside S52_drawLast()
-PL: editor (see Pavel Kalian https://github.com/nohal/RleEditor)
-load Chart No 1 for testing C1-PLib 3.1 (the default PLib)
-handling GDAL (world) shapefile to fit S52 framework
-test for proper configure of openev when loading libS52.so
-text grouping
-click on north arrow to get north up (the code is in s52egl.c - tested on Android)
-ARM / android / EGL / GLESv2
-(!!)PL: GFileMonitor for new (drop in) PLib
-put 'cursor' symbol on layer 9 (S52 say 8, but ownshp is on layer 9)
and then use drawLast()
-GL: S52_viewport(): overview/magnifying glass a la ghostview (debug)
-ajust height for datum, diff in VDAT/SDAT of DSPM (Data Set Parameter --DISD layer in OGR)
-graticule spacing set by user via S52_MAR_DISP_GRATICULE
-dbus (partial)
-handle signal async (interrupt drawing, segfault, ...)
-GPSD/AIS
-GL: curves (in LEGLIN)
-(partial - only LC()) supression of overlapping lines (HARD -need to tweak GDAL)
-thread awaire
-handle multiple cells
-Mariner's object
-chart rotation (ship head up)
-handle change in display prority
-optimisation of pattern drawing
-plug ftgl to anti-alias font
-cursor pick
-centered point symbol on line object
-supress display of offseted centered symbol that fall outside of poly
-glPushAttrib() to save GL state of the caller
-compute scale to display sector radius in Nautical Miles
-add symbol scale factor in config (what was that !)
-handle update: reparse CS (ex: new value for TX cmd)
-SCAMIN scale filter (CS: SCANMIN set to INFINITY)
-dotpitch
-move centroid inside concave poly for centered symbol
-make _depareL local to a cell
-handle reparse of CS instead realoading cells to force CS parse
-move X stuff in separate file
-GTK2
-mingw (portabilty)
-draw text at 'display priority' 8
-use GEOS instead of stencil for CS --GEOS too slow
-jitter/mismatch "Line Style" or "Line Color" with "Area Color"
* was due to overscale .. at nanometer zoom double implode