sábado, 25 de mayo de 2013

PAQUETERIA CABRI 3D

Instituto Tecnológico De Cerro Azul

INGENIERÍA EN SISTEMAS COMPUTACIONALES

GRAFICACIÓN

CABRI 3D



Gregorio Ángeles Pérez 10500292
Carlos Arturo Hernández González 10500722

RESUMEN

Cabri 3D es un software para explorar la geometría del espacio. Permite construir, visualizar y manipular en tres dimensiones toda clase de objetos: rectas, planos, conos, esferas, poliedros… Puede crear construcciones dinámicas, de la más elemental a la más compleja, utilizando las propiedades y trasformaciones geométricas que incorpora. Permite medir objetos, incorporar datos numéricos y revisar la secuencia de realización de las construcciones.
 INTRODUCCIÓN

Han pasado 20 años desde la aparición de los primeros programas de geometría dinámica. Con sus particularidades, todos permiten el tratamiento de la geometría plana con gran sencillez y dinamismo, ayudando a profesores y alumnos en la enseñanza y aprendizaje de una disciplina que parecía condenada al olvido: La geometría.
Con estos mismos programas, algunos profesores han dado un importante paso, simular de forma brillante un entorno 3D que nos permite visualizar propiedades geométricas del espacio. La realización de estas elegantes construcciones no está al alcance de los alumnos, éstos solo pueden limitarse a contemplar y manipular las construcciones por otros realizadas y, eso sí, observar y comprobar las propiedades matemáticas que se desarrollan.
Debido a la ausencia de software convenientes y a la dificultad de visualizar los objetos en el espacio, la geometría 3D es un dominio parcialmente explorado. Las experiencias de geometría en el aula habitan en el planeta de Planilandia. (Claudi Alsina).
Cabri 3D aporta la tercera dimensión, tanto en el motor matemático como en la tecnología de visualización, de forma que las construcciones tridimensionales y la exploración del espacio quedan al alcance de todos los usuarios. Proporciona a docentes, alumnos e investigadores una herramienta precisa para investigar y descubrir nuevas propiedades.

PRIMERAS CONSTRUCCIONES CON CABRÍ 3D.

EL PLANO BASE.

Para manejar bien el funcionamiento de Cabri 3D, es importante comprender el concepto de los planos. En un primer momento, cada nuevo objeto que se construye con Cabri 3D está sobre un plano, denominado el plano de base. Sobre él aparece un cuadrilátero sombreado, la parte visible del plano base. Todas las construcciones que se realicen ahora, sobre la parte visible o en el exterior, comienzan necesariamente sobre ese plano.
Salvo que se indique lo contrario, el programa se abre en vista natural, que como su nombre indica, trata de modelizar la presentación de objetos tal y como se realiza en la realidad. Desde la opción archivo/nuevo según modelo pueden elegirse una amplia gama de perspectivas y sistemas de representación.


CONSTRUCCIÓN DE UN ORTOEDRO.

Como primera construcción en Cabri 3D vamos a realizar un ortoedro, o caja XYZ, como se nombra en Cabri 3D.
Selecciona un punto de la parte visible del plano base, (zona gris al abrir el programa), desplaza el puntero a otro punto del plano, y ahora pulsando la tecla mayúscula y desplazando el ratón verticalmente determinamos la altura.
Ya hemos construido una caja. Podemos ahora hacer medidas de aristas, diagonales, área y volumen de la misma. Por supuesto estás son dinámicas. Comprobación del teorema de Pitágoras en el espacio. Mide las aristas y la diagonal principal y comprueba que la suma de los cuadrados de las aristas es igual al cuadrado de la diagonal.


Función Bola de Cristal

Esta función permite visualizar la zona de trabajo desde diferentes ángulos, como si ésta estuviera en una bola de cristal transparente. Para utilizarla, basta colocar el cursor del ratón en cualquier parte de la zona de trabajo, y hacer un clic derecho y desplazar el ratón en la dirección que se desee. Se recomienda utilizar frecuentemente esta función que permite en todo momento visualizar el trabajo realizado bajo todos los ángulos, y así, apreciar mejor las posibilidades del software. 


La ayuda en Cabri 3D.

