Foro de programacion

programacion
RegistrateNewsletter
zonas:adsl:area-flash:area-php:area-asp:area-vb:area-photoshop:area-Vfox:area-Soft:area.:Mas
+ de 45.000 registrados
Secciones: Manuales-Diseño-Trucos-Recursos-Foros/Comunidad-Software-CodigoFuente-compras
AñadenosFavoritos
Secciones: Herramientas-Libros-Webmasters/Google-Noticias -Biblioteca-Cursos--Directorio-EmpleoN
Foros de Programacion - Cominidad de Programadores
 
Foros de programacion
es una web de ayuda a los programadores y webmasters, la buena utilizacion del foro sera el premio que tendremos para q este elemento sea util para los usuarios.

Colaborar: Si deseais ser moderadores de alguno de los foros estaremos encantados en que nos presteis esa ayuda , tan solo es necesario tener algun conocimiento
del tema que trata el foro y tener ganas ganas de colaborar para ser moderador mandar un mail indicando de que foro deseais ser moderador

Deseais que pongamos algun nuevo foro de programacion? ¿quieres crear un nuevo foro y ser su moderador? ponte en contacto con nosotros

Retroceder   Foros > Bases de Datos > visual fox pro

Respuesta
 
LinkBack Herramientas Desplegado
  #1 (permalink)  
Antiguo 10 de octubre,2005, 22:46
Junior Member
 
Fecha de Ingreso: ago 2005
Mensajes: 9
Predeterminado Circulos a base de puntos

¿Sabeis como se crea un circulo a base de puntos?, ahi va un ejemplo en turbo pascal
usa la UNIDAD uteclado publicada en este foro
Código:
uses crt,uteclado,graph;
     var a:real;
         gd,gm:integer;
         ancho,alto:real;
         centrox,centroy:integer;
         cociente:integer;
         tsin,tcos:integer;
         n_puntos:real;

begin
    gd:=0; { 0,1 }
    gm:=1;
    initgraph(gd,gm,'c:\tp\bgi');{}
    directvideo:=false;

{*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-}
textcolor(3);
gotoxy(1,1);
writeln('MICROPAIS 2005 - Circulo  ');
textcolor(7);
writeln('usa las teclas ARRIBA y ABAJO ¢ ESC para SALIR');

 centrox:=640 div 2 ;  { la resolucion de la pantalla  div 2 }
 centroy:=(400 div 2);

tsin:=90;
tcos:=90;

  cociente:=10{1}; { multiplicador de tama¤o normal=1 para aspecto RATIO }
  ancho:=(50 * cociente) / 10 {16}; { aspecto ratio }
  alto :=(50 * cociente) / 10 {14}; { aspecto ratio }
{
  10,13 gd=3

  si cociente =1 nos podemos evitar la division si multiplicamos por 10 y
  dividimos por 10 nos quedamos igual,paro como la pantalla no mide lo
  mismo de ancho que de alto, al crear un circulo ,parecera una elipse,
  al usar aspecto ratio podemos aproximarnos mas al crear circulo perfectos
  dependiendo del tipo de pantalla que usemos tambien podra se usado para
  crear elipses a nuestro gusto
}
  {ancho y alto del circulo aqui podemos meter el aspecto 1:1 normal}
  {si cociente =10 aqui lo normal es 10:10   16:14 etc              }

{ tsin:=trunc(sin(1)*ancho)+centrox;
 tcos:=trunc(cos(1)*alto)+centroy;{}
n_puntos:=trunc(6);{  numero de puntos totales que formam el circulo}

{*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-}
textcolor(14);
{ para probar aspecto ratio  quitar la siguiente llave de apertura ----- }
{
setcolor(14);
circle(centrox,centroy,trunc(ancho));
{----------------------------------------------------------------------- }
repeat
a:=0;
while a < 2*pi do
    begin
    tsin:=trunc(sin(a)*ancho)+centrox;
    tcos:=trunc(cos(a)*alto)+centroy;
{ aqui dibujamos los puntos con el color 15 }
      putpixel (tsin,tcos,15);
      a:=a+( (2*pi) / n_puntos );
      end;
    REPEAT UNTIL PORT[$3DA]AND 8=0;{}
{ espera para acondicionar el teclado }
repeat
      repeat
      delay(10);
      until tecla_pulsada=0;
      delay(10);
until tecla_pulsada<>0;

a:=0;
while a < 2*pi do
    begin
    tsin:=trunc(sin(a)*ancho)+centrox;
    tcos:=trunc(cos(a)*alto)+centroy;
                                 REPEAT UNTIL PORT[$3DA]AND 8=0;{ retrazado }
{ aqui borramos los puntos con el color 0 }
    putpixel (tsin,tcos,0);
    a:=a+((2*pi) / n_puntos);
    end;

if tecla_pulsada=arriba then n_puntos:=n_puntos+1;
if tecla_pulsada=abajo  then n_puntos:=n_puntos-1;
if n_puntos<1 then n_puntos:=1;
if n_puntos>360 then n_puntos:=360;{}

gotoxy(1,4);
writeln('Puntos ',n_puntos:3:0);
until tecla_pulsada=1;

end.
Responder Citando
Respuesta

Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Las caritas están Activado
El codigo [IMG] está Activado
Código HTML está Desactivado
Trackbacks are Activado
Pingbacks are Activado
Refbacks are Activado
Ir al Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Ayuda con Proyecto de Win98 a WinXP ElChupi visual basic 0 16 de junio,2005 20:18
Re: Problemas con jar alberto danuel java 2 13 de abril,2005 17:57
Problemas con Java en WinXP 64 bits bi23471 java 0 01 de enero,1970 05:34
Problemas con ASP y MDB bi23471 asp 0 01 de enero,1970 01:00
Problemas con MDB y ASP bi23471 asp 0 01 de enero,1970 01:00

Programacion : LWPI Solorecursos I programacion I abcdatos I TrucosTecnicos I servicios gratisI ofertas de ADSL Ipueblos20
Areas exclusivas:cursosIofertasIadslIwebtutoriales ISMSareaItutorialesItrucos de windows IgooglemaniaI programatium.netIcompras
noticias: SaludIOcio/cineIMusicaIMotorIDeportes IJuegos I FinanzasIMovilesIEnergiaIEcologiaITech-yIMujerIMACISaludIViajes-Pueblos
site programatium.com : site1 - site2 - site3 - site4 - site5 - site6 - site7 - site8
manuales Sugiere un manual para esta seccion
who's online
Linkanos
www.programatium.com© 1999 - web esta optimizada para Microsoft explorer 6.0
tutoriales

Content Relevant URLs by vBSEO 3.2.0