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