Las construcciones en el espacio resultan algo más complejas que las equivalentes en el plano, consecuentemente el software para trabajar en el espacio también lo es, al menos en los primeros momentos.
Cabri 3D dispone de una muy útil ayuda (F1) en pantalla. Ésta nos permite saber que acciones son posibles con cada herramienta que se seleccione, y lo que es más importante, nos guía en definiciones y procesos matemáticamente correctos.
La imagen de la derecha muestra la ayuda al seleccionar construir plano, que incluye siete formas de definirlo.
Una vez construido un plano por cualquiera de los procedimientos, el software nos muestra su ecuación si se desea.
La versión actual (V 2.1.2) no permite representar un plano a partir de su expresión algebraica. Si es posible introducir puntos y vectores por sus coordenadas. 



POLIEDROS REGULARES

Su construcción es inmediata. Cabri 3D dispone de un menú propio para su representación.
Puede ser un buen momento para contar o numerar caras, aristas y vértices y comprobar la relación de Euler. C+V = A +2.
Presentamos ahora algunas construcciones realizadas partiendo de los conocidos sólidos platónicos.

CORTES EN EL CUBO.
Cabri 3D dispone de la herramienta Recorte de un poliedro, que permite ver la sección que origina el corte de un poliedro por un plano.
Partimos de un cubo, sobre el que construimos una de sus diagonales principales, y un punto sobre ella. Construimos a continuación un plano perpendicular a la diagonal por el punto definido sobre ella. La herramienta recorte se encarga del resto.
CONSTRUCCIÓN DE PATRONES.
Una de las más novedosas e interesantes construcciones desde el punto de vista educativo es la herramienta abrir poliedro. Como su nombre indica nos permite abrir y ver el desarrollo de un poliedro convexo con sólo un clic.
Continuando la apertura del poliedro, podemos mostrar su desarrollo plano y otras curiosas configuraciones.

Sobre el desarrollo plano del cubo marcamos una arista y un vértice muestra la figura de la izquierda.





CÓNICAS.
La herramienta curva de intersección, nos permite visualizar las cónicas como corte de un plano con un cono, definiendo previamente la posición relativa del plano.




CONCLUSIONES
En las páginas anteriores se han presentado unas muestras de utilización de Cabri 3D en el aula. Estas y otras pueden consultarse en la página del autor http://roble.pntic.mec.es/jarran2/cabri3d .
Las posibilidades del software son ilimitadas, y como ocurre con los programas equivalentes en el plano, éstas no son impuestas por el programa sino por el conocimiento del usuario.
Cabrí, como ya ocurriera en el plano, es el pionero de programas 3D que pueden utilizarse sin dificultad en Educación Secundaria y Bachillerato. En los próximos años evolucionará facilitando algunas construcciones y ampliando su campo de aplicación. Paralelamente surgirán programas similares. Es deseable que éstos sean fieles a la filosofía que debe de presidir su utilización educativa, no es tan importante lo que “hace el programa” como lo que el usuario, el alumno, aprende con su uso.
La utilización de un programa informático en educación debe de ser algo más que una herramienta que nos permita reproducir en la pantalla lo que ya sabemos, reduciendo tiempo de calculo y mejorando presentación, debe además contribuir al aprendizaje.
Cabri 3D, hereda de su antecesor en el plano una filosofía de trabajo, que consiste no tanto en hacer sino en contribuir al aprendizaje mediante la construcción y exploración.
A esto último contribuyen de forma notable, aparte de una minuciosa selección de herramientas disponibles, el guía integrado (leyenda que aparece en la zona de trabajo con cada acción que va a realizarse), la ayuda en línea y las opciones descritas de revisión y descripción.

REFERENCIAS
www.cabri.com página oficial de Cabrí, además del manual de programa y el plug-in para visualizar en Internet construcciones con él realizadas, contiene ejemplos de utilización, tutoriales y amplia información sobre el mismo.

http://www.geometriainteractiva.org/index.asp
http://www.educared.net/profesoresinnovadores/unidades/plantillas/vectores%20en%20el%20espacio.rar
http://www.matematica.it/tomasi/figure3d/
http://users.libero.it/prof.lazzarini/Cabri3D/

miércoles, 8 de mayo de 2013

3.4 LINEAS Y SUPERFICIES CURVAS



LINEAS

