Wilhelm,
This is a good observation and study of the inner workings of
snapshots. There are many variations in effects that can be
accomplished here. I especially like the explanation of what I was
troubled with at first that the first rect in parens is the size and
the second is the location. I think the global location can use a bit
more explanation. I will be playing with this for a bit.
Regards,
Tom McGrath III
Lazy River Software
3mcgr...@comcast.net
iTunes Library Suite - libITS
Information and download can be found on this page:
http://www.lazyriversoftware.com/RevOne.html
On Jan 24, 2009, at 6:16 PM, Wilhelm Sanke, FB01 wrote:
For the few who might be interested in such things I have put
together a stack
demonstrating various ways of producing and using snapshots, thereby
following
the questions and findings in the recent thread "Import from
rect" (especially
of Thomas McGrath, Ken Ray, and Scott Rossi):
<http://www.sanke.org/Software/SnapshotTestStack.zip>
The Rev docs about "snapshots" have become increasingly detailed
over time, but
they do not - understandably - cover every aspect, and - they still
contain an
old error, namely concerning the paintcompression format of imported
snapshots.
The teststack allows to set the properties of the selection graphic
- with the
help of which snapshots are taken from an underlying image - in
"real time",
i.e. you can set blendlevel, fillcolor, and the ink directly and
watch the
changes in the appearance of the area of the graphic and the image
beneath it.
20 different ways related to snapshot taking are demonstrated (with
almost no
commentaries), concerning "simple" snapshots, alphadata, maskdata, and
extracting blendlevel and inks.
Additional remarks to some of the aspects:
- I found it confusing at first when I encountered a syntax like
"import/export
snapshot of rect(the rect of grc 1) of grc 1". Experimenting with
this I
understood that this twofold reference is not just tautological, but
determines
different components of the snapshot. The first term - in the
brackets -
determines the *dimensions* of the rect, the second states - as it
were - the
location of the snapshot.
- In all cases but one - what you see in the test stack is not the
"snapshot
taken", but the result of using the snapshot for masking the image
underlying
the selection graphic.
- The exception to this is the "Darkshot" - listed by Ken Ray in his
systematic
overview - where I additionally display the actual snapshot (in a
diminished
size) to show that the color of the represented transparent areas is
dependant
(but not identical with) on the ink and fillcolor of the selection
graphic.
- Using *globalloc* to determine the rect and loc of the snapshot is
about 5
times faster than using card, window, image etc. as the reference to
the
location, as in "import snapshot from the rect(<any rect>) of this
card"
- The syntax "import/export snapshot from rect(<any rect> of this
stack" or "of
stack <stackname>" is not possible. You have to get the windowID of
the stack
first and then write "snapshot from rect(trect) of window twindowID".
But it is possible to use "card x of stack <stackname>" and even -
see the docs
- access hidden or closed stacks this way.
- Snapshots taken from the selection graphic contain both alphadata
and
maskdata, that can be used to mask the underlying image.
Compared to alphadata using maskdata produces somewhat rough edges.
- Other than when applying alphadata to the image "to-be-masked",
with maskdata
you need to crop the image "to-be-masked" to the rect of the *group*
that
contains the selection graphic. The graphic and the group containing
the graphic
have different dimensions. When you group a graphic, width and
height of the
group are greater than those of the graphic.
"export snapshot from rect(the rect of grc 1) of group 1" combined
with cropping
the "image-to be-masked" to the rect of the graphic results in a
distorted
rectangle - instead of an oval. Cropping the "image-to be-masked" to
the group
produces the correct result.
Regards,
--
Wilhelm Sanke
<www.sanke.org/MetaMedia>
--------------------------------------------------------
This mail sent through http://www.uni-kassel.de/www-mail
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution