;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; PROCEDURE KEPDEMO ;;; ;;; By Darrin Casebeer ;;; ;;; Kevin Tubbs ;;; ;;; Summer 98 ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;; PRO kepdemo a=4 ecc=0.5 TimeSlice=400d A1=0d A2=0d base = WIDGET_BASE(TITLE='Example of Keplers Law equal Area in Equal Time',XSIZE=270,YSIZE=400,/COLUMN) row1=WIDGET_BASE(base,/row) axisid = CW_FIELD(base,TITLE="Semimajor axis ",/FLOAT,/FRAME,$ VALUE=a,$ /ALL_EVENTS) row2=WIDGET_BASE(base,/row) eccid = CW_FIELD(base,TITLE="Eccentricity ",/FLOAT,/FRAME,VALUE=ecc,$ /ALL_EVENTS) row3=WIDGET_BASE(base,/row) tid = CW_FIELD(base,TITLE="Time in one Slice ",/FLOAT,/FRAME,$ VALUE=TimeSlice,$ /ALL_EVENTS) row4=WIDGET_BASE(base,/row) drawid = WIDGET_BUTTON(base,VALUE="Draw Elipse",/ALIGN_CENTER,XSIZE=270,YSIZE=50) ENDid=WIDGET_BUTTON(base,VALUE="END",/ALIGN_CENTER,XSIZE=270,YSIZE=50) WIDGET_CONTROL, base, /REALIZE REPEAT BEGIN ev=WIDGET_EVENT(base) CASE ev.id OF axisid: a=ev.value eccid: ecc=ev.value tid: TimeSlice=ev.value drawid: BEGIN keplers,base,a,ecc,TimeSlice,A1,A2 PRINT,A1,A2 base2 = WIDGET_BASE(TITLE='Areas',XSIZE=270,YSIZE=150,/COLUMN) row5=WIDGET_BASE(base2,/row) Area1 = CW_FIELD(base2,TITLE="Area in Slice 1 ",/FLOAT,/FRAME,$ VALUE=A1,$ /NOEDIT,/ALL_EVENTS) row6=WIDGET_BASE(base2,/row) Area2 = CW_FIELD(base2,TITLE="Area in Slice 2 ",/FLOAT,/FRAME,$ VALUE=A2,$ /NOEDIT,/ALL_EVENTS) WIDGET_CONTROL, base2, /REALIZE END ENDid: BEGIN WDELETE WIDGET_CONTROL,base,/DESTROY WIDGET_CONTROL,base2,/DESTROY RETURN END ELSE: ENDCASE END UNTIL ev.id EQ ENDid RETURN END