La  recta  es una  sucesión infinita o continua de puntos a lineados en una sola dirección. Es una de las primitivas gráficas en computación gráfica viene dada por la ecuación  y= m.x+b , donde m es la pendiente de la recta y v es el corte con el eje y.




Como los pixeles se grafican en posiciones enteras, la linea trazada solo puede aproximar posiciones de lineas reales entre los puntos extremos especificados.

Una linea recta debe dibujarse como una sucesión de pixeles.

Efecto de escalera que se produce cuando se genera una linea como una serie de pixeles .












TRASFORMAR PRIMITIVAS EN PIXELES

Las coordenadas de los pixeles deben estar lo mas cerca posible de una linea recta real.

Un algoritmo debe cumplir con:
*La secuencia de pixeles debe ser lo mas recta que se pueda.
*Las lineas deben tener el mismo grosor e intensidad sin importar el grado de inclinación.
*Las lineas deben dibujarse lo mas rápido posible.


ALGORITMOS PARA TRAZO DE LINEAS

ALGORITMO DDA

El analizador diferencial digital(DDA) es un algoritmo que sirve para calcular posiciones de pixeles a lo largo de una linea, mediante el uso de la ecuación.

                                                    ∆y=m.∆x

                       

Ecuación básica de la recta y=m.x+b
m es la pendiente y  v es la intersección con el eje y






ALGORITMO DE BRESENHAM

Calcula cual de dos pixeles es el mas cercano a la trayectoria de una linea.
El pixel x(i),y(i) se divide en (xi+1,yi)(xi+1,yi+1) hay que decidir cual pintar calculando la distancia vertical entre el centro de cada pixel y la linea real.

Las  posiciones de los pixeles se representan por las áreas rectangulares  numeradas.






Sección de una retícula de la pantalla donde se desplegara una linea que pasara por:

(Xi,Yi)


De aquí se tiene y=m(xi+1)+b

Definimos: 
d1=y-yi
=m(xi+1)+b-yi

d2=(y1+1)-y
=y1+1-m(xi+1)-b

la diferencia es :

definimos pi como:
donde c es:
obtenemos pi+1 de pi
como:



ATRIBUTOS DE LAS PRIMITIVAS DE SALIDA

Estilo de lineas
*Los atributos de estilo de linea determinan la forma en que se desplegara  una linea por medio de una rutina de trazo de lineas. Los atributos de linea son su tipo,su anchura y su color.

Tipo de linea

Los atributos de linea incluye las lineas solidas,lineas punteadas con lineas y punteadas.

El método setStrokeStyle permite cambiar el estilo de linea.

Este método acepta los siguientes valores:
a)  Graphics.SOLID - linea solida
b)  Graphics.DOTTED- linea de puntos

                                                       GRAPHICS 2D SETSTROKE


Un objeto basicstroke contiene información sobre la anchura de la linea, estilo de uniones, estilos finales, y estilo de punteado.Esta información se usa cuando se dibuja una Shape  con el método DRAW.

La anchura de linea es la longitud de la linea medida  perpendicularmente a su trayectoria. La anchura de la linea se especifica como un valor float en las unidades de coordenadas de usuario, que es equivalente 1/72 pulgadas cuando se utiliza la tranformacion por defecto.

Nota:
Para rellenar o puntear un gráfico primitivo,necesitamos hacer dos llamadas separadas a métodos  fill o drawString para rellenar el interior y draw para dibujar el exterior.

Los 3 estilos de linea usados en este ejemplo ancho, estrecho y punteado son ejemplares de:
BasicStroke:

// Sets the Stroke.
...
case 0 : g2.setStroke(new BasicStroke(3.0f)); break;
case 1 : g2.setStroke(new BasicStroke(8.0f)); break;
case 2 : float dash[] = {10.0f};
g2.setStroke(new BasicStroke(3.0f,
BasicStroke.CAP_BUTT,
BasicStroke.JOIN_MITER,
10.0f, dash, 0.0f));
break;

BASICSTROKE SOPORTA 3 ESTILOS DE UNIÓN:

*JOIN_BEVEL
*JOIN_MITER
*JOIN_ROUND

El estilo de finales es la decoración que se aplica cuando un segmento de linea termina.                     
BASICSTROKE soporta 3 estilos de finalización:

*CAP_BUTT
*CAP_ROUND
*CAP_SQUARE

