Documentacíon de DPGraph 2000 |
Después de haber
descargado e instalado DPGraph 2000 puede hacer "click" sobre las imágenes
para modificar y manipular las gráficas.
INTRODUCCIÓN:
DPGraph
2000 te permite crear bellas superfices 3D, a todo color y con calidad
fotográfica, para despues mostrarlas en pantalla, y publicarlas
y manipularlas en Internet.
Para
una superfice normal, como una esfera, es tan fácil como escribir
GRAPH3D(
X^2 + Y^2 + Z^2 = 9 ) en
coordenadas cartesianas
o GRAPH3D( RHO = 3 ) en coordenadas esféricas.
Superficies
más raras, como la variedad de Glynn, son tan fáciles como
GRAPH3D(
SIN(2*X) + SIN(2*Y) = SIN(2*Z) ).
DPGraph
2000 puede representar desigualdades 3D, como GRAPH3D(
Z*X > Y ), y también puede mostrar la intersección de
regiones definidas por desigualdades 3D como GRAPH3D(
X^2+Y^2+Z^2<=9 & X>1 ).
Si queremos
representar varias superficies, bastará con ponerlas en una lista:
GRAPH3D(
(X=1, Y=1, Z=1) ) nos muestra la intersección de tres planos.
Se puede
dar movimiento a las superficies usando el tiempo (TIME) como una variable:
un hiperboloide que
pasa de una a dos hojas
es tan fácil como GRAPH3D(
X^2 + Y^2 + SIN(TIME) = Z^2 )
Se puede
utilizar el comando VECTOR para visualizar campos de vectores:GRAPH3D(
VECTOR( X/RHO/3, Y/RHO/3, Z/RHO/3) ).
Se pueden
explorar los efectos de cambiar parámetros en las gráficas
como en GRAPH3D( A*X^2 + B*Y^2 + C*Z^2 =
9*D^2 ), utilizando la barra de desplazamiento que aparece en la ventana
de DPGraph 2000's para modificar los valores de A, B, C, y D en tiempo
real.
Para
ampliar (zoom) y girar las gráficas, se pueden utilizar las teclas
Home (Inicio), PageUp (RePág), PageDown (AvPág), y las teclas
con flechas.
DPGraph
2000 ha sido programado en lenguaje ensamblador para conseguir la máxima
velocidad en la construcción de las gráficas.
WEBSITE: www.davidparker.com
AVISO LEGAL: DPGraph 2000 no es "shareware"; las copias de usuarios sin licencia son ilegales. DPGraph es una marca registrada por David Parker. Copyright (C) 1997-2000 by David Parker. Todos los derechos reservados.
REQUISITOS: Cualquier PC compatible bajo Windows 95, Windows 98, Windows NT 4.0, or posterior. DPGraph 2000 necesita menos de 450k de espacio en su disco duro.
PROGRAMA DE INSTALACION: El programa de instalación es InstallDPGraph2000.exe . Al ejecutar InstallDPGraph2000.exe se instala DPGraph 2000 and todos los ficheros de ejemplos.
DESINSTALLACIÓN: DPGraph 2000 se puede desinstalar de su disco duro de dos maneras. 1: haga "click" en INICIO - CONFIGURACION - PANEL DE CONTROL - AGREGAR/QUITAR PROGRAMAS, despues buscar DPGraph 2000 en la ventana, seleccionelo, y haga "click" en el boton AGREGAR/QUITAR. 2: Haga "click" en INICIO - PROGRAMAS - - DPGRAPH 2000 - UNINSTALL.
ERRORES COMUNES: Los cinco errores más comunes cuando se crean gráficas en la ventana de edición EDIT son:
Equivocado: | Correcto: | |
graph3d( 3x = z^2 ) | graph3d( 3*x = z^2 ) | |
graph3d( x^2+y^2 ) | graph3d( z = x^2+y^2 ) | |
graph3d( x=1, y=1 ) | graph3d( ( x=1, y=1 ) ) | |
graph3d( x=1 & y=1 ) | graph3d( x>1 & y>=1 ) | |
graph3d( z^2> =x^2 ) | graph3d( z^2 >= x^2 ) |
DESIGUALDADES:
Al representar desigualdades,
como GRAPH3D( Z*X > Y ) recuerde que el
color "azul" señala la región donde la desigualdad es cierta;
el color "rojo" señala la región donde la desigualdad es
falsa. Si la igualdad ocurre en la superfice como en GRAPH3D(
Z*X > Y ), DPGraph añade azul en el lado rojo, haciendolo más
magenta, para mostrar que la superficie donde la igualdad es cierta.
DEFAULTS.DPG:
Con la experiencia puede
encontrar útil el siguiente procedimiento para representar nuevas
superficies:
Abra el fichero
DEFAULTS.DPG con DPGraph 2000, vaya a EDIT, modifique la ecuación
predeterminada, y haga "clik" en EXECUTE. Como todas las opciones
están presentes en el fichero DEFAULTS.DPG, pueden ser modificadas
con un mínimo tecleo. Por último, si lo deses, vaya a
SAVE para grabar el fichero modificado con un nombre diferente.
RESOLUCION:
La manera más sencilla
de mejorar el aspecto de las gráficas es aumentando su resolución.
El valor por defecto de la misma es de 21 x 21 x 21, e.d. utilizando el
mallado definido por 21 puntos de cada eje. Para cambiar la resolución
utilice la ventana de edición EDIT par insertar o modificar la siguiente
línea:
graph3d.resolution := 30
COPIAR GRAFICAS AL
PORTAPAPELES:
Haga "click" en la opción
CLIPBOARD del menú, para copiar la gráfica al portapapeles.
Para copiar la ventana
entera (incluyendo los bordes), presione simultaneamente las teclas
ALT y ImprPant (PRINTSCREEN).
Para copiar toda la pantalla
del monitor presione sólo la tecla ImprPant (PRINTSCREEN).
COPIAR GRAFICAS A OTRA
APLICACION:
Si la otra aplicación
soporta la acción de pegar (paste), primero copie la gráfica
al portapapeles y luego haga "click" en la opción PEGAR (PASTE)
del menu de EDICION (EDIT) de la otra aplicación.
IMPRIMIR GRAFICAS:
Comience por exportar el
gráfico a una aplicación, como por ejemplo Word o Paint,
que permita imprimir, y utilice esta aplicación para IMPRIMIR o
guardar la gráfica en un formato tranportable como GIF JPG PS PDF,
etc.
FORMATO DE LOS FICHEROS
dpg:
Los ficheros .DPG utilizados
por DPGraph 2000 son ficheros estándar "sólo texto" ASCII.
Se pueden leer y editar cun cualquier editor de texto como por ejemplo
Notepad. Cada línea del fichero es un comando para DPGraph
2000. Por ejemplom un fichero sería:
graph3d.view:=top graph3d.perspective:=false graph3d(z=3*sin(x*y))Cada comando debe de estar en una línea separada.
GRAFICAS 2D
También es posible
representar gráficas de curvas en el plano y=f(x) o F(x,y)=0, basta
con considerar las superfices 3D dadas por la misma ecuación (cilindros
cuya generatriz es el eje z) y observarlas en una caja tridimensional con
dimensión z pequeña, vista desde arriba sin perspectiva.
Por ejemplo para representar la función y=sen(x)
y los ejes x=0 e y=0, basta con utilizar los siguientes comandos:
graph3d.box := true
;muestra los bordes de la caja
graph3d.mesh := true
graph3d.view := top
;vista desde arriba
graph3d.perspective :=
false ;sin perspectiva
graph3d.resolution := 21
graph3d.minimumx := -3
graph3d.maximumx := 3
graph3d.minimumy := -2
graph3d.maximumy := 2
graph3d.minimumz := -0.1
;hace pequeña la altura
graph3d.maximumz := 0.1
;de la caja (eje z)
graph3d( ( y = sin(x),
x=0, y=0 ) )
BARRA DE DESPLAZAMIENTO
(SCROLLBAR)
La opción SCROLLBAR
del menú de DPGraph 2000 permite observar de forma dinámica
(usando la barra de desplazamiento que aparecerá a la derecha de
la ventana del programa) los cortes con los planos X=constante, Y=constante
y Z=constante al marcar espectivamente una de esas tres letras en el cuadro
de diálogo de esta opción. También permite variar
la superficie, moviendo la citada barra de desplazamiento) en función
de los parámetros A, B, C, o D, después de activar la letra
correspondiente en el cuadro de diálogo de la opción.
OPCIONES:
Los valores predeterminados
aparecen en letras MAYUSCULAS.
graph3d.resolution | (el número de puntos considerados en el lado más largo de la caja en la que se representa la superficie, su valor predeterminado es 21; los otros lados de la caja tienen una resolución proporcional a la longitud del lado) |
graph3d.mesh | (TRUE , false) (verdadero/falso) (dibuja los segmentos que unen los puntos que estan en la superfice y en la malla determinada por los puntos considerados en cada lado de la caja) |
graph3d.perspective | (TRUE , false) (verdadero/falso) |
graph3d.box | (TRUE , false) (verdadero/falso) (dibuja las aristas de la caja) |
graph3d.view | (STANDARD, top, side, front, or textbook) (ESTANDARD, desde arriba, desde el frente, o textbook) |
graph3d.contrast | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.transparency | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.background | (black, gray, WHITE, brown, red, yellow, green, cyan, blue, o magenta) (negro, gris, BLANCO, marron, rojo, amarillo, verde, cyan, azul, o magenta) |
graph3d.color | (BYHEIGHT, bysteepness, black, gray, white, brown, red, yellow, green, cyan, blue, or magenta) (POR-EL-VALOR-DE-Z, por-las curvas de la malla, negro, gris, blanco, ...) |
graph3d.highlight | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.shading | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.vectorcolor | (BYHEIGHT, bysteepness, black, gray, white, brown, red, yellow, green, cyan, blue, or magenta) (POR-EL-VALOR-DE-Z, por-las curvas de la malla, negro, gris, blanco, ...) |
graph3d.vectorhighlight | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.vectorshading | (el valor predeterminado es 1/2, puede tomar valores entre 0 y 1) |
graph3d.vectoralign | (TAIL, center, or tip) (alinear el vector desde: BASE-DEL-VECTOR, centro, punta) |
graph3d.vectorarrowhead | (true , FALSE) (verdadero/falso) |
graph3d.minimumx | (mínimo valor de x en los lados de la caja, el valor predeterminado es -3) |
graph3d.maximumx | (máximo valor de x en los lados de la caja, el valor predeterminado es 3) |
graph3d.minimumy | (mínimo valor de y en los lados de la caja, el valor predeterminado es -3) |
graph3d.maximumy | (máximo valor de y en los lados de la caja, el valor predeterminado es 3) |
graph3d.minimumz | (mínimo valor de z en los lados de la caja, el valor predeterminado es -3) |
graph3d.maximumz | (máximo valor de z en los lados de la caja, el valor predeterminado es 3) |
a.minimum | (mínimo valor para la variable A de la barra de desplazamiento) |
a.maximum | (máximo valor para la variable A de la barra de desplazamiento) |
b.minimum | (mínimo valor para la variable B de la barra de desplazamiento) |
b.maximum | (máximo valor para la variable B de la barra de desplazamiento) |
c.minimum | (mínimo valor para la variable C de la barra de desplazamiento) |
c.maximum | (máximo valor para la variable C de la barra de desplazamiento) |
d.minimum | (mínimo valor para la variable D de la barra de desplazamiento) |
d.maximum | (máximo valor para la variable D de la barra de desplazamiento) |
VALORES PARA LAS OPCIONES:
true | (verdadero)(para mesh, perspective, box, y vectorarrowhead) |
false | (para mesh, perspective, box, y vectorarrowhead) |
standard | (para view, x será el eje más horizontal) |
textbook | (para view, y será el eje más horizontal) |
top | (desde arriba)(para view) |
front | (desde el frente)(para view) |
side | (desde el lateral)(para view) |
byheight | (por altura)(para color o vectorcolor) |
bysteepness | (por pasos)(para color o vectorcolor) |
black | (negro)(para color, vectorcolor, o background) |
gray | (gris)(for color, vectorcolor, o background) |
white | (blanco)(para color, vectorcolor, o background) |
brown | (marrón)(para color, vectorcolor, o background) |
red | (rojo)(para color, vectorcolor, o background) |
yellow | (amarillo)(para color, vectorcolor, o background) |
green | (verde)(para color, vectorcolor, o background) |
cyan | (cyan)(para color, vectorcolor, o background) |
blue | (azul)(para color, vectorcolor, o background) |
magenta | (magenta)(para color, vectorcolor, o background) |
tail | (para vectoralign) |
center | (para vectoralign) |
tip | (para vectoralign) |
CONSTANTES:
pi | (pi) |
e | (base del logaritmo natural) |
VARIABLES:
x | (x variable para representaciones 3D) |
y | (y variable para representaciones 3D) |
z | (z variable para representaciones 3D) |
r | (radio polar, r=sqrt(x^2+y^2)) |
theta | (ángulo polar, 0<=theta<2*pi, theta=angle(-x,-y)+pi) |
rho | (radio esférico, rho=sqrt(x^2+y^2+z^2)) |
phi | (ángulo esférico, 0<=phi<=pi, phi=angle(z,r)) |
a | (variable a para la barra de desplazamiento) |
b | (variable b para la barra de desplazamiento) |
c | (variable c para la barra de desplazamiento) |
d | (variable d para la barra de desplazamiento) |
time | (va tomando el valor del reloj del ordenador para gráficos que cambian con el tiempo) |
SÍMBOLOS:
= | (igualdad, para escribir ecuaciones) |
< | (menor que, para escribir desigualdades) |
> | (mayor que, para escribir desigualdades) |
<= | (menor o igual que, para escribir desigualdades)) |
>= | (mayor o igual que, para escribir desigualdades)) |
& | (intersección) |
:= | (asignación, para asignar variables) |
(...) | (las listas de argumentos o ecuaciones van entre paréntesis) |
+ | (suma o signo para números positivos) |
- | (resta o signo para números negativos) |
* | (multiplicación) |
/ | (división) |
^ | (potencias) |
|...| | (valor absoluto, |.x.|=abs(x), la última expresión también es válida) |
! | (factorial) |
Funciones con un argumento:
abs | (valor absoluto, abs(x)=|.x.|, la última expresión también es válida) |
acos | (arcocoseno) |
acosh | (arcocoseno hiperbólico) |
acot | (arcocotangente) |
acoth | (arcocotangente hiperbólico) |
acsc | (arcocosecante) |
acsch | (arcocosecante hiperbólico) |
asec | (arcosecante) |
asech | (arcosecante hiperbólica) |
asin | (arcoseno) |
asinh | (arcoseno hiperbólico) |
atan | (arcotangente) |
atanh | (arcotangente hiperbólica) |
cos | (coseno) |
cosh | (coseno hiperbólico) |
cot | (cotangente) |
coth | (cotangente hiperbólica) |
csc | (cosecante) |
csch | (cosecante hiperbólica ) |
gamma | (function gamma) |
ln | (log base e) |
log | (log base 10) |
nonneg | (1 si x>=0, en otro caso no está definido) |
one | (1 si 0<=x<=1, en otro caso no está definido) |
sec | (secante) |
sech | (secante hiperbólico) |
sign | (signo, sign(x)= -1 si x es negativo, 1 si es positivo, indefinido si es 0 o no está definido) |
sin | (seno) |
sinh | (seno hiperbólico) |
sqr | (cuadrado, sqr(x)=x*x) |
sqrt | (raiz cuadrada) |
tan | (tangente) |
tanh | (tangente hiperbólica) |
Funciones de DOS ARGUMENTOS:
angle | (-pi <= ángulo que forma el vector (x,y) con respecto al eje positivo x <= pi, es el argumento principal del vector (x,y)) |
beta | (la función beta) |
Funciones de TRES ARGUMENTOS:
near | (1 si (x,y,z) esta cerca del near current grid, en otro caso permanece indefinida) |
vector | (dibuja un campo de vectores) |
PROBLEMAS CONOCIDOS:
Copyright © 1999-2000
by David Parker. All rights reserved.