DEFLNG W
GOSUB Bienvenida
GOSUB ArchivoEscrito
GOSUB Principal
GOSUB CierraArchivo
END
ArchivoEscrito:
CLS
OKGrabacion$ = "no"
WHILE OKGrabacion$ <> "s¡"
INPUT "Complete DOS name of the file to store "; ArchivoEscrito$
OPEN "R", #2, ArchivoEscrito$, 1
FIELD #2, 1 AS e$
IF LOF(2) <> 0 THEN
BEEP: PRINT : PRINT "A file with that name already exists. Erase (E), try again ?"
GOSUB EsperaTecla
IF Tecla$ = "e" OR Tecla$ = "E" THEN
CLOSE #2
KILL ArchivoEscrito$
OPEN "R", #2, ArchivoEscrito$, 1
FIELD #2, 1 AS e$
OKGrabacion$ = "s¡"
ELSE
CLOSE #2
END IF
ELSE
OKGrabacion$ = "s¡"
END IF
WEND
RETURN
Bienvenida:
CLS : COLOR 7, 0
PRINT " This program builds a chalet in the CBB format."
PRINT
PRINT " Copyright Jean-Luc Ancey, January 21st, 1997.": PRINT
PRINT " Strike a key when ready."
GOSUB EsperaTecla
RETURN
CierraArchivo:
wByteEscrito = wByteEscrito + 1
LSET e$ = CHR$(26)
PUT #2, wByteEscrito
CLOSE
RETURN
Columna:
Color$ = "0,0.8,0.4": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
x = Alfa: y = 0
FOR Bloque = 1 TO ParamRiccardoSimeon
z = Tango + (Bloque - 1) * (Riccardo + Simeon)
Posicion$ = "se"
TamaX = Patrick: TamaY = Patrick: TamaZ = Riccardo
Exclusion$ = ""
IF Bloque = 1 THEN
Exclusion$ = "inf"
END IF
IF Bloque = ParamRiccardoSimeon THEN
Exclusion$ = "sup"
END IF
GOSUB GrabaUnCubo
NEXT Bloque
LineaEscrita$ = "": GOSUB GrabaUnaLinea
Color$ = "180,0.1,0.95": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
x = Alfa - (Patrick - Quiroga) / 2: y = (Patrick - Quiroga) / 2
FOR Bloque = 1 TO ParamRiccardoSimeon - 1
z = Tango + (Bloque - 1) * (Riccardo + Simeon) + Riccardo
Posicion$ = "se"
TamaX = Quiroga: TamaY = Quiroga: TamaZ = Simeon
Exclusion$ = "inf,sup"
GOSUB GrabaUnCubo
NEXT Bloque
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
Escalones:
Color$ = "240,0,0.4": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
z = 0: TamaZ = Tango
x = Charlie: y = 0
Posicion$ = "no"
TamaX = Delta - Patrick: TamaY = Uniform
Exclusion$ = "n"
GOSUB GrabaUnCubo
x = Alfa: y = Patrick
Posicion$ = "so"
TamaX = Uniform: TamaY = Foxtrot - Patrick
Exclusion$ = "o"
GOSUB GrabaUnCubo
x = Alfa: y = Foxtrot + Ernesto + Quebec / 2
Posicion$ = "o"
TamaX = Uniform: TamaY = Sierra
Exclusion$ = "o"
GOSUB GrabaUnCubo
x = Gilberto + Quebec / 2: y = Bravo
Posicion$ = "s"
TamaX = Sierra: TamaY = Uniform
Exclusion$ = "s"
GOSUB GrabaUnCubo
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
EsperaTecla:
Tecla$ = ""
WHILE Tecla$ = ""
Tecla$ = INKEY$
WEND
RETURN
GrabaColor:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = Color$: GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
GrabaUnCubo:
LineaEscrita$ = "Posi "
Valor = x: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = y: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = z: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + "," + Posicion$ + " Tama "
Valor = TamaX: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = TamaY: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = TamaZ: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$
IF Exclusion$ <> "" THEN
LineaEscrita$ = LineaEscrita$ + " Excl " + Exclusion$
END IF
Exclusion$ = ""
GOSUB GrabaUnaLinea
RETURN
GrabaUnaLinea:
PRINT LineaEscrita$
LineaEscrita$ = LineaEscrita$ + CHR$(13) + CHR$(10)
FOR a = 1 TO LEN(LineaEscrita$)
wByteEscrito = wByteEscrito + 1
LSET e$ = MID$(LineaEscrita$, a, 1)
PUT #2, wByteEscrito
NEXT a
LineaEscrita$ = ""
RETURN
GrabaUnPunto:
Valor = NumPunto: GOSUB TradValorCadena
LineaEscrita$ = Cadena$ + ","
Valor = x: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = y: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = z: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$
GOSUB GrabaUnaLinea
RETURN
LeeUnaLinea:
LineaLeida$ = ""
FinDeLinea$ = "no"
WHILE FinDeLinea$ = "no" AND wByteLeido < LOF(1)
wByteLeido = wByteLeido + 1
GET #1, wByteLeido
IF l$ <> CHR$(13) THEN
IF l$ <> CHR$(10) THEN LineaLeida$ = LineaLeida$ + l$
ELSE
FinDeLinea$ = "s¡"
END IF
WEND
RETURN
MuroCharlie:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi 0,0,"
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Charlie: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf"
GOSUB GrabaUnaLinea
Alberto = (Charlie - 2 * Romeo) / 3
LineaEscrita$ = "Posi 0,0,"
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Alberto: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alberto + Romeo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",0,"
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Alberto: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 2 * (Alberto + Romeo): GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",0,"
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Alberto: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi 0,0,"
Valor = Tango + Lima + Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Charlie: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Papa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MuroDelta:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Charlie: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Foxtrot: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Bernardo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf,o"
GOSUB GrabaUnaLinea
x = Charlie + Bernardo + Quebec
y = Foxtrot
z = Tango
Posicion$ = "so"
TamaX = Constantino
TamaY = ProfundoPared
TamaZ = Lima
Exclusion$ = "inf"
GOSUB GrabaUnCubo
Constantino2 = (Constantino - Romeo) / 2
x = Charlie + Bernardo + Quebec
y = Foxtrot
z = Tango + Lima
Posicion$ = "so"
TamaX = Constantino2
TamaY = ProfundoPared
TamaZ = Oscar
Exclusion$ = "inf,sup"
GOSUB GrabaUnCubo
x = Alfa
y = Foxtrot
z = Tango + Lima
Posicion$ = "se"
TamaX = Constantino2
TamaY = ProfundoPared
TamaZ = Oscar
Exclusion$ = "inf,sup"
GOSUB GrabaUnCubo
LineaEscrita$ = "Posi "
Valor = Charlie: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Foxtrot: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Delta: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Kilo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,o"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MuroEste:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Foxtrot + ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",se Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Ernesto - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl s,sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",ne Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Daniel: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Foxtrot + ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",se Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Echo - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Kilo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl s,sup"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MuroIndia:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
Valor = Charlie: GOSUB TradValorCadena
LineaEscrita$ = "Posi " + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",se Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = India - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Yankee: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,s,sup"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MuroNorte:
Indira = (Delta - Romeo) / 2
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",ne Tama "
Valor = Delta - ProfundoPared + Hugo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,e"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",ne Tama "
Valor = Indira - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf,e"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa - Indira - Romeo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",ne Tama "
Valor = Indira + Hugo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = Gilberto: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,inf"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Juliet: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = Alfa - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Kilo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,e"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MuroOeste:
Jorge = (Golf - Romeo) / 2
Komadina = (India - Romeo) / 2
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - 2 * ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,n,s"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Jorge - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,sup,n"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - Jorge - Romeo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Jorge + Hotel + Komadina: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,sup"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Komadina - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl inf,sup,s"
GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = 0: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango + Lima + Oscar: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",no Tama "
Valor = ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo - 2 * ProfundoPared: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Papa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,n,s"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
MurosSur:
Color$ = "60,0.75,0.85": GOSUB GrabaColor
GOSUB MuroCharlie
GOSUB MuroIndia
GOSUB MuroDelta
RETURN
Principal:
CLS
wByteEscrito = 0: wByteLeido = 0
GOSUB Variables
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi "
Valor = Alfa / -2: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo / -2: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango * 5 / -6: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$
GOSUB GrabaUnaLinea
LineaEscrita$ = "Rotz 180": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
GOSUB Suelo
GOSUB Escalones
GOSUB MurosSur
GOSUB MuroEste
GOSUB MuroNorte
GOSUB MuroOeste
GOSUB Tope
GOSUB Rebordes
GOSUB Columna
GOSUB Techo
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Fin": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
Rebordes:
Color$ = "180,0.8,0.8": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
z = Tango + Lima - Reborde: TamaZ = Reborde
x = Alberto + Romeo / 2: y = 0
Posicion$ = "n"
TamaX = Romeo + 2 * Reborde: TamaY = Reborde
Exclusion$ = "n"
GOSUB GrabaUnCubo
x = 2 * Alberto + Romeo * 3 / 2: y = 0
Posicion$ = "n"
TamaX = Romeo + 2 * Reborde: TamaY = Reborde
Exclusion$ = "n"
GOSUB GrabaUnCubo
x = Charlie + Bernardo + Quebec + Constantino2 + Romeo / 2
y = Foxtrot
Posicion$ = "n"
TamaX = Romeo + 2 * Reborde: TamaY = Reborde
Exclusion$ = "n"
GOSUB GrabaUnCubo
x = Alfa - Indira - Romeo / 2: y = Bravo
Posicion$ = "s"
TamaX = Romeo + 2 * Reborde: TamaY = Reborde
Exclusion$ = "s"
GOSUB GrabaUnCubo
x = 0: y = India + Hotel + Jorge + Romeo / 2
Posicion$ = "e"
TamaX = Reborde: TamaY = Romeo + 2 * Reborde
Exclusion$ = "e"
GOSUB GrabaUnCubo
x = 0: y = Komadina + Romeo / 2
Posicion$ = "e"
TamaX = Reborde: TamaY = Romeo + 2 * Reborde
Exclusion$ = "e"
GOSUB GrabaUnCubo
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
Suelo:
Color$ = "240,0,0.4": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi 0,0,0,so Tama "
Valor = Alfa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
Techo:
Color$ = "60,0.75,0.85": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
NumPunto = 1
x = 0: y = 0: z = Tango + Yankee: GOSUB GrabaUnPunto
y1 = y: z1 = z
NumPunto = 2
x = 0: y = Whisky: z = Tango + Yankee + XRays: GOSUB GrabaUnPunto
y2 = y: z2 = z
NumPunto = 3
x = 0: y = Bravo: z = Tango + Yankee: GOSUB GrabaUnPunto
y3 = y: z3 = z
NumPunto = 4
x = Alfa: y = 0: z = Tango + Yankee: GOSUB GrabaUnPunto
NumPunto = 5
x = Alfa: y = Whisky: z = Tango + Yankee + XRays: GOSUB GrabaUnPunto
NumPunto = 6
x = Alfa: y = Bravo: z = Tango + Yankee: GOSUB GrabaUnPunto
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "1,2,3": GOSUB GrabaUnaLinea
LineaEscrita$ = "4,5,6": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
Nicolas = ATN(XRays / (y2 - y1))
Orlando = ATN(XRays / (y3 - y2))
Color$ = "20,0.4,0.5": GOSUB GrabaColor
LineaEscrita$ = "": GOSUB GrabaUnaLinea
NumPunto = 1
x = 0 - Leon
DeltaY = COS(Nicolas) * Leon: DeltaZ = SIN(Nicolas) * Leon
y = 0 - DeltaY
z = Tango + Yankee - DeltaZ
GOSUB GrabaUnPunto
x7 = x: y7 = y: z7 = z
NumPunto = 2
x = 0 - Leon: y = Whisky: z = Tango + Yankee + XRays
GOSUB GrabaUnPunto
x8 = x: y8 = y: z8 = z
NumPunto = 3
x = 0 - Leon
DeltaY = COS(Orlando) * Leon: DeltaZ = SIN(Orlando) * Leon
y = Bravo + DeltaY
z = Tango + Yankee - DeltaZ
GOSUB GrabaUnPunto
x9 = x: y9 = y: z9 = z
NumPunto = 4
x = x7 + Alfa + 2 * Leon: y = y7: z = z7
GOSUB GrabaUnPunto
x10 = x: y10 = y: z10 = z
NumPunto = 5
x = x8 + Alfa + 2 * Leon: y = y8: z = z8
GOSUB GrabaUnPunto
x11 = x: y11 = y: z11 = z
NumPunto = 6
x = x9 + Alfa + 2 * Leon: y = y9: z = z9
GOSUB GrabaUnPunto
x12 = x: y12 = y: z12 = z
NumPunto = 7
x = x7: y = y7: z = z7 + Miguel
GOSUB GrabaUnPunto
NumPunto = 8
x = x8: y = y8: z = z8 + Miguel
GOSUB GrabaUnPunto
NumPunto = 9
x = x9: y = y9: z = z9 + Miguel
GOSUB GrabaUnPunto
NumPunto = 10
x = x10: y = y10: z = z10 + Miguel
GOSUB GrabaUnPunto
NumPunto = 11
x = x11: y = y11: z = z11 + Miguel
GOSUB GrabaUnPunto
NumPunto = 12
x = x12: y = y12: z = z12 + Miguel
GOSUB GrabaUnPunto
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "1,4,5,2": GOSUB GrabaUnaLinea
LineaEscrita$ = "6,3,2,5": GOSUB GrabaUnaLinea
LineaEscrita$ = "2,1,7,8": GOSUB GrabaUnaLinea
LineaEscrita$ = "1,4,10,7": GOSUB GrabaUnaLinea
LineaEscrita$ = "4,5,11,10": GOSUB GrabaUnaLinea
LineaEscrita$ = "5,6,12,11": GOSUB GrabaUnaLinea
LineaEscrita$ = "6,3,9,12": GOSUB GrabaUnaLinea
LineaEscrita$ = "3,2,8,9": GOSUB GrabaUnaLinea
LineaEscrita$ = "7,10,11,8": GOSUB GrabaUnaLinea
LineaEscrita$ = "12,9,8,11": GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
Tope:
LineaEscrita$ = "": GOSUB GrabaUnaLinea
LineaEscrita$ = "Posi 0,0,"
Valor = Tango + Yankee: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ",so Tama "
Valor = Alfa: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Bravo: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + ","
Valor = Tango: GOSUB TradValorCadena
LineaEscrita$ = LineaEscrita$ + Cadena$ + " Excl sup,n,s,e,o"
GOSUB GrabaUnaLinea
LineaEscrita$ = "": GOSUB GrabaUnaLinea
RETURN
TradValorCadena:
Cadena$ = STR$(Valor)
IF LEFT$(Cadena$, 1) = " " THEN
Cadena$ = MID$(Cadena$, 2, LEN(Cadena$) - 1)
END IF
IF LEFT$(Cadena$, 2) = "-." THEN
Cadena$ = "-0" + RIGHT$(Cadena$, LEN(Cadena$) - 1)
END IF
IF LEFT$(Cadena$, 1) = "." THEN
Cadena$ = "0" + Cadena$
END IF
RETURN
Variables:
phi = (1 + SQR(5)) / 2
'En metros
Alfa = 8
Bravo = 6.67
Quebec = .82
Romeo = 1.2
Tango = .15
Uniform = .7
Yankee = 2
Leon = .3
Miguel = .1
Patrick = .35
ProfundoPared = .25
ProfundoTabique = .15
Reborde = .08
'En unidades
ParamCharlie = 7
ParamDelta = 5
ParamEcho = 7
ParamFoxTrot = 3
ParamIndia = 4.5
ParamHotel = 1.5
ParamGolf = 4
ParamLima = .83
ParamOscar = 1.54
ParamPapa = .28
ParamSierra = 1.5
ParamVictor = 1
ParamWhisky = phi
ParamXRays = .4
ParamBernardo = .5
ParamConstantino = 2.9
ParamDaniel = 2.5
ParamErnesto = 3.5
ParamHugo = 2
ParamGilberto = 3
ParamQuiroga = .8
ParamRiccardo = 1
ParamSimeon = 1 / 5
ParamRiccardoSimeon = 15
'Calculos
Charlie = Alfa * ParamCharlie / (ParamCharlie + ParamDelta)
Delta = Alfa * ParamDelta / (ParamCharlie + ParamDelta)
Echo = Bravo * ParamEcho / (ParamEcho + ParamFoxTrot)
Foxtrot = Bravo * ParamFoxTrot / (ParamEcho + ParamFoxTrot)
Golf = Bravo * ParamGolf / (ParamIndia + ParamHotel + ParamGolf)
Hotel = Bravo * ParamHotel / (ParamIndia + ParamHotel + ParamGolf)
India = Bravo * ParamIndia / (ParamIndia + ParamHotel + ParamGolf)
Lima = Yankee * ParamLima / (ParamLima + ParamOscar + ParamPapa)
Oscar = Yankee * ParamOscar / (ParamLima + ParamOscar + ParamPapa)
Juliet = Oscar + Lima
Papa = Yankee * ParamPapa / (ParamLima + ParamOscar + ParamPapa)
Kilo = Papa
Sierra = Quebec * ParamSierra
Victor = Bravo * ParamVictor / (ParamVictor + ParamWhisky)
Whisky = Bravo * ParamWhisky / (ParamVictor + ParamWhisky)
XRays = Yankee * ParamXRays
Bernardo = (Delta - Quebec) * ParamBernardo / (ParamBernardo + ParamConstantino)
Constantino = (Delta - Quebec) * ParamConstantino / (ParamBernardo + ParamConstantino)
Daniel = (Echo - Quebec) * ParamDaniel / (ParamDaniel + ParamErnesto)
Ernesto = (Echo - Quebec) * ParamErnesto / (ParamDaniel + ParamErnesto)
Gilberto = (Charlie - Quebec) * ParamGilberto / (ParamGilberto + ParamHugo)
Hugo = (Charlie - Quebec) * ParamHugo / (ParamGilberto + ParamHugo)
Quiroga = Patrick * ParamQuiroga
Riccardo = Yankee * ParamRiccardo / (ParamRiccardoSimeon * ParamRiccardo + (ParamRiccardoSimeon - 1) * ParamSimeon)
Simeon = Yankee * ParamSimeon / (ParamRiccardoSimeon * ParamRiccardo + (ParamRiccardoSimeon - 1) * ParamSimeon)
RETURN