El elemento 0 representa el primer punteado , el elemento 1 el primer espacio , etc. La fase de punteado es un desplazamiento en el patrón de punteado, también especificado en unidades de coordenadas de usuario. La fase de punteado indica que parte del patrón de punteado se aplica al principio de la linea.

PATRÓN DE RELLENO
Los patrones de relleno están definidos por el atributo Paint en el contexto Graphics2d. Para seleccionar el atributo paint, se crea un ejemplar de un objecto que implemente el interface paint y eso pasa dentro del método Graphics2d setPaint.

ANCHURA DE LINEA
La implementacion de las opciones de anchura de lineas dependen del tipo de dispositivo de salida que se utilice  Una linea ancha en un monitor de vídeo podría trazarse como lineas paralelas adyacentes, mientras que una graficadora de pluma podría requerir cambios de pluma . Como sucede con otros atributos puede usarse como comando de anchura de linea para fijar la anchura regular de la linea.

Color de linea

Cuando un sistema ofrece sistemas de color (o bien de intensidad) un parámetro que da el indice de color regular se incluye en la lista de valores de atributos del sistema.

Método para cambiar color
*setColor(int color)
*setColor(int rojo,int verde,int azul)





SUPERFICIES CURVAS 

Los despliegues tridimensionales de las superficies curvas pueden generarse a partir de un conjunto de entrada de las funciones matemáticas que define la superficies o bien a partir de un conjunto de puntos de datos especificados por el usuario.Cuando se especifican funciones de curvas, un paquete puede emplear las ecuaciones definidoras para localizar y gráfica posiciones de pixeles a lo largo de la trayectoria de la curva, casi igual como sucede con las curvas en dos dimensiones.Un ejemplo de la clase de superficies que pueden generarse a partir de una definición funcional seda en la figura. A partir de un conjunto de datos de entrada, un paquete determina las descripciones funcionales de la curva que mejor se ajusta a los puntos de datos según las restricciones de la aplicación  En  la figura 1.7 se muestra un objeto cuya superficies curvas pueden ser definidas por un conjunto de entrada de punto de datos.




Podemos representar una linea curva tridimensional en forma analítica con la pareja de funciones.

y=f(x),    z=g(x)


Con la coordenada x seleccionada como variable independiente.los valores de las variables dependientes y,z se determinan después a partir de las ecuaciones 1.6 a medida que se avanza a través de valores de x de un extremo de la linea al otro.Esta representación tiene algunas desventajas.Si se desea una gráfica alisada,se debe cambiar la variable independiente siempre que la primera derivada (pendiente) de f(x) o bien g (x) se vuelve mayor que 1.Esto significa que se debe verificar continuamente los valores de las derivadas,que pueden volverse infinitas en algunos puntos. Así mismo, las ecuaciones anteriores ofrecen un formato desproporcionado para representar funciones con valores múltiples. Una representación mas propicia de las curvas para las aplicaciones de las gráficas es en términos de ecuaciones parametricas.




ECUACIONES PARAMETRICAS

Mediante la introducción de un curto parámetro, u, en la descripción coordenada de una curva, se puede expresar cada una de las tres coordenadas cartesianas en forma parametrica. Cualquier punto de la curva puede representarse entonces por medio de la función vectorial.

p(u)=(x(u),y(u),z(u))

Por lo general, las ecuaciones parametricas se constituyen de manera que el parámetro se define en el intervalo de 0 a 1.Por ejemplo una circunferencia en el plano xy con centro en el origen coordenado podría definirse en forma parametrica como:


También son posibles otras formas parametrícas para describir circunferencias y arcos circulares.


En el caso de una curva arbitraria,puede ser difícil idear un conjunto de ecuaciones parametrícas que definen completamente la forma de la curva.Pero cualquier curva puede aproximarse utilizando diferentes conjuntos de funciones parametrícas,sobre partes diferentes de la curva.Por lo general estas aproximaciones se forman con funciones polinomiales. Dicha construcción por partes de una curva debe implantarse cuidadosamente para asegurar de que haya transición sencilla de una sección de la curva a la siguiente.la uniformidad de una curva puede describirse a partir de la continuidad de la curva entre las secciones.La continuidad de orden 0 se refiere simplemente a que las curvas se interceptan.Continuidad de primer orden significa que las lineas tangentes(primeras derivadas) de dos secciones adyacentes de la curva son la misma en el punto de adyacencia. 


