Panoramic
PANORAMIC o Panoramic BASIC es un lenguaje BASIC para Windows lanzado en 2007 que permite trabajar con los elementos habituales del entorno Windows (Button, Edit, Combo, Picture, Scene3D, Movie, Track_bar, Scroll_bar, ...), con sprites (a través del objeto SCENE2D) y con objetos 3D (dentro del objeto SCENE3D).

Descripción 
PANORAMIC se distribuye como freeware y dispone de un editor cuya documentación se encuentra en inglés y francés. No requiere de DLLs externas ni librerías accesorias para su funcionamiento.

Su sintaxis parte de los clásicos comandos del lenguaje BASIC.

Ejemplos

Creación de un botón 
 Para crear un botón: BUTTON 1
 Para darle un ancho de 100 píxeles: WIDTH 1, 100
 Para mostrar un texto en el botón: CAPTION 1, "Texto del botón"

Gestión de 3D 
Para crear un entorno 3D : SCENE3D 1
Para poner un vaso de agua en el mismo: 3d_TEAPOT 1 (todos los objetos 3D poseen su propia numeración identificativa)
Para rotar 30 grados la escena sobre su eje Z : 3D_Z_ROTATE 1, 30

Rotación de objetos en 3D
El siguiente código crea una escena en 3D con rotación del plano:

REM Ejemplo de Panoramic BASIC
REM ##########################

REM Inicio del MAIN_PROGRAM
REM #######################

     REM Definición de etiquetas y variables
     REM ###################################

     DIM x, y, z, t
     LABEL On_Click_Button_1
     LABEL On_Click_Button_2
     LABEL On_Click_Button_3
     
     REM Creación del Form_0
     REM ##################

     LEFT 0, 223
     TOP 0, 200
     WIDTH 0, 425
     HEIGHT 0, 525
     CAPTION 0, "Prueba"
 
     REM Creación del Button_1
     REM ####################

     BUTTON 1
          LEFT 1, 25
          TOP 1, 375
          WIDTH 1, 100
          HEIGHT 1, 100
          CAPTION 1, "Crear"
          ON_CLICK 1, On_Click_Button_1

     REM Creación del Button_2
     REM ####################

     BUTTON 2
          LEFT 2, 125
          TOP 2, 375
          WIDTH 2, 100
          HEIGHT 2, 100
          CAPTION 2, "Mover"
          ON_CLICK 2, On_Click_Button_2

     REM Creación del Button_3
     REM ####################

     BUTTON 3
          LEFT 3, 225
          TOP 3, 375
          WIDTH 3, 100
          HEIGHT 3, 100
          CAPTION 3, "Cerrar"
          ON_CLICK 3, On_Click_Button_3

     REM Creación del marco Scene3D_4
     REM ############################

          SCENE3D 4
          LEFT 4, 25
          TOP 4, 25
          WIDTH 4, 350
          HEIGHT 4, 350
          COLOR 4, 0, 0, 0
          
REM Fin del MAIN_PROGRAM
REM ####################

END

On_Click_Button_1:
     REM Creación de los objetos
     REM #######################
     
     FOR x = 5 TO 31
          3D_CUBE x, 0.35
     NEXT x

     REM Posición de los objetos
     REM #######################
     
     t = 5
     FOR x = -1 TO 1
          FOR y = -1 TO 1
               FOR z = -1 TO 1
                    3D_X_POSITION t, x
                    3D_Y_POSITION t, y
                    3D_Z_POSITION t, z
                    t = t + 1
               NEXT z
          NEXT y
     NEXT x

     REM Colorea los objetos
     REM ###################
     
     FOR x = 5 TO 31
          3D_COLOR x, 210, 10, 10
     NEXT x

     REM Objeto azul en el centro
     REM ########################
     
     3D_COLOR 18, 10, 10, 200

     REM Objetos amarillos en las esquinas
     REM #################################
     
     3D_COLOR 5, 200, 200, 10
     3D_COLOR 7, 200, 200, 10
     3D_COLOR 11, 200, 200, 10
     3D_COLOR 13, 200, 200, 10
     3D_COLOR 23, 200, 200, 10
     3D_COLOR 25, 200, 200, 10
     3D_COLOR 29, 200, 200, 10
     3D_COLOR 31, 200, 200, 10

     REM Coordenadas de referencia
     REM #########################
     
     POINT_X_POSITION 0
     POINT_Y_POSITION 0
     POINT_Z_POSITION 0
RETURN

On_Click_Button_2:
     REM Rotación de la cámara
     REM #####################
     
     FOR t = 0 TO 100
          x = 5 * SIN(t / 6.2432)
          z = 5 * COS(t / 6.2432)
          y = 2 * SIN(t / 6.2432)
          CAM_X_POSITION x
          CAM_Y_POSITION y
          CAM_Z_POSITION z
          LIGHT_X_POSITION 3 * x
          LIGHT_Z_POSITION 3 * z
          WAIT 20
     NEXT t

     FOR t = 0 TO 20
          z = z + 0.5
          CAM_Z_POSITION z
          LIGHT_Z_POSITION 3 * z
          WAIT 20
     NEXT t
