# Challenge: How can we set the rect of a polygon to its visual rect? (and a tentative solution)

capellan capellan2000 at yahoo.com
Sat Aug 15 19:56:10 EDT 2009

Hi Wilhelm,

Wilhelm Sanke, FB01 wrote:
>
> Could it be that "the option to crop" is contained in a different
>

This the part of the script that crop the image to
the size of the user created cropping rectangle:

if cropImage = "true"
then
repeat until foundGraphic = 1 -- or qfl = the number of lines of
tSelection
put line qfl of tSelection into tGraphic
if qfl = the number of lines of tSelection then put 1 into
foundGraphic
if word 1 of tGraphic is "graphic" and the forecolor of tGraphic =
cropColor
then
put 1 into foundGraphic
set the name of tGraphic to "tCropGraphicRectangle"
set the layer of graphic "tCropGraphicRectangle" to the layer of
put the rect of graphic "tCropGraphicRectangle" into zxy

do "crop" && tMaskedImage && "to" && zxy
else
end if
end repeat
end if

Wilhelm Sanke, FB01 wrote:
>
> The question is, how do you compute the points of a polygon (that will
> extend to the full size of the rect of a regular polygon without
> differences between rect and visual rect) if you do not have a normal
> polygon as a template?
>

Some time ago, i posted a stack named "export_regular_polygons"
than shows a formula to convert regular polygons (3 to 20 sides)
in polygons:

http://www.geocities.com/capellan2000/export_regular_polygons.zip

on mouseUp

if the hilite of btn "Leave Trails" is false
then
repeat with i = the number of grcs of this stack down to 3
if the name of graphic i contains "Test"
then next repeat
else delete grc i
end repeat
end if

--  if fld "sides" is a number then set the polysides of me to fld "sides"
set the polysides of me to the short name of btn id 2114

put the polysides of me into asdfg
put 360/asdfg into regularPolygonAngle

if fld "grcangle" is a number and fld "grcangle" < 361 then set the angle
of me to round(fld "grcangle")
put the angle of me into qwerty

put item 1 of the loc of me into mX
put item 2 of the loc of me into mY

put the rect of me into lkjhg
put abs(item 1 of lkjhg - item 3 of lkjhg) into plm1
put abs(item 2 of lkjhg - item 4 of lkjhg) into plm2
if plm1 <> plm2
then
if plm1 > plm2
then
put (plm1 / 2)  into polarRadius
else put (plm2 / 2 ) into polarRadius
else
put (plm1 / 2) into polarRadius
end if

if fld "exact" is a number then put polarRadius - fld "exact" into
-- this is very interesting, because this operation make the figure more
exact!

repeat with i = 1 to asdfg -- the sides of the reg poly
put (regularPolygonAngle * i) + qwerty into ang
put (ang * pi )/ 180 into radians
if the hilite of btn "Use statRound" is true
then
else -- the hilite of btn "Use round"
end if
end repeat

put item 1 of the first line of rfv,item 2 of the first line of rfv after
rfv
-- put line 1 of rfv after rfv -- using this line produces an strange bug on
-- polygons of 8 sides. It puts letters instead of numbers in the last line

set the style of the templategraphic to polygon
create grc
set the points of it to rfv
--  set the rect of it to the rect of me -- lkjhg
if the hilite of btn "Put Points into Msg" is true then put rfv

choose browse tool
end mouseUp

Wilhelm Sanke, FB01 wrote:
>
> I conclude: I think it should be a relatively easy task for the
> programmers of Revolution (or Transcript, RevTalk etc.) to abolish the
> inconsistency of regular polygons of  having different sizes for visual
> rects and their proper rects as a graphic.
>

i agree. if you fill an enhancement request in the Runrev Quality
Control Center, i will vote for it.

Have a nice weekend.

al

--
View this message in context: http://www.nabble.com/Re%3A-Challenge%3A-How-can-we-set-the-rect-of-a-polygon-to-its-visual-rect--%28and-a-tentative-solution%29-tp24988110p24989177.html
Sent from the Revolution - User mailing list archive at Nabble.com.