Continuidad de segundo orden quiere decir que las curvaturas(segundas derivadas) de las dos secciones de la curva son la misma en la intersección. La figura 1.8 muestra ejemplos de los tres ordenes de continuidad.




Las ecuaciones parametricas de las superficies se formulan con dos parámetros u y v. Una posición coordenada de una superficie se representa entonces por medio de la función vectorial parametrica.

p(u,v)= (x(u,v),y(u,v),z(u,v))

Las ecuaciones de las coordenadas x,y,z a menudo se acomodan de modo de que los parámetros u y v estén definidos dentro del intervalo de 0 a 1.Por ejemplo una superficie esférica puede describirse con las ecuaciones.


Donde r es el radio de la esfera.el parámetro u describe lineas de latitud constante sobre la superficie, mientras que el parámetro v describe lineas de longitud constante.Al mantener uno de estos parámetros fijo mientras que se varia el otro sobre cualquier valor dentro del intervalo 0 a 1, se podrían trazar lineas de latitud y longitud de cualquier sección esférica (fig 1.9).





En aplicaciones de diseño,una curva o superficie a menudo se define especificando interactivamente un conjunto de puntos de control,los cuales indican la forma de la curva.estos puntos de control son usados por el paquete para formal ecuaciones parametricas polinomiales para desplegar la curva definida.cuando la curva desplegada pasa a través de los punto de control, como en la figura 1.10 se dice que interpola los puntos de control.





Por otro lado, se dice que los puntos de control se aproximan si la curva desplegada pasa cerca de ellos (fig 1.11).Existen muchas técnicas para constituir ecuaciones parametricas polinomiales de curvas y superficies, dada las coordenadas de los puntos de control.entre los métodos básicos para desplegar curvas especificas con punto de control se incluyen las formulaciones de Bezier y "Spline".






REPRESENTACIONES DE "SPLINE"


Un spline es una curva diferenciable definida en porciones mediante polinomios.Para el ajuste de curvas, los splines se utilizan para aproximar formas complicadas.

La simplicidad de la representación y la facilidad de computo de los splines los hacen oculares para la representación de curvas en informática  particularmente en el terreno de los gráficos por ordenador. 





Curvas B-spline

Son las mas utilizadas en la practica:

1.-b-splines cuadraticos: fuentes True Type.

2.-b-splens cubicos: los mas comunes en programas de diseño gráfico.

En general, no pasa por ningun punto de control (ni siquiera los extremos) , aunque se pude forzar que lo haga.

Principales ventajas sobre las curvas de Bezier:

1.Es de grado acotado (aun definida por n puntos)

2. Sobre todo, mas apropiada para el diseño interactivo: mas "suaves", control local.



Dado un conjunto de puntos P0,...Pn,obtenemos una curva de aproximación compuesta por varios tramos, y las ecuaciones de cada tramo están influenciadas solamente por K vértices del polígono de control siendo K (orden de la B-spline ) un parámetro elegido a voluntad por el diseñador y lógicamente, K <n+1:




Los parametros que intervienen en una curva B-spline se enumeran a continuación:

  • P0,...Pn,n+1 vertices o puntos de control.
  • Ni,K: funciones B-spline basica de orden K.
  • d: grado de las B-spline basicas (eleccion usual,d=3).
  • K:orden de la B-spline: K=d+1.
  • N° de tramos:n-d+1.
  • suavidad global de la curva: CK-2=Cd-1.
Propiedades

  • No interpolen(salvo en P0,Pn, si así se especifica).
  • Parametricas P(t)=(x(t),y(t)).
  • Suavidad Ck-2:K es el orden de la B-spline.
  • No oscilan.
  • Locales
  • Dificiles de calcular salvo casos especiales con formula matricial: B-spline uniformes, Bezier.
  • Mayor flexibilidad: elección de nodos permiten mas tipos de curva.
CURVAS Y SUPERFICIES DE BEZIER


Pierre Bezier, ingeniero francés desarrollo este método de aproximación de spline para utilizarlo en el diseño de carrocerías de los automóviles Renault. Las spline de Bezier tienen varias propiedades que hacen que sean muy útiles y convenientes para el diseño de curvas y superficies. Así mismo,es fácil implementarla.Por esos motivos las splines de Bezier están disponibles en forma común en varios sistemas de CAD, en paquetes generales de gráficas y en paquetes seleccionados de dibujo y pintura.

