nl-digigo / NLCS

Technische documentatie en issues NLCS
Creative Commons Attribution 4.0 International
2 stars 0 forks source link

WH, missende lijnkleuren et cetera #404

Closed ElisabethKloren closed 2 months ago

ElisabethKloren commented 2 months ago

Objecten in hoofdgroep WH hebben geen lijnkleur enzovoorts als output van de query, wel in de database:

WH 2667 GEUL_VAARGEUL WH 2666 GEUL_STROOMGEUL WH 2664 GEUL_HOOGWATERGEUL WH 2665 GEUL_NEVENGEUL WH 2683 WINTERBERGING WH 2689 GROENE RIVIER WH 2663 GEUL WH 2673 OVERLOOPGEBIED WH 2688 ZOMERBED

ElisabethKloren commented 2 months ago

@gerritversteegh is er iets niet meegekomen in de publicatie, of waar gaat dit mis?

gerritversteegh commented 2 months ago

@ElisabethKloren De data zit inderdaad wel in de beheeromgeving, maar tijdens het publiceren zijn voor de bovengenoemde objecten de ' color V' relaties weggevallen. Dit komt omdat de stylesheet de waarde in het informatieveld probeert om te zetten naar een lijnkleur. De waarden zijn bij de bovengenoemde objecten echter afwijkend ingevuld. Zie screenshot. image Er wordt een waarde verwacht die onder de Lijnkleuren is gemodelleerd. De waarde in dit voorbeeld 0,153,0 is echter niet vastgelegd als Lijnkleur. Hierdoor is deze relatie tijdens het publiceren achterwege gelaten en kan deze informatie niet opgehaald worden.

Voor de queries is het zo dat die ingestoken zijn met het idee dat ALS er een bepaalde status is, dan moeten ALLE informatievelden mbt deze status ingevuld zijn. Omdat 'color V' dus ontbreekt, zal de query de andere waarden ook niet meenemen in de output. Dit komt omdat al deze attributen in dezelfde OPTIONAL staan (zie screenshot). Door elk attribuut in een aparte OPTIONAL te zetten, zullen de andere attributen wel in de output te zien zijn (maar color V nog altijd niet omdat die niet in de publicatie zit). image

ElisabethKloren commented 2 months ago

dank, dit is dus een fout vanuit de oude sql database die ik zelf kan en moet herstellen

ElisabethKloren commented 2 months ago

@MvanderHulst welke kleurwaarden horen hier ingevuld te zijn?

LAAGNAAM B color V N color V V color V T color V ID
*-**-WH-GEUL-G 0,0,255 0,0,255 0,0,255 0,0,255 2663
*-**-WH-GEUL_HOOGWATERGEUL-G 0,127,255 0,127,255 0,127,255 0,127,255 2664
*-**-WH-GEUL_NEVENGEUL-G 0,255,255 0,255,255 0,255,255 0,255,255 2665
*-**-WH-GEUL_STROOMGEUL-G 255,191,0 255,191,0 255,191,0 255,191,0 2666
*-**-WH-GEUL_VAARGEUL-G 255,127,0 255,127,0 255,127,0 255,127,0 2667
*-**-WH-GROENE RIVIER-G 0,255,191 0,255,191 0,255,191 0,255,191 2689
*-**-WH-OVERLOOPGEBIED-G 255,0,0 255,0,0 255,0,0 255,0,0 2673
*-**-WH-WINTERBERGING-G 0,153,0 0,153,0 0,153,0 0,153,0 2683
*-**-WH-ZOMERBED-G 0,255,0 0,255,0 0,255,0 0,255,0 2688
MvanderHulst commented 2 months ago

@ElisabethKloren Als ik in mijn tooling kijk, zie ik de bovenstaande kleuren gewoon terug komen. De bovenstaande tabel klopt dus gewoon.

Dit zijn de 'RGB' true-colors. Deze moeten ook door de nieuwe database ondersteund worden.

ElisabethKloren commented 2 months ago

In de sql database is een lijst met lijnkleuren opgenomen met nummers, er moeten dus nummers bij om deze kleuren goed te verwerken? of is dit een soort "special", waarom hebben we die lijst met lijnkleuren en gebruiken we die niet voor deze objecten?

Daar staan ook RGB codes in, beetje een omweg:

DROP TABLE IF EXISTS lijnkleuren;

CREATE TABLE lijnkleuren ( id int(6) NOT NULL AUTO_INCREMENT, fase char(2) NOT NULL DEFAULT '', nummer int(4) NOT NULL DEFAULT 0, omschrijving varchar(12) NOT NULL DEFAULT '', hex varchar(9) NOT NULL DEFAULT '', R int(3) NOT NULL DEFAULT 0, G int(3) NOT NULL DEFAULT 0, B int(3) NOT NULL DEFAULT 0, opt varchar(4) NOT NULL, PRIMARY KEY (id) ) ENGINE=MyISAM AUTO_INCREMENT=356 DEFAULT CHARSET=latin1;

INSERT INTO lijnkleuren VALUES('100','0','0','','#000000','0','0','0',''); INSERT INTO lijnkleuren VALUES('101','0','1','','#FF0000','255','0','0',''); INSERT INTO lijnkleuren VALUES('102','0','2','','#FFFF00','255','255','0',''); INSERT INTO lijnkleuren VALUES('103','0','3','','#00FF00','0','255','0',''); INSERT INTO lijnkleuren VALUES('104','0','4','','#00FFFF','0','255','255',''); INSERT INTO lijnkleuren VALUES('105','0','5','','#0000FF','0','0','255',''); INSERT INTO lijnkleuren VALUES('106','0','6','','#FF00FF','255','0','255',''); INSERT INTO lijnkleuren VALUES('107','0','7','','#FFFFFF','255','255','255','AZG');

ElisabethKloren commented 2 months ago

@gerritversteegh het is qua informatiemodel nog gekker dan we al dachten: er blijkt hier een truuk te zijn toegepast: er worden of kleurnummers uit de lijnkleurentabel gebruikt, de software weet dat ze die kleuren bij het printen van een tekening zwart moeten maken; of er worden rgb kleuren gebruikt, de software print die in kleur af. In de sql komen dus twee manieren voor van kleur aanduiden in een en dezelfde kolom. Het publicatiescript van de ld versie moet hier rekening mee houden en bij het gebruik van een rgb code (dus "getal,getal,getal") deze publiceren, ook al staat die niet in de lijst met kleurcodes. (Auw > lange termijn is de vraag wat we hiermee doen)

MvanderHulst commented 2 months ago

Ter onderbouwing: NLCS levert 3 pentabellen, zie ook issue #274 De pentabel geeft aan hoe een kleur wordt vertaald van model naar papier.

gerritversteegh commented 2 months ago

Bedankt voor de toelichting @ElisabethKloren Dit probleem is verholpen met de nieuwe stylesheet. De stylesheet zoekt nu naar een gemodelleerd Lijnkleur, maar als die niet gevonden kan worden geeft die de waarde zoals die in het informatieveld beschreven staat. Ik ben momenteel een nieuwe publicatie aan het maken, ik stuur je hierover nog een mail.