Nuevas NORMAS para el foro
Bienvenido(a),
Visitante
. Favor de
ingresar
o
registrarse
.
¿Perdiste tu
email de activación?
- Agosto 30, 2008, 03:24:58
Boton Buscar
Visita:
Articulos
-
Juegos Gratis
-
Da Foros
Comunidad Underground Hispana
|
Programacion
|
Programación
|
Carbide C/C#/C++
| Tema:
Graficos 3d [ayuda]
0 Usuarios y 1 Visitante están viendo este tema.
« anterior
próximo »
Páginas:
[
1
]
Autor
Tema: Graficos 3d [ayuda] (Leído 235 veces)
neoxero
Recien Llegado
Desconectado
Mensajes: 5
Graficos 3d [ayuda]
«
en:
Octubre 21, 2007, 05:38:25 »
hola pues me gustaria saber como poder manipular graficos en 3d en C# o VB ya que es un proyecto en la escuela pero pss nada mas no nos dicen ke podemos usar ni nada solo HAGALO =)
en fin si alguien tine idea de como o con kee espero su respuesta de antemano gracias!
PD: antes habia puesto un post de manipulacion de bitmaps pero ya no l o encontre =( ese post era sobre manipulacion (rotar, zoom, translacion) ya mas o menos lo saque tengo un codigo ke puedo compartir por si les interesa
En línea
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #1 en:
Octubre 21, 2007, 10:39:59 »
hola, lo que se me ocurre son matrices, mira:
pantalla [700][800][900]
y lo usas como coordenadas x, y, z
y metes en la matriz lo que quieras, y si lo tomas siempre como que el primero (osea en donde estan los 700) es la X, el segundo (dond estan los 800) es la Y y el tercero (el de 900) es la Z, va a ser como una pantalla en 3D
creo, no se bien, que OpenGl te ayuda, en C hay unas librerias de open GL.
salu2!
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
neoxero
Recien Llegado
Desconectado
Mensajes: 5
Re: Graficos 3d [ayuda]
«
Respuesta #2 en:
Octubre 21, 2007, 01:38:17 »
gracias nio !!
ya baje varias paginas con ayuda sobre opengl ya nada mas es saber ke es lo ke nos van a pedir para empezarlo a realizar !!
por cierto sabes C# ??
porque tengo el siguiente proyecto
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
http://gtrejo.freeweb7.com/graficacion%20segunda.rar
pero has de cuenta ke lo ke me interesa de ahi es lo de el color o sombra a la derecha algo asi le puse al boton pero ese proceso dura muchisimo (30seg) e leido que con lockbits se puede optimizar pero no se como se utiliza y por mas ke analizo un ejemplo ke encontre en internet nada mas no ya que en dicho ejemplo solo invierte el color de todos los pixeles y a mi eso no me interesa.
Bueno cheka el programa funcionando para ke veas mas o menos lo ke trate de hacer
En línea
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #3 en:
Octubre 21, 2007, 01:54:40 »
30 segundos!!!
eso si que es mucho!!
c# no se, solo se C, pero me fijo en que te ayudo
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #4 en:
Octubre 21, 2007, 01:59:28 »
me fije el archivo..., pero encontre como 3 ejecutables, y un codigo php, y varios codigo C#, no entiendo..., no creo que se programe totalemte distitno en C que en C#, pero tenias que dividir en tantas partes el codigo? y los tres exe? no lo entiendo.., jaja, quisa es porque estoy cansado, pero no entiendo porque tantos archivos, o bien, no lo entiendo porque no se C#, ahora que lo pienzo en C tambien se usan varios.., jeje.
te podre ayudar en como hacer algo, pero no te puedo dar un codigo en C#, es parecido en sintaxis y if, while, etc., saber si es mayor, menor, etc. pero hay cosas que no entiendo
salu2!
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
neoxero
Recien Llegado
Desconectado
Mensajes: 5
Re: Graficos 3d [ayuda]
«
Respuesta #5 en:
Octubre 21, 2007, 05:18:57 »
jeje no se de donde sakaste un archivo con codigo PHP jejeje y los ejecutables no importa bueno el ke podria servir seria GRAFICACION SEGUNDA.EXE nada mas ya los otros no! y el archivo con codigo es Form1.CS ahi es donde esta el codigo hecho por mi y en C# los proyectos tienen extension CSproj =)
Bueno a continuacion anexo el codigo que empleo para el desvanecido (proceso de 30seg
)
Form1.CS
Código:
private void cmdcolorear_Click(object sender, EventArgs e)
{
Bitmap bm= new Bitmap(pbxoriginal.Image); // crear el objeto bitmap para uso de setpixel
Color cact,csig ; //objetos tipo color para almacenar lo de los pixels
int ymax, xmax;
xmax = bm.Width - 1;
ymax = bm.Height - 1;
int x, y,z;
int red, green, blue; //estos los use para establecer el incremento p desvanecido
//' iniciando desvanecido
for (y = 0;y<ymax;y++)
{for( x = 0;x<xmax;x++)
{
cact = bm.GetPixel(x, y);
//sombra a la derecha
if (x != xmax)
{
csig = bm.GetPixel(x + 1, y); //aky es donde leo un pixel despues para detectar cambio de color
if (cact != csig)
{
if (csig.B == 255 & csig.G == 255 & csig.R == 255)
{//los incrementos
red = csig.R-cact.R;
green = csig.G-cact.G;
blue =csig.B -cact.B;
red = Convert.ToInt16(red / 10);
green = Convert.ToInt16(green / 10);
blue = Convert.ToInt16(blue / 10);
for (z = 1; z < 11; z++)
{
bm.SetPixel(x + z, y, Color.FromArgb(255, Convert.ToInt32(cact.R + red * z), Convert.ToInt32(cact.G + green * z), Convert.ToInt32(cact.B + blue * z)));
}//end for Z setpixel
x = x + 10; //le adelanto 10 x los pixeles agregados
}//end if detectar csig = blanco
}//end if cact!=csig
}//end if x!=xmax
//sombra a la izquierda
csig = bm.GetPixel(x + 1, y);
if (cact.B == 255 && cact.G == 255 & cact.R == 255 & csig.R!=255 & csig.G!=255 & csig.B!=255)
{
red = cact.R-csig.R ;
green = cact.G- csig.G;
blue = cact.B- csig.B ;
red = Convert.ToInt16(red / 10);
green = Convert.ToInt16(green / 10);
blue = Convert.ToInt16(blue / 10);
for (z = 0; z < 10; z++)
{
bm.SetPixel(x - z, y, Color.FromArgb(255, Convert.ToInt32(csig.R + red * z), Convert.ToInt32(csig.G + green * z), Convert.ToInt32(csig.B + blue * z)));
}//end for Z setpixel
}
}//end for horizontal
}
//' Display the results.
pbxpic.Image = bm;
}//end color
bueno cualquier duda sobre el codigo me avisas
En línea
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #6 en:
Octubre 22, 2007, 03:03:20 »
estaba dormido, quisa no era PHP, pero algo parecido, es xlm o algo de eso, es el archivo form1.resx
y dice:
Código:
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="ofd.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>39</value>
</metadata>
</root>
ahi me fijo tu codigo
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #7 en:
Octubre 22, 2007, 03:30:11 »
no entiendo porque tarda tanto, el codigo lo entiendo, pero no entiendo porque tarda 30 segundos!!, jaja.
y digamos que el codigo "no te sirve", osea, si sirve, pero solo sirve para dibujos como el de prueba, si tenes un dibujo de, por ejemplo, un avion, tu codigo pone sombra en cualquier lado, quisa tendrias que poner que si el color es, por ejemplo, blaco, que ponga ahi la sombra.
salu2
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
neoxero
Recien Llegado
Desconectado
Mensajes: 5
Re: Graficos 3d [ayuda]
«
Respuesta #8 en:
Octubre 22, 2007, 03:38:21 »
jejeje si mira segun e leido dura muchisimo debido a que lee la imagen directamente algo asi existe una funcion llamada
lockbits
pero aun no le se =( y esa lo ke hace es mandar la imagen a la memoria y modificarla ahi (algo asi como mediante punteros) bueno y sobre lo de el avion pss eske es mejor empezar por lo basico no crees
ya que funcione bien este pss ahora si se podrian buscar las mejoras de antemano gracias por tu disposicion y si sabes como hacerlo en C o C++ te lo agradeceria
aaaa porke aun falta ke si son 2 figuras pegadas de color (ej verde y azul) ke en lugar de desvanecido cree una mezcla de los colores
«
Última modificación: Octubre 22, 2007, 03:43:10 por neoxero
»
En línea
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #9 en:
Octubre 22, 2007, 03:49:19 »
jaja, mira, estudia a los bitmaps, osea, que contienen, entonces abris el bitmap como un archivo, no como imagen, y guardas la info en la memoria (que supongo que es lo que hace el lockbits), y entonces lo lees de la memoria.
en C yo haria eso.
me fijo si puedo hacer algo
sino, hace esto, con la funcion que obtiene un pixel del bitmap guardas todos los bitmas en memoria, y de ahi lo lees el bitmap
hay matrices en C#?? en C se hacen asi:
Código:
int matriz_de_ejemplo [x][y];
donde x e y serian 2 variables o 2 numeros, en realidad no son x y, pero si lo tomas como tal tendrias un plano
salu2!
«
Última modificación: Octubre 22, 2007, 03:52:40 por Ni0
»
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #10 en:
Octubre 22, 2007, 03:51:59 »
no me di cuenta que al principio ya habia hablado de matrices, jaja xD
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
neoxero
Recien Llegado
Desconectado
Mensajes: 5
Re: Graficos 3d [ayuda]
«
Respuesta #11 en:
Octubre 22, 2007, 04:23:40 »
jeje bueno psss veremos ke pasa si kieres agregame al MSN
mi mail es : LOST__LINK @HOTMAIL.COM
En línea
Ni0
Gran Colaborador
Desconectado
Mensajes: 1363
Ni0-inside the source code
Re: Graficos 3d [ayuda]
«
Respuesta #12 en:
Octubre 22, 2007, 10:50:08 »
te agrego ahora mismo
veo si te puedo hacer algo en C, pero ahora la escuela me mantiene ocupado, aparte de que estoy programando un programa con alesteir, y es largo...
pero veo si encuentro un espacio de tiempo para esto, ya que no es mucho
salu2!
«
Última modificación: Octubre 22, 2007, 12:41:23 por Ni0
»
En línea
Inside The Source Code
Para ver los enlaces debes ser usuario
Crear Usuario
o
Hacer Sesion
Linux Registred User #460377
Páginas:
[
1
]
Comunidad Underground Hispana
|
Programacion
|
Programación
|
Carbide C/C#/C++
| Tema:
Graficos 3d [ayuda]
« anterior
próximo »
Ir a:
Por favor selecciona un destino:
-----------------------------
Foros De Consulta General
-----------------------------
=> Novedades
=> Dudas, Comentarios Y Sugerencias
=> Top 100
=> Off-Topic
=> Revista E-Zine
===> Noticias
-----------------------------
Phreaking, Hacking y Seguridad
-----------------------------
=> HacK GeneraL
===> Ingenieria Inversa
===> Encriptacion, Cryptografia
===> TV HACK
===> Seguridad
===> Cursos y Ezines
=====> Trucos Internet
=====> Textos Hacking
===> Defacing
=> Phreaking
===> Moviles
=> Bug y Exploits
-----------------------------
Hack Novato
-----------------------------
=> Hack para newbies
=> Todo Messenger
=> Troyanos y virus
-----------------------------
Sistemas Operativos
-----------------------------
=> Windows y otros sistemas operativos no libres
===> Problemas Tecnicos Windows
=> Sistemas operativos libres.
===> GNU/Linux
===> Manuales y Tutoriales
===> Descargas
-----------------------------
Programacion
-----------------------------
=> Programación
===> Programación Basica
===> Otros Lenguajes
===> Visual Basic y Net
===> ASM
===> Programacion Shell
===> Perl
===> Carbide C/C#/C++
===> Batch
===> SQL
=> Programacion para webmasters
===> Consultas
===> Php
===> Html
===> Java - Java Script
===> Php Nuke
===> Scripts Pre-Fabricados
===> Mysql
===> CSS y Diseño Web
-----------------------------
Artes Graficas
-----------------------------
=> Diseño Grafico
===> Battle Arts
===> Flash
===> Tutoriales
===> Galerías
===> Software
-----------------------------
Area Tecnica
-----------------------------
=> Networking & Wireless
=> Overclocking, Refrigeracion y demas
=> Hardware
===> Cursos Y manuales
=> Electronica Y Robotica
-----------------------------
Programas
-----------------------------
=> Software
===> Configuraciones de software
===> Pedidos de software
=> Cracks & Serialz
=> P2p, Bittorrent, Elinks
-----------------------------
Multimedia Y Divx
-----------------------------
=> Juegos PC Y Consolas
===> Dudas ayudas y comentarios de juegos
===> Pedidos de juegos
=> Mp3
=> Multimedia
=> Peliculas Divx
-----------------------------
Entretenimiento Y sitios de interes
-----------------------------
=> Juegos, Humor y Adultos. (Diversión)
===> Adultos
=> Paginas Webs Recomendadas
=> Videos
Powered by SMF 1.1.5
|
SMF © 2006-2007, Simple Machines LLC
Loading...