REM by Alex Link (November 08, 1999) REM Edited by Debbie Cook (February 25, 2000) ' orbiter9b.csc WITHOBJECT "CorelPhotoPaint.Automation.9" docs& = .GetDocumentCount() IF docs& < 1 THEN GOTO noopendoc BEGIN DIALOG OBJECT Dialog1 201, 100, "Orbiter Mask", SUB OrbSub GROUPBOX 14, 4, 172, 56, .GroupBox1, "Orbiter Options" SPINCONTROL 24, 18, 35, 15, .SpinControl1 TEXT 66, 21, 61, 10, .Text1, "Number of orbits" SPINCONTROL 24, 39, 35, 15, .SpinControl2 TEXT 66, 42, 66, 11, .Text2, "Orbit radius in pixels" OKBUTTON 149, 66, 38, 14, .OK1 CANCELBUTTON 149, 82, 38, 14, .Cancel1 END DIALOG Dialog_Return_Value% = DIALOG (Dialog1) IF Dialog_Return_Value%=2 THEN STOP SUB OrbSub (BYVAL ControlID%, BYVAL Event%) IF Event=0 THEN Dialog1.SpinControl1.SETMINRANGE 2 Dialog1.SpinControl1.SETMAXRANGE 360 Dialog1.SpinControl1.SETINCREMENT 1 Dialog1.SpinControl1.SETVALUE 12 Dialog1.SpinControl2.SETMINRANGE 5 Dialog1.SpinControl2.SETMAXRANGE 1000 Dialog1.SpinControl2.SETINCREMENT 25 Dialog1.SpinControl2.SETVALUE 100 ENDIF END SUB xorb&=(Dialog1.SpinControl1.GETVALUE ())'number of orbits rr&=(Dialog1.SpinControl2.GETVALUE ()) 'rr = radius of circle xpt& = .GetDocumentWidth()/2 'x-value of center point ypt& = .GetDocumentHeight()/2 'y-value of center point xstep = 360/xorb xcur = 270 FOR I = 1 TO xorb xrad = ANGLECONVERT(1, 2, xcur) x& = xpt& + cos(xrad) * rr& y& = ypt& + sin(xrad) * rr& IF I = 1 THEN xmode& = 0 ELSE xmode& = 3 ENDIF .MaskEllipse x&-rr&, y&-rr&, x&+rr&, y&+rr&, xmode&, 0, TRUE xcur = xcur + xstep NEXT I ' .MaskEllipse xpt&-rr&, ypt&-rr&, xpt&+rr&, ypt&+rr&, 3, 0, TRUE END noopendoc: MESSAGE "You must have an open document before running this script." STOP END WITHOBJECT