|
|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 6240 (0x1860)
Types: TextFile
Notes: Mikados_K
Names: »NBTMAINI.K«
└─⟦a3d38fea3⟧ Bits:30008985 PRODUKTION NBT.
└─⟦this⟧ »NBTMAINI.K«
PROCEDURE MAINTAIN;
BEGIN
POS:=1;KGUMMI:=NULLER;
REPEAT
BEGIN
OLINIE.ORDRENR:=ORDRENUM;OLINIE.POSITION:=POS;
GETREC(OLIZ.H,OLIF,OLINIE.A);
IF (IER<>0) AND (IER<>-6) THEN IOF (IER,OLIZ.H.FILENAME);
IF IER=0 THEN
BEGIN
IF OLINIE.VINDUENR>0 THEN
CHECKBH (OLINIE.BREDDE);CHECKBH(OLINIE.HØJDE);
KOMBI.NR:=OLINIE.VINDUENR DIV 1000;
GETREC(KOMZ.H,KOMF,KOMBI.A);
IF IER<>0 THEN IOF(IER,KOMZ.H.FILENAME);
VINDUE.NR:=OLINIE.VINDUENR MOD 1000;
GETREC(VINZ.H,VINF,VINDUE.A);
IF IER<>0 THEN IOF(IER,VINZ.H.FILENAME);
KPROFIL.NR:=KOMBI.KARMPROFIL;
GETREC(PROZ.H,PROF,KPROFIL.A);
IF IER<>0 THEN IOF(IER,PROZ.H.FILENAME);
KPPROFIL.NR:=KOMBI.POST1;
GETREC(PROZ.H,PROF,KPPROFIL.A);
IF IER<>0 THEN IOF(IER,PROZ.H.FILENAME);
BESTEMFARVE;
FOR I1:=1 TO 16 DO
BEGIN
RAMME.NR:=VINDUE.RAMME(I1);
IF RAMME.NR>19 THEN
BEGIN
GETREC(RAMZ.H,RAMF,RAMME.A);
IF IER<>0 THEN IOF(IER,RAMZ.H.FILENAME);
DK:=KPROFIL.DIM(1); DKP:=KPPROFIL.DIM(1);
IF RAMME.TYP=3 THEN DK:=KPROFIL.DIM(2);DKP:=KPPROFIL.DIM(2);
Z:=(I1-1) MOD 4+1;I:=1;
BEREGN(I1,BREDDE,I,Z,OLINIE.BLAMBRED,OLINIE.BREDDE,VINDUE.BREDDE,
VINDUE.RAMME);
Z:=(I1+3) DIV 4;I:=4;
BEREGN(I1,HØJDE,I,Z,OLINIE.BLAMHØJD,OLINIE.HØJDE,VINDUE.HØJDE,
VINDUE.RAMME);
BESTEMGLAS;
IF RAMME.TYP=3 THEN
BEGIN
TILBEHØR.NR:=KOMBI.KARMPROFIL;TILBEHØR.GLASKODE:=GLASKODE;
GETREC(TILZ.H,TILF,TILBEHØR.A);
IF IER<>0 THEN IOF(IER,TILZ.H.FILENAME);
FAKODE:=FAKODE1;GLASTYPE:=3;KGUMMI:=TILBEHØR.GLASGUM;FANR:=FANR1;
END
ELSE
BEGIN
TILBEHØR.NR:=KOMBI.RAMMEPROFIL;TILBEHØR.GLASKODE:=GLASKODE;
GETREC(TILZ.H,TILF,TILBEHØR.A);
IF IER<>0 THEN IOF(IER,TILZ.H.FILENAME);
GENER2(6,KPROFIL.TÆTGUM,BREDDE,HØJDE); (*KARMTÆTNING*)
RPROFIL.NR:=KOMBI.RAMMEPROFIL;
GETREC(PROZ.H,PROF,RPROFIL.A);
IF IER<>0 THEN IOF(IER,PROZ.H.FILENAME);
GENER2(7,RPROFIL.TÆTGUM,BREDDE,HØJDE); (*RAMMETÆTNING*)
FAKODE:=FAKODE2;GLASTYPE:=2;FANR:=FANR2;
BESTEMFORSTÆRKNING;
MÅL:=BREDDE;STÆRKR1:=RAMME.VREGEL(REGELNR);
STÆRKR2:=RAMME.LREGEL(REGELNR);STÆRKR:=STÆRKR1;
FOR PLACERING:=1 TO 4 DO
BEGIN
TYPE1:=NULLER;TYPE2:=0;LÆNGDE:=0;
IF PLACERING=3 THEN
BEGIN
MÅL:=HØJDE;
STÆRKR:=STÆRKR2;
END;
IF RAMME.FORSTÆRK(PLACERING)=1 THEN
BEGIN
STÆRKNING;
TYPE1:=RPROFIL.FORSTÆR(TYPER);
GENER2(4,TYPE1,0,LÆNGDE); (*FORSTÆRKNING*)
END;
IF RAMME.BESLAG(PLACERING)>0 THEN
BEGIN
BESLAGNING(RAMME.BESLAG(PLACERING));
TYPE3:=NULLER;TYPE3(2):=TYPE2;
GENER2(5,TYPE3,0,0) (*BESLAG*)
END;
GENER1(0,KOMBI.RAMMEPROFIL,LÆNGDE,MÅL,0,RPROFIL.TÆTGUM,
TILBEHØR.GLASGUM) (*RAMMEPROFIL*)
END;
BREDDE:=BREDDE-2*RPROFIL.DIM(1);HØJDE:=HØJDE-2*RPROFIL.DIM(1);
END;
PLACERING:=20;
GENER1(0,TILBEHØR.GLASLIST,BREDDE,HØJDE,0,TILBEHØR.GLASLGUM,NULLER)
; (*GLASLISTE*)
GENER2(9,TILBEHØR.GLASGUM,BREDDE,HØJDE); (*GLASGUMMI*)
GPROFIL.NR:=TILBEHØR.GLASLIST;
GETREC(PROZ.H,PROF,GPROFIL.A);
IF IER<>0 THEN IOF(IER,PROZ.H.FILENAME);
BREDDE:=BREDDE-2*GPROFIL.DIM(1);HØJDE:=HØJDE-2*GPROFIL.DIM(1);
TYPE1(1):=0;TYPE1(2):=GLASNR;
GENER2(8,TILBEHØR.GLASGUM,BREDDE,HØJDE); (*GLASLISTEGUMMI*)
GENER2(GLASTYPE,TYPE1,BREDDE,HØJDE);
END;
END;
KARM.NR:=VINDUE.KARMNR;
GETREC(KARZ.H,KARF,KARM.A);
IF IER<>0 THEN IOF(IER,KARZ.H.FILENAME);
I1:=0;FANR:=FANR1;FAKODE:=FAKODE1;
BESTEMFORSTÆRKNING;
MÅL:=OLINIE.BLAMBRED;STÆRKR1:=KARM.VREGEL(REGELNR);
STÆRKR2:=KARM.LREGEL(REGELNR);STÆRKR:=STÆRKR1;
FOR PLACERING:=1 TO 4 DO
BEGIN
TYPE1:=NULLER;TYPE2:=0;LÆNGDE:=0;
IF PLACERING=3 THEN
BEGIN
MÅL:=OLINIE.BLAMHØJD;
STÆRKR:=STÆRKR2;
END;
IF KARM.FORSTÆRK(PLACERING)=1 THEN
BEGIN
STÆRKNING;
TYPE1:=KPROFIL.FORSTÆR(TYPER);
GENER2(4,TYPE1,0,LÆNGDE); (*FORSTÆRKNING*)
END;
IF KARM.BESLAG(PLACERING)>0 THEN
BEGIN
BESLAGNING;
TYPE3:=NULLER;TYPE3(2):=TYPE2;
GENER2(5,TYPE3,0,0); (*BESLAG*)
END;
GENER1(0,KOMBI.KARMPROFIL,LÆNGDE,MÅL,0,KPROFIL.TÆTGUM,KGUMMI);
(*KARMPROFIL*)
END;
BESTEMFORSTÆRKNING;
FOR PLACERING:=5 TO 19 DO
BEGIN
TYPE1:=NULLER;TYPE2:=0;
POST.KARM:=KARM.NR;POST.NR:=PLACERING-4;
GETREC(POSZ.H,POSF,POST.A);
IF (IER<>0) AND (IER<>-6) THEN IOF(IER,POSZ.H.FILENAME);
IF IER=0 THEN
BEGIN
IF POST.VANDLOD=0 THEN
POSTBEREGN(OLINIE.BREDDE,OLINIE.BLAMBRED)
ELSE
POSTBEREGN(OLINIE.HØJDE,OLINIE.BLAMHØJD);
MÅL:=LÆNGDE;STÆRKR:=POST.FORSTÆRK(REGELNR);
STÆRKNING;
TYPE1:=KPROFIL.FORSTÆR(TYPER);
GENER2(4,TYPE1,0,LÆNGDE) (*FORSTÆRKNING*)
GENER1(0,KOMBI.POST1,LÆNGDE,MÅL,O,NULLER,NULLER);
(*POSTPROFIL*)
END;
END;
POS:=POS+1;
END;
END;
UNTIL (IER=-6) OR (POS=100);
END;
END;