FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
rotar imagen en c++ builder
bueno amigos llego a ustedes con esta pequeña duda, como puedo rotar una imagen en un angulo x, me gustaria encontrar una forma facil y practica, pero recibo cualquier ayuda, ademas si conocen algun componente que me ayude en esto se los agradeceria, las ayudas que he encontrado en el foro solo han sido para el delphi, por esto les pido ayuda. de antemano gracias.
|
#3
|
|||
|
|||
te agradeceria mucho si me indicas como puedo hacer que el builder compile el codigo ya queme salen algunos (muchos) erroes, o si te queda tiempo y no es mucha molestia, traducirme las partes mas complicadas.gracias de nuevo.
|
#4
|
||||
|
||||
Guarda el código delphi en un archivo exclusivo para él. Nombralo como quieras por ejemplo MODULO.PAS
Incluyelo en el proyecto como harías con otro módulo escrito en C. Incluye el archivo cabecera MODULO.HPP donde tengas que usar esas funciones escritas en delphi. Ese archivo cabecera lo va a crear Builder automáticamente cuando compiles es código delphi. Saludos. |
#5
|
|||
|
|||
dime donde estoy errado:
copio el codigo en el notepad y lo guardo como .pas luego abro el c++ builder, y abro el archivo .pas, pero no me permite compilar el archivo. lo otro que intento es: guardo el archivo como .pas en el notepad, luego adiciono el archivo .pas a mi proyecto, luego le doy copilar y me salen varios errores. los cuales tendre que estudiar para resolver. gracias, espero tu opinion |
#6
|
||||
|
||||
Claro, Si simplemente has copiado el código, te faltan algunas cosas.
Debes definir una unidad completa con sus cabeceras... Prueba a compilar este código tal cual, pero guardado en un archivo llamado Rotar.pas. Lo añades a tu proyecto.... De esta forma seguro que compila Saludos. EDITO: Tambien te compliará si en la linea uses colocas sólamente:
Última edición por escafandra fecha: 05-05-2008 a las 21:10:10. |
#7
|
|||
|
|||
pues gracias se resolvieron algunos errores ahora solo me salen 4:
'UNIT' expected but 'INTERFACE' found undeclared identifier TBitmap undeclared identifier TCanvas ';' expected but 'IMPLEMENTATION' found y un fatal error que dice que no puede compilar usando unit " C:\rotar.pas" |
#8
|
|||
|
|||
ahora solo me salen estos errores
el de UNIT el de IMPLEMENTATION y el ultimo que me falta |
#9
|
||||
|
||||
Si has copiado todo el código tal y como te lo he posteado, en un archivo de texto llamado Rotar.pas, no deberías tener errores.
Lo he probado en C++Builder 5 y me compila perfectamente.... Repásalo bien. Saludos. |
#10
|
|||
|
|||
muchas gracias, ya se, me habia equivocado en dos lineas, perdon por el error.
sumale una mas a mi deuda. |
#11
|
|||
|
|||
cuando le doy run a mi aplicacion me pide EnJpgGr.h, el archivo de cabecera que no tengo, crees que me falto algo.
|
#12
|
||||
|
||||
Pues esa cabecera no tiene nada que ver con el código para rotar en cuestión. Tal vez estés usando otro código, ajeno al Builder, o de algún componente no standard.
He probado la rutina en una aplicación de prueba con un boton y un TImage. El evento del botón hace esto: Código:
void __fastcall TForm1::Button1Click(TObject *Sender) { Graphics::TBitmap *Bitmap; Bitmap = Rotate(Image1->Canvas, Image1->Width, Image1->Height, 90, 0); Image1->Picture->Assign(Bitmap); delete Bitmap; } Saludos. |
#13
|
|||
|
|||
gracias ya me funciono muy bien
|
#14
|
|||
|
|||
He estado leiendo este tema y me han surgido diferentes problemas debido a q estoy programando en builder c++, no entiendo para que utiliza el back ese, y ademas cada vez que giro se me va haciendo la imagen mas pequeña.
|
#15
|
||||
|
||||
Bueno, mírate esto, que es el corazón del tema. Trata de elejir tu rectangulo de forma correcta para que no te cambie el tamaño.
Saludos. |
#16
|
|||
|
|||
No lo entiendo. Serias tan amable de poder explicarmelo minimmente, es que estoy desesperado, ya que el delphi no lo entiendo muy bien ya que lo estoy aciendo en builder c++.
Gracias |
#17
|
||||
|
||||
Bueno, yo tampoco estoy fuerte en delphi, simplemente adapte el truco 455 para poderlo compilar y usar desde el Builder C++. El autor del código original es Javier Ferrari.
Como te decía el corazón es la API de windows GDI PlgBlt a la que puedes acceder desde C++ Builder directamente. La información de su uso la tienes en la ayude del Builder para API Win32 y en la web de Microsoft. Quizás esté mas clara la explicación de la ayuda de Builder, aunque el origen de la misma es Microsoft. El resto del código no es mas que una preparación de los tres puntos vértice del paralelograma destino que está rotado y los datos del rectángulo de origen (x, y, ancho y alto). Observa que al rotar la imagen sobre el rectángulo original, quedan zonas vacías que se rellenan con una máscara si la defines. La API PlgBlt también permite escalar la imagen, con lo que puedes cambiarla de tamaño. Experimenta con ella. Espero haberte servido de alguna ayuda. Saludos. |
#19
|
|||
|
|||
Problema
Gracias a todos por la ayuda, pero sigo teniendo un poblema.
Todo me funciona bien, pero al moverse mi imagen es de 50X140 y se me sale de mi timage, con lo cual se me corta la imagen y la primera vez me lo hace bien pero las siuientes veces que voy girando m va desapareciendo hasta que desaparece del timage. |
#20
|
|||
|
|||
ayuda
solicito ayuda a mi pregunta anterior, por favar.
Gracias |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Como rotar una imagen en delphi x grados SIN DEFORMARLA? | djmetroid | Gráficos | 14 | 27-05-2008 07:07:21 |
Rotar Imagen | Rako | Gráficos | 5 | 23-11-2007 12:51:14 |
Rotar imagen jpg | ElDioni | Gráficos | 6 | 09-11-2007 11:05:50 |
rotar una imagen sin parar | jarscuba | Gráficos | 4 | 14-03-2005 09:51:31 |
Rotar una imagen | zuriel_zrf | Gráficos | 2 | 29-12-2003 19:37:53 |
|