Título: Ayuda con algo de gráficos... Publicado por: juanchomfg en 30 Mayo 2011, 01:29 am Buenas, por empezar aclaro que soy nuevo, así que si cometo algún error espero sepan disculpar.
Soy estudiante de Bioingeniería y estoy trabajando en un Laboratorio de Bioimplantes (bioimplantes.com.ar), me fue dado un software hecho a medias y tengo que hacerle unas modificaciones... La duda que tengo es la siguiente: me dieron un software empezado a desarrollar que consiste en cargar imágenes de radiografías de boca de un paciente y resulta que hay que hacerles unas medidas sobre la imágen, o sea, yo hago click en 2 lugares distintos y el soft me tendría que decir qué distancia hay entre esos 2 puntos y graficar una recta, eso es lo que no puedo hacer, graficar la recta. -otra duda es la siguiente: sobre la imágen cargada se pueden ir haciendo modificaciones, es decir agregando cosas y cambiándolas de lugar; resulta que tengo un botón de deshacer pero deshace todas las modificaciones, no va de a una, y no sé cómo hacer para que haga eso, o sea deshacer de a uno... Si alguien me puede ayudar le agradeceré. Si necesitan algún pedazo del código o algo más para poder ayudarme se los puedo facilitar. Gracias. Voy a subir ahora el pedazo de código dónde se supone que tengo los extremos de la recta que quiero dibujar, espero ahora les sirva esto y alguien me pueda ayudar por favor...... void __fastcall TImWork::ImageClick(TObject *Sender) { if(medir) { TPoint posicion; if(medircont==1) { GetCursorPos((&posicion)); coordX=posicion.x; coordY=posicion.y; medircont++; } else if(medircont==2) { GetCursorPos((&posicion)); double X1=posicion.x; double Y1=posicion.y; coordX=abs(coordX-X1); coordY=abs(coordY-Y1); double dist=sqrt(pow(coordX,2)+ pow(coordY,2)); //Depende cuanto zoom haya if(zoom==2) dist=dist/2; if(zoom==3) dist=dist/4; dist=dist/escala; //Para que la medida tenga dos decimales hacemosl o siguiente dist=double(int(dist*100.0+.5))/100.0; Label6->Caption=(dist); medircont++; medir=false; } } Yo supongo que con estas líneas: coordX=abs(coordX-X1); coordY=abs(coordY-Y1); sería suficiente para dibujar, o sea, esas son las coordenadas, los extremos de la recta, no sé qué función podría utilizar...gracias |