RETURN

On_Click_Button_3:
     REM Fin del programa
     REM ################
     
     TERMINATE
RETURN

Versiones 
La última versión (0.9.20) fue lanzada el 29 de noviembre de 2010, habiendo sido eliminadas las limitaciones en cuanto al número de objetos creables a partir de la versión 0.9.13 (del 15 de agosto de 2009).

Enlaces externos
Panoramic BASIC Language

Lenguaje de programación BASIC
PANORAMIC o Panoramic BASIC es un lenguaje BASIC para Windows lanzado enque permite trabajar con los elementos habituales del entorno Windows ( Button , Edit , Combo , Picture , Scene3D , Movie , Track_bar , Scroll_bar , \ ... ) , con sprites ( a través del objeto SCENE2D ) y con objetos ( dentro del objeto SCENE3D ) . Descripción PANORAMIC se distribuye como freeware y dispone de un editor cuya documentación se encuentra en inglés y francés . No requiere de DLLs externas ni librerías accesorias para su funcionamiento . Su sintaxis parte de los clásicos comandos del lenguaje BASIC . Ejemplos Creación de un botón Para crear un botón : BUTTON 1 Para dar le un ancho depíxeles : WIDTH Para mostrar un texto en el botón : CAPTION " Texto del botón " Gestión de Para crear un entorno \ : SCENE3D 1 Para poner un vaso de agua en el mismo:_TEAPOT( todos los objetos poseen su propia numeración identificativa ) Para rotargrados la escena sobre su eje Z\:_Z_ROTATE Rotación de objetos en El siguiente código crea una escena en con rotación del plano : REM Ejemplo de Panoramic BASIC REM # # # # # # # # # # # # # # # # # # # # # # # # # # REM Inicio del MAIN_PROGRAM REM # # # # # # # # # # # # # # # # # # # # # # # REM Definición de etiquetas y variables REM # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # DIM x , y , z , t LABEL On_Click_Button_1 LABEL On_Click_Button_2 LABEL On_Click_Button_3 REM Creación del Form_0 REM # # # # # # # # # # # # # # # # # # LEFT TOP WIDTH HEIGHT CAPTION " Prueba " REM Creación del Button_1 REM # # # # # # # # # # # # # # # # # # # # BUTTON 1 LEFT TOP WIDTH HEIGHT CAPTION " Crear " ON_CLICK On_Click_Button_1 REM Creación del Button_2 REM # # # # # # # # # # # # # # # # # # # # BUTTON 2 LEFT TOP WIDTH HEIGHT CAPTION " Mover " ON_CLICK On_Click_Button_2 REM Creación del Button_3 REM # # # # # # # # # # # # # # # # # # # # BUTTON 3 LEFT TOP WIDTH HEIGHT CAPTION " Cerrar " ON_CLICK On_Click_Button_3 REM Creación del marco Scene3D_4 REM # # # # # # # # # # # # # # # # # # # # # # # # # # # # SCENE3D 4 LEFT TOP WIDTH HEIGHT COLOR 0 REM Fin del MAIN_PROGRAM REM # # # # # # # # # # # # # # # # # # # # END On_Click_Button_1: REM Creación de los objetos REM # # # # # # # # # # # # # # # # # # # # # # # FOR x =TO _CUBE x,35 NEXT x REM Posición de los objetos REM # # # # # # # # # # # # # # # # # # # # # # # t = 5 FOR x =TO 1 FOR y =TO 1 FOR z =TO 1 _X_POSITION t , x _Y_POSITION t , y _Z_POSITION t , z t = t + 1 NEXT z NEXT y NEXT x REM Colorea los objetos REM # # # # # # # # # # # # # # # # # # # FOR x =TO _COLOR x , NEXT x REM Objeto azul en el centro REM # # # # # # # # # # # # # # # # # # # # # # # # _COLOR REM Objetos amarillos en las esquinas REM # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # _COLOR _COLOR _COLOR _COLOR _COLOR _COLOR _COLOR _COLOR REM Coordenadas de referencia REM # # # # # # # # # # # # # # # # # # # # # # # # # POINT_X_POSITION 0 POINT_Y_POSITION 0 POINT_Z_POSITION 0 RETURN On_Click_Button_2 : REM Rotación de la cámara REM # # # # # # # # # # # # # # # # # # # # # FOR t =TO x =* SIN( t /2432 ) z =* COS ( t /2432 ) y =* SIN( t /2432 ) CAM_X_POSITION x CAM_Y_POSITION y CAM_Z_POSITION z LIGHT_X_POSITION* x LIGHT_Z_POSITION* z WAIT NEXT t FOR t =TO z = z +5 CAM_Z_POSITION z LIGHT_Z_POSITION* z WAIT NEXT t RETURN On_Click_Button_3 : REM Fin del programa REM # # # # # # # # # # # # # # # # TERMINATE RETURN Versiones La última versión9.20 ) fue lanzada elde noviembre de habiendo sido eliminadas las limitaciones en cuanto al número de objetos creables a partir de la versión9.13 ( delde agosto de Enlaces externos Panoramic BASIC Language Lenguaje de programación BASIC