DescartesJS
  • Inicio
  • Descartes
    • Introducción
    • Conceptualización
    • Versiones
    • Ejemplos
  • Edición
    • Gestor de escenas
    • Editor de escenas
    • Código de una escena
    • Manejo de escenas
  • Paneles
    • Botones
    • Espacios
    • Controles
    • Definiciones
    • Programas
    • Gráficos
    • Gráficos 3D
    • Animaciones
  • Auxiliares
    • Colores
    • Funciones
    • Textos
    • Macros
    • Ficheros
    • Imágenes
  • Créditos

Documentación técnica de la herramienta Descartes y del intérprete DescartesJS

  • Estás aquí : 
  • DescartesJS
  • /Buscar resultados para [ ficheros y vectores ]
  • Ficheros y vectores

    17 junio, 2014 Autor/a: Juan Guillermo Rivera Berrío
    Sin comentarios todavía

    En el apartado de definiciones, se documenta el tema de vectores, cuyos elementos tienen unos valores que se pueden asignar de varias maneras. Una primera es asignando los valores en la misma definición del vector; otra es asignando los valores a través de un algoritmo, especialmente en el caso de vectores de gran tamaño, mediante el que se pueden generar matemáticamente y una última opción es a través de un fichero o archivo de texto.

    Carga estática con el parámetro archivo en la definición de un vector

    En la siguiente escena interactiva hemos usado tres ficheros: el fichero paises.txt, que almacena los nombres de los países; el fichero abscisas.txt que almacena las abscisas, en la escena, de las ciudades capital; y el fichero ordenadas.txt que almacena las ordenadas donde se encuentran las ciudades capital. Cada uno de estos ficheros asignan los valores a los vectors P, X y Y. En la siguiente imagen se puede observar que en la definición del vector P se indica, en el parámetro archivo, que se usará el fichero Ficheros/paises.txt . La carga de cada vector se efectúa una única vez y no varían los valores de sus elementos de ahí que remarquemos que es una carga estática.

    Parámetro archivo en la definición de un vector

    Parámetro archivo en la definición de un vector

    El contenido de ese archivo paises.txt es éste:

    Contenido del fichero paises.txt

    Contenido del fichero paises.txt

    Para un mayor detalle, observa y escucha la presentación que hay a continuación de la escena.

    En la siguiente presentación, activa tus parlantes o altavoces. Luego, haz clic sobre la primera diapositiva y usa las flechas de dirección para observar y escuchar el resto de diapositivas. Puedes descargar la escena y la presentación desde este enlace.

    Como se indica en la presentación, para que los ficheros puedan ser leídos en la definición por el intérprete DescartesJS, cuando la escena se ejecuta en local, es necesario incorporarlos con un script en la página donde está embebida la escena. Por cada fichero se incluirá un script de tipo «descartes/vectorFile«. En la imagen siguiente puede verse cómo se incorporan en el código dos ficheros de nombres paises.txt y abscisas.txt. En este caso en el nombre se especifica como prefijo la carpeta Ficheros ya que en la escena ése es el direccionamiento que tienen dichos ficheros. Esta situación es análoga a la ejecución en local de macros.

    script para ficheros en ejecución local type descartes/vectorFile

    Scripts a embeber para que el intérprete lea los ficheros en la definición cuando se efectúa la ejecución en local type descartes/vectorFile

     Nota: La limitación de lectura de ficheros en local es consecuencia de la forma en la que se lee el contenido de ficheros externos en DescartesJS, ésta es mediante XMLHttpRequest y este método no garantiza la carga de archivos de forma local. Si se desea hacerlo funcionar en casos particulares es posible el uso de banderas en los navegadores (por ejemplo, en chrome activando allow-file-access-from-files o análogo en firefox), pero ha de ser consciente que lleva asociado una relajación en la seguridad de su sistema informático personal.

    Carga dinámica de un vector con la función _GetValues_

    Una posibilidad para efectuar la carga de un vector de manera dinámica, es decir, accediendo a diferentes ficheros según se desee es utilizando la función _GetValues_ cuya sintaxis es

    _GetValues_(fichero,vector)

    fichero será una cadena de caracteres entre comillas simples, por ejemplo ‘datos/datos1.txt’, o una variable que contenga una cadena y que referencie el path localizador del archivo.

    vector será una cadena de caracteres entre comillas simples, por ejemplo ‘V’, o una variable que contenga una cadena. Esa cadena es la etiqueta que aparece en el fichero de datos a cargar y ha de coincidir con ella o bien, si se especifica la cadena nula o una variable con ese valor ignorará dicha etiqueta.

    En la escena siguiente (puede descargarla desde aquí) se cargan los datos de un vector denominado vect1 a partir de los datos almacenados en tres ficheros ‘datos1a.txt’, ‘datos2a.txt’ y ‘datos3a.txt’.

    En la opción «Leer vector variables 1» el archivo usado es filename1=’datos1a.txt’ cuyo contenido es

    datos1a.txt

    datos1a.txt

    y donde podemos observar la etiqueta <r2>

    Análogamente tenemos los archivos filename2=’datos2a.txt’ y filename3=’datos3a.txt’

    datos2a.txt y datos3a.txt

    datos2a.txt y datos3a.txt

     El código que permite la lectura de esos archivos es el siguiente

    Código para la lectura de ficheros

    Código para la lectura de ficheros

    En él podemos observar como al seleccionar la primera opción del menú (menu=1) se accede a _GetValues_(filename1,’r2′) donde filename1=’datos1a.txt’ y en el contenido de ese archivo se usa la etiqueta <r2>.

    Para la siguiente opción la llamada es _GetValues_(filename2, vectorv) donde filename2=’datos2a.txt’ y vectorv=’DATOSVECT’ que es la etiqueta usada en dicho fichero.

    Y en la tercera opción se usa _GetValues_(filename3, ») donde filename3=’datos3a.txt’ y en vector se indica la cadena nula, es decir, que se ignore la etiqueta <NoUsado> especificada en datos3a.txt.

    En cada uno de esos archivos se efectúa una asignación a las variables que se han denominado aux1, aux2, aux3 y aux4 que son las que en el código de la escena se asignan a los elementos del vector vect1, es decir, que se usan como variables de paso.

    Para el funcionamiento en local es necesario incorporarlos con un script en la página donde está embebida la escena. Por cada fichero se incluirá un script de tipo «descartes/archivo«. En la imagen siguiente puede verse cómo se han incorporado en el código los tres ficheros anteriores:

    type descartes/archivo

    type descartes/archivo

    Carga dinámica de un vector con la función _Load_ y _StrToVector_

    La sintaxis de la función _Load_ es

    variable=_Load_(fichero)

    donde fichero es una cadena de caracteres que proporciona la dirección donde se ubica el fichero a cargar y variable es la que variable a la que se asigna el contenido de ese fichero como una cadena de caracteres.

    Una vez asignado el contenido a dicha variable, la función _StrToVector_ (variable,‘vector‘) asigna los valores a cada elemento del vector etiquetado como vector.

    Hay que señalar que el contenido del fichero ha de contener una primera línea con la etiqueta <vector> y finalizar con la etiqueta </vector>.

    En la siguiente escena puede comprobar el funcionamiento de estas funciones (puede descargarse aquí).

    El archivo usado en la escena anterior es el siguiente:

    Fichero que contiene los elementos de un vector

    Fichero que contiene los elementos de un vector

    en él podemos observar las etiquetas y el script para inscrustarlo en el código html para que sea accesible en local.

    Carga dinámica de un vector con la función _GetVector_

    La sintaxis de esta función es _GetVector_(fichero,’vector‘) donde fichero es una cadena de caracteres que proporciona la dirección donde se ubica el fichero a cargar y vector es la etiqueta del vector en el que se desean cargar sus elementos. Esa etiqueta ha de ir entre comillas simples y ha de coincidir con la etiqueta que aparece en el contenido del fichero que se está leyendo. Su efecto es equivalente a _Load_ y _StrToVector_ de la sección anterior. También en la escena de esa sección puede observar el funcionamiento de esta función.

    Guardar vectores en un fichero

    Para esta funcionalidad consulte el artículo Guardar ficheros.

  • Ficheros y matrices

    2 diciembre, 2014 Autor/a: José R Galo Sánchez
    Sin comentarios todavía

    En el apartado de definiciones, se documenta el tema de matrices, cuyos elementos tienen unos valores que se pueden asignar de varias maneras. Una primera es asignando los valores en la misma definición de la matriz; otra es asignando los valores a través de un algoritmo lo cual es especialmente necesario y recomendable en el caso de matrices de gran tamaño que puedan generarse matemáticamente y una última opción es a través de un fichero o archivo de texto.

    Carga estática con el parámetro archivo en la definición de una matriz

    El objeto matriz cuenta con un parámetro que está etiquetado como archivo, pero NO ESTÁ OPERATIVO, en próximas versiones del editor de configuración éste campo no aparecerá.

    Definición de una matriz mediante un archivo

    Definición de una matriz mediante un archivo

    La carga de datos en una matriz a partir de ficheros se efectúa siempre de manera dinámica utilizando las funciones que se describen a continuación.

    Carga dinámica de una matriz con la función _GetValues_

    Una posibilidad para efectuar la carga de una matriz de manera dinámica, es decir, accediendo a diferentes ficheros según se desee, es utilizando la función _GetValues_ cuya sintaxis es

    _GetValues_(fichero,matriz)

    fichero será una cadena de caracteres entre comillas simples, por ejemplo ‘datos/datos1.txt’, o una variable que contenga una cadena y que referencie el path localizador del archivo.

    matriz será una cadena de caracteres entre comillas simples, por ejemplo ‘matriz1’, o una variable que contenga una cadena. Esa cadena es la etiqueta que aparece en el fichero de datos a cargar y ha de coincidir con ella o bien, si se especifica la cadena nula o una variable con ese valor ignorará dicha etiqueta.

    Esta opción es igual que la carga dinámica de un vector (consultar este artículo) y lo único que varía es la asignación que se realiza en este caso a los elementos de una matriz y en el otro sob los elementos de un vector

    En la escena siguiente (puede descargarla desde aquí) se cargan los datos de una matriz denominada matr1 a partir de los datos almacenados en tres ficheros ‘datos1a.txt’, ‘datos2a.txt’ y ‘datos3a.txt’.

    En la opción «Leer vector variables 1» el archivo usado es filename1=’datos1a.txt’ cuyo contenido es

    fichero datos1a.txt

    fichero datos1a.txt

    y donde podemos observar la etiqueta <matr1>

    Análogamente tenemos los archivos filename2=’datos2a.txt’ y filename3=’datos3a.txt’

    ficheros datos2a.txt y datos3a.txt

    ficheros datos2a.txt y datos3a.txt

    El código que permite la lectura de esos archivos es el siguiente

    Lectura de una matriz desde un fichero con _GetValues_

    Lectura de una matriz desde un fichero con _GetValues_

    En él podemos observar como al seleccionar la primera opción del menú (menu=1) se accede a _GetValues_(filename1,’matr1′) donde filename1=’datos1a.txt’ y en el contenido de ese archivo se usa la etiqueta <matr1>.

    Para la siguiente opción la llamada es _GetValues_(filename2, ‘matr1’) donde filename2=’datos2a.txt’ y la etiqueta es también ‘matr1’ que coincide con la etiqueta usada en dicho fichero (podría ser también una variable cuya valor fuera ‘matr1’.

    Y en la tercera opción se usa _GetValues_(filename3, ”) donde filename3=’datos3a.txt’ y en matriz se indica la cadena nula, es decir, que se ignore la etiqueta <NoUsado> especificada en datos3a.txt (podría ser otra etiqueta no necesariamente NoUsado).

    En cada uno de esos archivos se efectúa una asignación a las variables que se han denominado aux1, aux2, aux3, aux4, aux5 y aux6 que son las que en el código de la escena se asignan a los elementos de la matriz matr11, es decir, que se usan como variables de paso.

    Carga dinámica de una matriz con la función _Load_ y _StrToMatrix_

    La sintaxis de la función _Load_ es

    variable=_Load_(fichero)

    donde fichero es una cadena de caracteres que proporciona la dirección donde se ubica el fichero a cargar y variable es la que variable a la que se asigna el contenido de ese fichero como una cadena de caracteres.

    Una vez asignado el contenido a dicha variable, la función _StrToMatrix_ (variable,‘matriz‘) asigna los valores a cada elemento de la matriz etiquetada como matriz.

    Hay que señalar que el contenido del fichero ha de contener una primera línea con la etiqueta <matriz> y finalizar con la etiqueta </matriz>.

    En la siguiente escena puede comprobar el funcionamiento de estas funciones (puede descargarse aquí).

    El archivo usado en la escena anterior es el siguiente:

    fichero que contiene los elementos de una matriz

    fichero que contiene los elementos de una matriz

    en él podemos observar las etiquetas y el script para inscrustarlo en el código html y que sea accesible en local.

    Carga dinámica de un vector con la función _GetMatrix_

    La sintaxis de esta función es _GetMatrix_(fichero,’matriz‘) donde fichero es una cadena de caracteres que proporciona la dirección donde se ubica el fichero a cargar y matriz es la etiqueta de la matriz en la que se desean cargar sus elementos. Esa etiqueta ha de ir entre comillas simples y ha de coincidir con la etiqueta que aparece en el contenido del fichero que se está leyendo. Su efecto es equivalente a _Load_ y _StrToMatrix_ de la sección anterior. También en la escena de esa sección puede observar el funcionamiento de esta función.

    Guardar vectores en un fichero

    Para esta funcionalidad consulte el artículo Guardar ficheros.

  • Vectores

    1 abril, 2014 Autor/a: Elena Álvarez
    Sin comentarios todavía

    Un vector es una lista de variables. Un vector tiene un identificador y un tamaño que es su longitud o número de elementos o componentes. El ejemplo de la figura siguiente corresponde a un vector con identificador vect y de tamaño 3.

    vecDef

    La manera de hacer referencia a un elemento de un vector es escribir el identificador del vector seguido del número del elemento entre corchetes. Los elementos de un vector se numeran siempre comenzando por  cero.

    Los parámetros que permiten definir un vector son:

    • Su identificador que se introduce en un área de texto.
    • evaluar que puede tomar dos valores una-sola-vez o siempre y que hace que el vector tome los valores indicados en el campo de texto de inicialización sólo cuando se inicie la escena o cada vez que haya una interacción con la misma. Este parámetro en la versión 5 ha quedado limitado a actualizar sólo una vez, la actualización siempre se realiza mediante el algoritmo Cálculos y también se puede usar el algoritmo Inicio para asignar ese valor inicial a los elementos del vector.
    • tamaño. Es el número de elementos del vector.
    • Un  campo de texto donde pueden escribirse asignaciones a los valores del vector, separadas por saltos de línea o por punto y coma ‘;’. Si el vector, por ejemplo es de tamaño 3, entonces se puede escribir v[0]=1;v[1]=1.5;v[2]=-1.5.
    • archivo. Archivo de texto (se recomienda que lleve la extensión .txt) en el que aparecen en orden los valores de los elementos del vector, separados por un salto de línea. Los valores pueden ser numéricos o de cadena, en cuyo caso deben aparecer entre comillas sencillas, por ejemplo ‘valor’. Puesto que la definición de vectores se evalúa sólo una vez, la carga de valores de un vector mediante un fichero es estática, sólo se realiza esa vez y por tanto no permite abordar una recarga desde la definición del vector. Para una carga dinámica es necesario utilizar otras funciones que se describen en el artículo ficheros y vectores.

    El área de texto que aparece en el panel de configuración de un vector, sirve para asignar valores a (o inicializar ) los elementos del vector.  El contenido del área de texto es por defecto el que muestra la imagen, asignando cero a los tres elementos del vector. Los elementos no inicializados de un vector tienen por defecto el valor 0.

    Para inicializar un vector no es necesario utilizar el área de texto, también se puede utilizar un algoritmo descrito en una función algorítmica o mediante un fichero. Estas dos últimas formas son las más aconsejables cuando el vector tiene muchos elementos.

    En la siguiente escena se muestra un ejemplo de cómo asignar valores a un vector con datos que se pueden leer de un fichero o que se generan mediante una función.

     Si se desea ver cómo está realizado el objeto anterior puede descargarse desde aquí .

    En la escena anterior la opción de menú etiquetada como «generar» permite asignar a cada elemento del vector denominado vect1 un valor aleatorio mediante una función que está reflejada en la siguiente imagen. En ella un ciclo que se ejecuta desde 0 hasta la longitud del vector vect1 (vect1.long) asigna a cada elemento (vect1[term]) un número aleatorio en el intervalo [0, 20)

    Asignación de valores a un vector mediante una función algorítmica

    Asignación de valores a un vector mediante una función algorítmica

    En el artículo ficheros y vectores puede aprenderse cómo asignar valores a un vector mediante el uso de ficheros y en él se describe cómo en la escena anterior se realiza esa asignación.

  • Índice Documentación

    26 mayo, 2014 Autor/a: José R Galo Sánchez
    Sin comentarios todavía

    Inicio

    Inicio

    Descartes

    La Comunidad Descartes y su herramienta

    Introducción

    Conceptualización

    ¿Qué es Descartes?

    Intérpretes de Descartes

    Referencia y localización de los intérpretes

    Editores de configuración de Descartes

    Versiones

    Versiones de Descartes

    Versión 1 de Descartes

    Versión 2 de Descartes

    Versión 3 de Descartes

    Descartes Álgebra

    Versión 4 de Descartes

    Plug-in de Descartes

    Bloqueo de escenas en Java

    Versión 5 de Descartes

    Versión DescartesJS

    Otros tipos de escenas

    Discursos de Descartes o Arquímedes

    Ítems de Descartes 

    Ejemplos

    Edición

    Gestor de escenas

    Instalación del gestor de escenas (Java)

    ¿Cómo usar el gestor de escenas? (Java)

    Opción de menú «Archivo»

    Opción de menú «Opciones»

    Opción de menú «Servidores»

    Opción de menú «Ítems»

    Opción de menú «HTML»

    Opción de menú «Editar»

    Opción de menú «Insertar»

    Editor de escenas

    Editor de configuración de escenas en Java

    Editor de configuración de escenas de Descartes 2

    Editor de configuración de escenas de Descartes 5

     Editor de configuración de Discursos

    Editor de configuración de Ítems

    Editor básico de configuración, de líneas, (javascript)

    Cómo editar escenas con el editor básico de líneas (artículo incompleto)

    Editor de configuración de escenas en javascript (artículo incompleto)

    Código de una escena

    Código de una escena

    Sintaxis del código de una escena

    Acceso al código de una escena

    Manejo de escenas

    Copiar y pegar escenas en html

    Ejemplos con «docBase»

    Embeber en blog

    Embeber en Moodle

    Embeber en wikis

    Embeber como ventana emergente

    Embeber como iframe en entorno html

    Embeber como iframe en una escena o discurso

    Diseño web adaptable (responsive) en escenas

    Escenas adaptables

    Unidades didácticas adaptables

    Comunicación entre escenas y con el fichero html que las contiene

    Comunicación entre escenas en espacios HTMLIframe

    Comunicación entre una escena y el fichero html que la contiene

    Comunicación escena-html usando Descartes Java

    Comunicación escena-html usando Descartes JS

    Comunicación de una escena con el html embebido en un HTMLIframe

    Aplicaciones de la comunicación para vídeos interactivos

    Aplicación de la comunicación para integrar cálculo simbólico

    Comunicación de vectores entre escena y html

    Comunicación de matrices entre escena y html

    Paso de parámetros desde una escena Descartes a una web independiente

    Paneles

    Botones

    Botones

    Espacios

    Espacios

    Espacios R2 o bidimensionales

    Espacios R3 o tridimensionales

    Espacios sensibles a los movimientos del ratón

    Espacios AP

    Espacios HTMLIframe

    Audio y vídeo mediante espacios HTMLIframe

    Imágenes de fondo en espacios

    Controles

    Controles

    Controles numéricos

    Imágenes en controles numéricos tipo botón

    Controles gráficos

    Controles de texto

    Controles de Audio – Video

    Audios y vídeos interactivos con Descartes

    Definiciones

    Definiciones

    Variables

    Funciones

    Funciones matemáticas básicas

    Operadores

    Funciones para gestión de cadenas

    Funciones para la comunicación

    Palabras reservadas

    Vectores

    ficheros y vectores

    guardar vectores en ficheros

    Matriz

             ficheros y matrices

             guardar matrices en ficheros

    Programas

    Programa

    Algoritmos

    INICIO

    CALCULOS

    Evento

    Gráficos

    Gráficos

    Punto 2-D

    Segmento 2-D

    Polígono 2-D

    Relleno 2-D

    Arco 2-D

    Flecha 2-D

    Sucesión 2-D

    Ecuación 2-D

    Curva 2-D

    Texto 2-D

    Imágenes en Gráficos 2D 

    Gráficos 3D

    Gráficos 3D

    Punto 3D

    Segmento 3D

    Polígono 3D

    Curva 3D

    Triángulo 3D

    Cara 3D

    Polireg 3D

    Superficie 3D

    Texto 3D

    Otras figuras 3D

    Familias 3D

    Ejercicios con gráficos 3D – Relaciones espaciales

    Animaciones

    Animaciones

    Animaciones – Ejercicio

    Animaciones – La ilusión de Adelson

    Animaciones – Las ilusiones de Koffka y de Haze

    Audios y vídeos interactivos con Descartes

    Otros elementos auxiliares

    Colores

    Colores

    Textos

    Textos y Editor de textos y fórmulas

    Macros

    Macros

    Macros en el editor de configuración Java y en el intérprete Java (queda en el último párrafo enlazar ejemplos)

    Macros en el intérprete DescartesJS

    Relación de macros del sistema (redactar)

    Ficheros

    Ficheros

    Imágenes

    Imágenes de fondo en espacios

    Imágenes en controles numéricos tipo botón

    Imágenes en Gráficos 2D

    Ejemplos de aplicación y utilidades

    Lupa cartesiana (aplicación de espacios y escala en imágenes)

    Aplicación de algoritmos

    Ciclos o bucles anidados

    Recomendaciones, indicaciones y elementos prefabricados

    Audios y vídeos interactivos con Descartes

    Aplicaciones de la comunicación para vídeos interactivos

    Vídeos interactivos en Youtube

    Vídeo interactivo con preguntas de respuesta escrita

    Vídeo interactivo con selección de fragmentos de vídeo

    Vídeo interactivo con preguntas de selección múltiple

    Vídeo interactivo con enlace a otros vídeos

    Vídeo interactivo con enlace a otras escenas de Descartes

    Vídeo interactivo y escena interactiva simultánea

    Vídeos interactivos en local

    Vídeos interactivos con línea de tiempo

    Vídeos interactivos con línea de tiempo (v1)

    Curvas de Bezier en Geogebra y Descartes

    Vídeos interactivos con línea de tiempo (v2)

    Aplicaciones de la comunicación para integrar cálculo simbólico

    Integración de construcciones de Geogebra con Descartes

    Comunicación Descartes-Google Maps

    Libros interactivos con Descartes embebido en «Mouleskine notebook»

    Créditos

    Créditos

Categorías

Etiquetas

adaptable algoritmo algoritmos Animaciones animación arco blog colores Comunicación configuración controles curva definiciones diseño web adaptable ecuación editor evento flecha función GeoGebra Gestalt gestor de escenas gráficos Gráficos 3D guía de uso Haze ilusiones imagen instalación Java Koffka matriz Moodle polígono programa punto Relleno responsive responsivo segmento sucesión texto variables vector vídeos interactivos

Entradas recientes

  • Libros interactivos con Descartes embebido en «Moleskine notebook»
  • Comunicación con JavaScript desde una escena Descartes a la API de una plataforma educativa vía paquete Scorm
  • Comunicación Descartes-Google Maps
  • Paso de parámetros desde una escena Descartes a una web independiente
  • Lupa cartesiana

Comentarios recientes

  • Anónimo en Construcciones GeoGebra con Descartes: Ángulos en una circunferencia, vídeo interactivo
  • Anónimo en Macros en el intérprete DescartesJS
  • Anónimo en Interactive video – Euler’s line
  • Anónimo en Interactive video – Euler’s line
  • Anónimo en Operadores

Utilidades

  • Acceder
  • Feed de entradas
  • Feed de comentarios
  • WordPress.org
Documentación DescartesJS posee una licencia CC by-nc-nd si no se indica lo contrarioTheme zAlive by zenoven.
  • Inicio
  • Descartes
  • Edición
  • Paneles
  • Auxiliares
  • Créditos
× Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Aceptar