Uber Danka.  :)


On Sep 21, 2004, at 1:52 PM, Wilhelm Sanke wrote:

On Mon, 20 Sep 2004, Simon Lord wrote:

I have an object on my card which can be scaled at runtime, the next step is to get this object to scale proportionally using it's current H x W as the aspect ratio when the shiftKey is down.

So if the object is currently shaped like a rectangle, when I hold the shiftKey down and continue dragging the object will maintain the same aspect ratio at the time I held the shiftKey down.

Unfortunately I'm at a lose at to where to even start the math on this.


Sincerely, Simon



Hello Simon,

The following may not match exactly your expectations, but is maybe a starting point.

I have a "zoom" script on card "slideshow" of my stack "Slideshow Light", 82 KB (formerly to be found in Rev's User Contributions, now on my website <http://www.sanke.org>, English version, page "Sample Stacks").

From the short description:
"Slideshow allowing JPG-, GIF-, PNG- and BMP-images. Preview and re-ordering possible. Different display sizes can be set. Zoom function; adjusting of display duration during show."


This zoom function does not change the images continuously, but sets the new size - with the correct aspect ratio - after the dragging of the scrollbar thumb has finished. I also had a continuously changing version of such a zoom, but for some reason did not implement it in this slideshow stack.

 Examples from the scripts

to put the aspect ratio into Var "Proportion":

  "set the numberformat to 0.00
  put the formattedheight of image 1 into FHoehe
  put the formattedwidth of image 1 into FBreite
  put FBreite / FHoehe into Proportion"

script of the zoom scrollbar (assumes there are two extra scrollbars - that become visible when needed - to navigate inside the enlarged image):

"global Proportion, Stelle
local Neuhoehe, Neubreite
on scrollbardrag x
  put x into Neuhoehe
  put Neuhoehe * Proportion into NeuBreite
  put trunc(Neubreite) into Neubreite
  put NeuBreite&&"X"&&Neuhoehe into fld "Rechteck"
end scrollbardrag

on mouseup
  set the cursor to watch
  lock screen
  set the height of image 1 to Neuhoehe
  set the width of image 1 to NeuBreite
  set the loc of  image 1 to 512,384
  if NeuBreite > 1024 then
    put (Neubreite - 1024) div 2 into BreitDiff
    set the Startvalue of scrollbar "horizontal" to -Breitdiff
    set the Endvalue of scrollbar "horizontal" to Breitdiff
    show scrollbar "Horizontal"
  else
    hide scrollbar "horizontal"
  end if
  if Neuhoehe > 768 then
    put (Neuhoehe - 768) div 2 into HoehDiff
    set the Startvalue of scrollbar "vertical" to -Hoehdiff
    set the Endvalue of scrollbar "vertical" to Hoehdiff
    show scrollbar "vertical"
  else
    hide scrollbar "vertical"
  end if
  set the thumbpos of scrollbar "vertical" to 0
  set the thumbpos of scrollbar "horizontal" to 0
  put the 512,384 into Stelle
  set the cursor to hand
end mouseup"

Maybe this helps, if not - discard it.

Regards,

Wilhelm Sanke
http://www.sanke.org

_______________________________________________
metacard mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/metacard


Sincerely,
Simon

_______________________________________________
metacard mailing list
[EMAIL PROTECTED]
http://lists.runrev.com/mailman/listinfo/metacard

Reply via email to