Curvas de Bezier

En general,es posible ajustar una curva de bezier para cualquier numero de puntos de control.el numero de puntos de control que se debe aproximar y su posición relativa determina el grado de polinomio de Bezier.

La idea de definir geometricamente las formas no es demasiado compleja:un punto del plano puede definirse por coordenadas.Por ejemplo, un conjunto A tiene unas coordenadas(x1, y1) y aun punto B le corresponde (x2, y2).para trazar una recta entre ambos basta con conocer su posición.
.
Si en lugar de unir dos puntos con una recta se unen con una curva,surgen los elementos esenciales de una curva  Bezier: los puntos se denominan puntos de anclaje o nodos.La forma de la curva se define por unos puntos invisibles en el dibujo,denominados puntos de control,manejadores o manecillas.


Curvas lineales( grado 1)
 
  • Solo dos puntos de control (P0,P1).
  • Son lineas rectas.
  • Podemos recorrer la curva con un parametro  t є [0,1] que recorre la recta de P0 a P1.

La curva viene dada por la expresión: 

 B(t)=P0+(P1-P0) t=(1-t) P0+tP1, t  є  [0,1] .


La t en la función para curva lineal de Bezier se puede considerar como un descriptor de  cuan lejos esta B(t) de P0 a P1. Por ejemplo cuando T= 0.25, B(t) es un cuarto de la longitud entre el punto P0 y el punto P1. Como t varia entre 0 y 1 , B(t) describe una linea recta de P0 a P1.


 


Curvas cuadráticas (grado 2)
  • Tres puntos de control (P0, P1 y P2).
  • Se construyen dos curvas lineales de Bezier entre P0-P1 y P1-P2.
  • Se construye una tercera curva lineal de Bezier entre las dos anteriores.
  • El t que recorre esta tercera recta, forma nuestra curva.
 
Una curva cuadrática de Bezier es el camino trazado por función  B(t), dado los puntos: P0,P1 y  P2, 

B(t)=(1-t)^2  P0 +2t (1-t) P1+t^2 P2,t є  [0,1] .


Para curvas cuadráticas se pueden construir puntos intermedios desde Q0 a Q1  tales que t varia de 0 a 1:

  • Punto Q0 varia de P0 a P1 y describe una curva lineal de Bezier.
  • Punto Q1 varia de P1 a P2 y describe una curva lineal de Bezier.
  • Punto B(t) varia de Q0 a Q1 y describe una curva cuadrática de Bezier.








Propiedades de Bezier.

  1. El grado de la base de polinomios es uno menos que la cantidad de puntos de control.
  2. El primer y ultimo punto de la curva coincide con  el primer y ultimo punto del grafo de control.
  3. El vector tangente en los extremos de la curva tiene la misma dirección que el primer y ultimo segmento del grafo de control respectivamente.
  4. El tiene control global.


Desventajas de las curvas de Bezier

Para grafos de control complejos(formados por muchos puntos)

  1. El grado de la base es elevado
  2. Tienden a suavizar demasiado la geometría del grafo de control.
  3. Se tornan insensibles a pequeños cambios locales.El desplazamiento de un solo punto de control casi no produce efecto en la curva.
  4. El control global provoca que el desplazamiento de un solo punto de control modifique a toda la curva.


Aplicaciones de la curva de Bezier

Las curvas de Bezier han sido ampliamente usadas en los gráficos generados por ordenador para modelado de curvas suaves. como la curva esta completamente contenida en la envolvente convexa de los puntos de control,dichos puntos pueden ser suavizados gráficamente sobre el área de trabajo y usados para manipular la curva de una forma muy intuitiva.las transformaciones afines tales como traslación y rotación pueden ser aplicadas con gran facilidad a las curvas, aplicando las transformaciones respectivas sobre los puntos de control.

  


BIBLIOGRAFIA

GRAFICACION POR COMPUTADORA
DONALD HERAN /M.PAULINE BAKER



PRESENTADO POR:

GASPAR REYES MARIA DEL CARMEN

NORBERTO CRUZ GABRIELA

GARCIA HERNANDEZ IMELDA