/3.1
(Extension.1
	Name:	"ImageWarp"
	Dependencies:	"$AVBIN/avdlog.dll\n$AVEXT/spatial.avx\n"
	FirstRootClassName:	"PMenu"
	Roots:	2
	Roots:	13
	Roots:	156
	Roots:	194
	Roots:	228
	Roots:	238
	Roots:	269
	Roots:	292
	Roots:	305
	Roots:	353
	Roots:	354
	Roots:	355
	Roots:	356
	Roots:	357
	Roots:	358
	Roots:	359
	Roots:	360
	Roots:	361
	Roots:	362
	Roots:	363
	Roots:	364
	Roots:	365
	Roots:	366
	Roots:	367
	Roots:	368
	Roots:	369
	Roots:	370
	Roots:	371
	Roots:	372
	Roots:	373
	Roots:	374
	Roots:	375
	Roots:	376
	Roots:	377
	Roots:	378
	Roots:	379
	Roots:	380
	Roots:	381
	Roots:	382
	Roots:	383
	Roots:	384
	Roots:	385
	Roots:	386
	Roots:	387
	Roots:	388
	Roots:	389
	Roots:	390
	Roots:	391
	Roots:	392
	Roots:	393
	Roots:	394
	Roots:	395
	Roots:	396
	Roots:	397
	Roots:	398
	Roots:	399
	Roots:	400
	Roots:	401
	Roots:	402
	Roots:	403
	Roots:	404
	Roots:	405
	Roots:	406
	Roots:	407
	Roots:	408
	Roots:	409
	Roots:	410
	Roots:	411
	Roots:	412
	Roots:	413
	Roots:	414
	Roots:	415
	Roots:	416
	Roots:	417
	Roots:	418
	Roots:	419
	Roots:	420
	Roots:	421
	Roots:	422
	Roots:	423
	Roots:	424
	Roots:	425
	Roots:	426
	Roots:	427
	Roots:	428
	Roots:	429
	Roots:	430
	Roots:	431
	Version:	31
	About:	"ImageWarp An Extension For Geo-Registering Images."
	CanUnloadScript:	367
	UnloadScript:	422
	InstallScript:	381
	UninstallScript:	421
	ExtVersion:	2
)

(PMenu.2
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Child:	3
	Child:	4
	Child:	5
	Child:	6
	Child:	7
	Child:	8
	Child:	9
	Child:	10
	Child:	11
	Child:	12
	Label:	"ImageWarp"
)

(Choice.3
	Help:	"Start a ImageWarp Session"
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"ImageWarp Session"
	Click:	"RasterWarp.BeginSession"
	Shortcut:	"Keys.None"
)

(Space.4
)

(Choice.5
	Help:	"Create Batch Table//Create a table that can be run in batch mode with multiple images"
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"Create Batch Table"
	Click:	"RasterWarp.CreateBatch"
	Shortcut:	"Keys.None"
)

(Choice.6
	Help:	"Run Batch//Run Batch mode on the active Batch table"
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"Batch Run"
	Click:	"RasterWarp.GoBatch"
	Shortcut:	"Keys.None"
)

(Space.7
)

(Choice.8
	Help:	"Import an existing table"
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"Import Table"
	Click:	"RasterWarp.ImportTable"
	Shortcut:	"Keys.None"
)

(Space.9
)

(Choice.10
	Help:	"Displays Help"
	HelpTopic:	"IDH_HELPME@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"Help"
	Click:	"RasterWarp.Help"
	Shortcut:	"Keys.None"
)

(Space.11
)

(Choice.12
	HelpTopic:	"IDH_MENU@$AVHOME\\help\\ImageWarp.hlp"
	Label:	"About"
	Click:	"RasterWarp.LoadAbout"
	Shortcut:	"Keys.None"
)

(AVDLog.13
	Name:	"RasterWarp.ToolBar"
	X:	101
	Y:	224
	W:	203
	H:	126
	HelpTopic:	"IDH_TOOLBAR@$AVHOME\\help\\ImageWarp.hlp"
	ConstrainedControlNames:	14
	ConstrainedControlNames:	15
	ConstrainedControlNames:	16
	ConstrainedControlNames:	17
	ConstrainedControlNames:	18
	ConstrainedControlNames:	19
	ConstrainedControlNames:	20
	ConstrainedControlNames:	21
	ConstrainedControlNames:	22
	ConstrainedControlNames:	23
	ConstrainedControlNames:	24
	ConstrainedControlNames:	25
	ConstrainedControlNames:	26
	ConstrainedControlNames:	27
	ConstrainedControlNames:	28
	ConstrainedControlNames:	29
	ConstrainedControlNames:	30
	ConstrainedControlNames:	31
	ConstrainedControlNames:	32
	ConstrainedControlNames:	33
	ConstrainedControlNames:	34
	ConstrainedControlNames:	35
	ConstrainedControlNames:	36
	ConstrainedControlNames:	37
	ConstrainedControlNames:	38
	ConstrainedControlNames:	39
	ConstrainedControlNames:	40
	Constraints:	41
	Constraints:	42
	Constraints:	43
	Constraints:	44
	Constraints:	45
	Constraints:	46
	Constraints:	47
	Constraints:	48
	Constraints:	49
	Constraints:	50
	Constraints:	51
	Constraints:	52
	Constraints:	53
	Constraints:	54
	Constraints:	55
	Constraints:	56
	Constraints:	57
	Constraints:	58
	Constraints:	59
	Constraints:	60
	Constraints:	61
	Constraints:	62
	Constraints:	63
	Constraints:	64
	Constraints:	65
	Constraints:	66
	Constraints:	67
	Server:	68
	ControlPanel:	69
	Title:	"ImageWarp 2.0"
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	155
)

(AVStr.14
	S:	"ShapeWarp.bZoomExtents"
)

(AVStr.15
	S:	"ShapeWarp.bZoomTheme"
)

(AVStr.16
	S:	"ShapeWarp.bZoomSelected"
)

(AVStr.17
	S:	"ShapeWarp.ViewSwitch"
)

(AVStr.18
	S:	"ShapeWarp.bCalRMS"
)

(AVStr.19
	S:	"aButton1"
)

(AVStr.20
	S:	"ShapeWarp.bDeleteGCP"
)

(AVStr.21
	S:	"ShapeWarp.bDelPntPicker"
)

(AVStr.22
	S:	"ShapeWarp.bOnOff"
)

(AVStr.23
	S:	"ShapeWarp.bZoomingIn"
)

(AVStr.24
	S:	"ShapeWarp.bZoomingOut"
)

(AVStr.25
	S:	"ShapeWarp.bClearSelect"
)

(AVStr.26
	S:	"ShapeWarp.bUndoZoom"
)

(AVStr.27
	S:	"AddThemes"
)

(AVStr.28
	S:	"aButton6"
)

(AVStr.29
	S:	"btnHelp"
)

(AVStr.30
	S:	"btnCalcFrom"
)

(AVStr.31
	S:	"btnShowSnap"
)

(AVStr.32
	S:	"btnWarpShape"
)

(AVStr.33
	S:	"btnQuit"
)

(AVStr.34
	S:	"ShapeWarp.tZoomIn"
)

(AVStr.35
	S:	"ShapeWarp.tZoomOut"
)

(AVStr.36
	S:	"ShapeWarp.tPan"
)

(AVStr.37
	S:	"ShapeWarp.tPickTool"
)

(AVStr.38
	S:	"ShapeWarp.tMovePnt"
)

(AVStr.39
	S:	"ShapeWarp.tSelect"
)

(AVStr.40
	S:	"ShapeWarp.tSelectFeature"
)

(Numb.41
	N:	85.00000000000000
)

(Numb.42
	N:	85.00000000000000
)

(Numb.43
	N:	85.00000000000000
)

(Numb.44
	N:	85.00000000000000
)

(Numb.45
	N:	85.00000000000000
)

(Numb.46
	N:	85.00000000000000
)

(Numb.47
	N:	85.00000000000000
)

(Numb.48
	N:	85.00000000000000
)

(Numb.49
	N:	85.00000000000000
)

(Numb.50
	N:	85.00000000000000
)

(Numb.51
	N:	85.00000000000000
)

(Numb.52
	N:	85.00000000000000
)

(Numb.53
	N:	85.00000000000000
)

(Numb.54
	N:	85.00000000000000
)

(Numb.55
	N:	85.00000000000000
)

(Numb.56
	N:	85.00000000000000
)

(Numb.57
	N:	85.00000000000000
)

(Numb.58
	N:	85.00000000000000
)

(Numb.59
	N:	85.00000000000000
)

(Numb.60
	N:	85.00000000000000
)

(Numb.61
	N:	85.00000000000000
)

(Numb.62
	N:	85.00000000000000
)

(Numb.63
	N:	85.00000000000000
)

(Numb.64
	N:	85.00000000000000
)

(Numb.65
	N:	85.00000000000000
)

(Numb.66
	N:	85.00000000000000
)

(Numb.67
	N:	85.00000000000000
)

(Nil.68
)

(CPanel.69
	Child:	70
	Child:	72
	Child:	74
	Child:	76
	Child:	78
	Child:	80
	Child:	82
	Child:	84
	Child:	86
	Child:	88
	Child:	90
	Child:	92
	Child:	94
	Child:	96
	Child:	98
	Child:	100
	Child:	102
	Child:	104
	Child:	106
	Child:	108
	Child:	110
	Child:	112
	Child:	113
	Child:	114
	Child:	116
	Child:	118
	Child:	120
	Child:	122
	Child:	124
	ResBox:	126
	ResBox:	127
	ResBox:	128
	ResBox:	129
	ResBox:	130
	ResBox:	131
	ResBox:	132
	ResBox:	133
	ResBox:	134
	ResBox:	135
	ResBox:	136
	ResBox:	137
	ResBox:	138
	ResBox:	139
	ResBox:	140
	ResBox:	141
	ResBox:	142
	ResBox:	143
	ResBox:	144
	ResBox:	145
	ResBox:	146
	ResBox:	147
	ResBox:	148
	ResBox:	149
	ResBox:	150
	ResBox:	151
	ResBox:	152
	ResBox:	153
	ResBox:	154
	Listening:	1
)

(Tool.70
	InternalName:	"ShapeWarp.tZoomIn"
	Help:	"Zoom In Tool//Allows the user to zoom in by dragging a rectangle. If the TO ROAM View is active then the zoom take place in the TO View."
	HelpTopic:	"IDH_ZOOMTOOLS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	71
	Cursor:	"Cursors.ZoomIn"
	Apply:	"RasterWarp.ZoomIn"
)

(AVIcon.71
	Name:	"ZoomInTool"
	Res:	"Icons.ZoomInTool"

)

(Tool.72
	InternalName:	"ShapeWarp.tZoomOut"
	Help:	"Zoom Out/Zoom Out on the selected theme. If the selected View is the TO ROAM then the TO View Zooms out."
	HelpTopic:	"IDH_ZOOMTOOLS@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	73
	Cursor:	"Cursors.ZoomOut"
	Apply:	"RasterWarp.ZoomOut"
)

(AVIcon.73
	Name:	"ZoomOutTool"
	Res:	"Icons.ZoomOutTool"

)

(Butn.74
	InternalName:	"ShapeWarp.bZoomExtents"
	Help:	"Zoom To Extent//Zooms to the extent of all themes in the active view. If the active view is TO ROAM then the zoom takes place in the TO view."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	75
	Click:	"RasterWarp.ZoomExtents"
)

(AVIcon.75
	Name:	"ZoomView"
	Res:	"Icons.ZoomView"

)

(Butn.76
	InternalName:	"ShapeWarp.bZoomTheme"
	Help:	"Zoom To Active Theme//Allows the user to zoom to the active theme. If the TO ROAM View is active then the TO View zooms to active theme."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.ActiveThemesUpdate"
	Icon:	77
	Click:	"RasterWarp.ZoomTheme"
)

(AVIcon.77
	Name:	"ZoomTheme"
	Res:	"Icons.ZoomTheme"

)

(Butn.78
	InternalName:	"ShapeWarp.bZoomSelected"
	Help:	"Zoom to Selected Feature//Allows zooming to the currently selected feature that is selected with the select feature tool."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.SelectableThemesUpdate"
	Icon:	79
	Click:	"RasterWarp.ZoomSelected"
)

(AVIcon.79
	Name:	"ZoomToSelected"
	Res:	"Icons.ZoomToSelected"

)

(Tool.80
	InternalName:	"ShapeWarp.tPan"
	Help:	"Pan//Allows the Panning of Views."
	HelpTopic:	"IDH_ZOOMTOOLS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	81
	Cursor:	"Cursors.Pan"
	Apply:	"RasterWarp.Pan"
)

(AVIcon.81
	Name:	"Pan"
	Res:	"Icons.Pan"

)

(Butn.82
	InternalName:	"ShapeWarp.ViewSwitch"
	Help:	"Toggle between Table and Views//Allows you to toggle the Table and View window. If the Views are visible then it toggles to the GCP Table. If the Table is visible then it toggles to the To and From Views."
	HelpTopic:	"IDH_TOGGLEVIEW@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	83
	Click:	"RasterWarp.ViewSwitch"
)

(AVIcon.83
	Name:	"SwitchSelect"
	Res:	"Icons.SwitchSelect"

)

(Tool.84
	InternalName:	"ShapeWarp.tPickTool"
	Help:	"GCP Pick Tool//Use this tool to pick Ground Control Points in the TO and FROM Views."
	HelpTopic:	"IDH_PICKTOOL@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	85
	Cursor:	"Cursors.CrossHair"
	Apply:	"RasterWarp.PickTool"
)

(AVIcon.85
	Name:	"AddMatch"
	Res:	"Icons.AddMatch"

)

(Tool.86
	InternalName:	"ShapeWarp.tMovePnt"
	Help:	"Move GCP//Allows the moving of a GCP in the TO or FROM Views when the GCP has been selected with the Select tool."
	HelpTopic:	"IDH_MOVEGCPTOOL@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	87
	Cursor:	"Cursors.CrossHair"
	Apply:	"RasterWarp.MoveGCP"
)

(AVIcon.87
	Name:	"SelectEdit"
	Res:	"Icons.SelectEdit"

)

(Butn.88
	InternalName:	"ShapeWarp.bCalRMS"
	Help:	"Calculate RMS//Allows you to calculate the RMS for each GCP record and displays the total in a message box."
	HelpTopic:	"IDH_CALRMS@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	89
	Click:	"RasterWarp.CalRMS"
)

(AVIcon.89
	Name:	"Calculator"
	Res:	"Icons.Calculator"

)

(Butn.90
	InternalName:	"aButton1"
	Help:	"Toggle Table Of Contents//Allows the Table of Contents to be displayed or hidden. "
	HelpTopic:	"IDH_TOGGLETOC@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	91
	Click:	"RasterWarp.ToggleTOC"
)

(AVIcon.91
	Name:	"SlideCursCursor"
	Res:	"Icons.SlideCursCursor"

)

(Butn.92
	InternalName:	"ShapeWarp.bDeleteGCP"
	Help:	"Delete GCP's//Allows the user to specify any or all GCP's and delete them."
	HelpTopic:	"IDH_DELMGCP@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	93
	Click:	"RasterWarp.DeleteGCP"
)

(AVIcon.93
	Name:	"AlignNone"
	Res:	"Icons.AlignNone"

)

(Butn.94
	InternalName:	"ShapeWarp.bDelPntPicker"
	Help:	"Delete Selected GCP//Allows the user to delete the currently selected GCP when it has been selected with the Select tool."
	HelpTopic:	"IDH_DELSINGLEGCP@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	95
	Click:	"RasterWarp.DelPntPicker"
)

(AVIcon.95
	Name:	"Erase"
	Res:	"Icons.Erase"

)

(Tool.96
	InternalName:	"ShapeWarp.tSelect"
	Help:	"Select Tool//Allows the user to select a GCP from a view."
	HelpTopic:	"IDH_SELECTIONTOOL@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	97
	Cursor:	"Cursors.Select"
	Apply:	"RasterWarp.SelectApply"
	Click:	"RasterWarp.SelectClick"
)

(AVIcon.97
	Name:	"Select"
	Res:	"Icons.Select"

)

(Butn.98
	InternalName:	"ShapeWarp.bOnOff"
	Help:	"GCPS OFF//Allows the user to select any or all GCP's and toggle them ON/OFF."
	HelpTopic:	"IDH_TOGGLEGCP@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	99
	Click:	"RasterWarp.OnOff"
)

(AVIcon.99
	Name:	"Check"
	Res:	"Icons.Check"

)

(Tool.100
	InternalName:	"ShapeWarp.tSelectFeature"
	Help:	"Select Feature//Selects a feature in the active theme by dragging a box around the feature."
	HelpTopic:	"IDH_SELECTFEATURE@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.SelectableThemesUpdate"
	Icon:	101
	Cursor:	"Cursors.Default"
	Apply:	"RasterWarp.SelectPoint"
)

(AVIcon.101
	Name:	"FeatureSelect"
	Res:	"Icons.FeatureSelect"

)

(Butn.102
	InternalName:	"ShapeWarp.bZoomingIn"
	Help:	"Zoom In//Zooms in on the TO or FROM Views"
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	103
	Click:	"RasterWarp.ZoomingIn"
)

(AVIcon.103
	Name:	"ZoomIn"
	Res:	"Icons.ZoomIn"

)

(Butn.104
	InternalName:	"ShapeWarp.bZoomingOut"
	Help:	"Zoom Out//Zooms out on the TO or FROM Views."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.HasUpdate"
	Icon:	105
	Click:	"RasterWarp.ZoomingOut"
)

(AVIcon.105
	Name:	"ZoomOut"
	Res:	"Icons.ZoomOut"

)

(Butn.106
	InternalName:	"ShapeWarp.bClearSelect"
	Help:	"Clear Selected Features//Clears the selected features in the active view."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.AttbThemesUpdate"
	Icon:	107
	Click:	"RasterWarp.ClearSelect"
)

(AVIcon.107
	Name:	"SelectNone"
	Res:	"Icons.SelectNone"

)

(Butn.108
	InternalName:	"ShapeWarp.bUndoZoom"
	Help:	"Zoom Previous//Zooms to the previous extent on the TO or FROM views."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Update:	"RasterWarp.UndoZoomUpdate"
	Icon:	109
	Click:	"RasterWarp.UndoZoom"
)

(AVIcon.109
	Name:	"ZoomPrevious"
	Res:	"Icons.ZoomPrevious"

)

(Butn.110
	InternalName:	"AddThemes"
	Help:	"Add Themes//Will add a theme(s) to the TO ROAM View."
	HelpTopic:	"IDH_STDAVBUTTONS@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	111
	Click:	"RasterWarp.AddThemes"
)

(AVIcon.111
	Name:	"AddTheme"
	Res:	"Icons.AddTheme"

)

(RButn.112
	InternalName:	"rdoAuto"
	Constraints:	0x55
	Listening:	1
	Label:	"Automatic"
)

(RButn.113
	InternalName:	"rdoManual"
	Constraints:	0x55
	Listening:	1
	Label:	"Manual"
)

(Butn.114
	InternalName:	"aButton6"
	Help:	"Load New Table//Load New Table."
	HelpTopic:	"IDH_NEWTABLE@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	115
	Click:	"RasterWarp.LoadNewTable"
)

(AVIcon.115
	Name:	"FrameTable"
	Res:	"Icons.FrameTable"

)

(Butn.116
	InternalName:	"btnHelp"
	Help:	"Help//Displays Winodow help for ImageWarp"
	HelpTopic:	"IDH_HELPME@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	117
	Click:	"RasterWarp.Help"
)

(AVIcon.117
	Name:	"Help"
	Res:	"Icons.Help"

)

(Butn.118
	InternalName:	"btnCalcFrom"
	Help:	"Calculate From GCP//Calculates the From Ground Contol Point when there are at least 4 GCP pairs."
	HelpTopic:	"IDH_CALFROM@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	119
	Click:	"RasterWarp.CalcFrom"
)

(AVIcon.119
	Name:	"from.gif"
	Data:	4e442049 6d616765 0001000f 000f0000 
	Data:	00e10909 09090909 09080800 00000000 
	Data:	00090908 08080809 08070707 07070700 
	Data:	09080707 07070308 07070707 07070009 
	Data:	08070707 07030807 07070707 07000908 
	Data:	07070707 03080707 07070707 00090908 
	Data:	08080809 08070707 07070700 09090909 
	Data:	09090b08 07070707 07070007 07070707 
	Data:	07070800 08070707 07000007 07070707 
	Data:	07080808 07070707 00000707 07070707 
	Data:	07070808 08070700 00070707 07070707 
	Data:	07080008 07070000 07070707 07070707 
	Data:	0707090b 08000007 07070707 07070707 
	Data:	070b0b08 00000707 07070707 07070707 
	Data:	08080800 00000000 00000000 00000000 
	Data:	00000000 00004000 00000000 80000000 
	Data:	00800000 80800000 00008000 80008000 
	Data:	00808002 c0c0c000 80808000 ff000000 
	Data:	00ff0000 ffff0000 0000ff00 ff00ff00 
	Data:	00ffff00 ffffff00 02000800 0a002000 
	Data:	00000000 00000000 000000
)

(Butn.120
	InternalName:	"btnShowSnap"
	Help:	"Open Snap Dialog//Opens the Snap dialog to allow setting up Snapping preferences."
	HelpTopic:	"IDH_SNAP@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	121
	Click:	"RasterWarp.ShowSnapDiag"
)

(AVIcon.121
	Name:	"SnapTool"
	Res:	"Icons.SnapTool"

)

(Butn.122
	InternalName:	"btnWarpShape"
	Help:	"Go Write the new ImageFile//Will create the new warped Image."
	HelpTopic:	"IDH_GO@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	123
	Click:	"RasterWarp.WarpRaster"
)

(AVIcon.123
	Name:	"go.gif"
	Data:	4e442049 6d616765 0001000f 000f0000 
	Data:	00e10f0f 0f0f0800 00000000 080f0f0f 
	Data:	0f0f0700 00000101 01010000 0000070f 
	Data:	0f080000 00010101 01010000 00080f0f 
	Data:	0f070000 01010101 01000007 0f0f0f0f 
	Data:	0f080000 01010101 00080f0f 0f0f0800 
	Data:	00000003 03030100 0000080f 0f070000 
	Data:	00030303 03030000 00070f0f 0f000000 
	Data:	03030303 03000000 0f0f0f0f 0f070001 
	Data:	03030300 00070f0f 0f0f0807 07000707 
	Data:	0a070700 0707080f 0f070000 00070a0a 
	Data:	0a070000 00070f0f 0f000000 070a0a0a 
	Data:	07000000 0f0f0f0f 08070007 0a0a0a07 
	Data:	0007080f 0f0f0f0f 0f080707 07070008 
	Data:	0f0f0f0f 0f0f0f0f 0f080000 00080f0f 
	Data:	0f0f0f00 00004000 00000000 80000000 
	Data:	00800000 80800000 00008000 80008000 
	Data:	00808000 80808000 c0c0c000 ff000000 
	Data:	00ff0000 ffff0000 0000ff00 ff00ff00 
	Data:	00ffff02 ffffff00 02000800 0a002000 
	Data:	00000000 00000000 000000
)

(Butn.124
	InternalName:	"btnQuit"
	Help:	"Quit//Quit the ImageWarp session."
	HelpTopic:	"IDH_QUIT@$AVHOME\\help\\ImageWarp.hlp"
	Icon:	125
	Click:	"RasterWarp.ShutDown"
)

(AVIcon.125
	Name:	"quit.gif"
	Data:	4e442049 6d616765 0001000f 000f0000 
	Data:	00e10f0f 0f0f0909 09090909 090f0f0f 
	Data:	0f0f0f0f 09090909 09090909 090f0f0f 
	Data:	0f0f0909 09090909 09090909 090f0f0f 
	Data:	09090909 09090909 09090909 090f0909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 09090909 09090909 09090909 
	Data:	09090909 0909090f 09090909 09090909 
	Data:	09090909 090f0f0f 09090909 09090909 
	Data:	0909090f 0f0f0f0f 09090909 09090909 
	Data:	090f0f0f 0f0f0f0f 09090909 0909090f 
	Data:	0f0f0f00 00004000 00000000 80000000 
	Data:	00800000 80800000 00008000 80008000 
	Data:	00808000 80808000 c0c0c000 ff000000 
	Data:	00ff0000 ffff0000 0000ff00 ff00ff00 
	Data:	00ffff02 ffffff00 02000800 0a002000 
	Data:	00000000 00000000 000000
)

(RectD.126
	Left:	30.00000000000000
	Top:	103.00000000000000
	Right:	52.00000000000000
	Bottom:	82.00000000000000
)

(RectD.127
	Left:	30.00000000000000
	Top:	81.00000000000000
	Right:	51.00000000000000
	Bottom:	60.00000000000000
)

(RectD.128
	Left:	132.00000000000000
	Top:	103.00000000000000
	Right:	154.00000000000000
	Bottom:	82.00000000000000
)

(RectD.129
	Left:	132.00000000000000
	Top:	81.00000000000000
	Right:	154.00000000000000
	Bottom:	60.00000000000000
)

(RectD.130
	Left:	132.00000000000000
	Top:	59.00000000000000
	Right:	154.00000000000000
	Bottom:	38.00000000000000
)

(RectD.131
	Left:	30.00000000000000
	Top:	60.00000000000000
	Right:	51.00000000000000
	Bottom:	39.00000000000000
)

(RectD.132
	Left:	86.00000000000000
	Top:	81.00000000000000
	Right:	108.00000000000000
	Bottom:	60.00000000000000
)

(RectD.133
	Left:	6.00000000000000
	Top:	103.00000000000000
	Right:	28.00000000000000
	Bottom:	82.00000000000000
)

(RectD.134
	Left:	6.00000000000000
	Top:	59.00000000000000
	Right:	28.00000000000000
	Bottom:	38.00000000000000
)

(RectD.135
	Left:	86.00000000000000
	Top:	103.00000000000000
	Right:	108.00000000000000
	Bottom:	82.00000000000000
)

(RectD.136
	Left:	86.00000000000000
	Top:	59.00000000000000
	Right:	108.00000000000000
	Bottom:	38.00000000000000
)

(RectD.137
	Left:	109.00000000000000
	Top:	103.00000000000000
	Right:	131.00000000000000
	Bottom:	82.00000000000000
)

(RectD.138
	Left:	109.00000000000000
	Top:	59.00000000000000
	Right:	131.00000000000000
	Bottom:	38.00000000000000
)

(RectD.139
	Left:	6.00000000000000
	Top:	81.00000000000000
	Right:	28.00000000000000
	Bottom:	60.00000000000000
)

(RectD.140
	Left:	109.00000000000000
	Top:	81.00000000000000
	Right:	131.00000000000000
	Bottom:	60.00000000000000
)

(RectD.141
	Left:	53.00000000000000
	Top:	103.00000000000000
	Right:	75.00000000000000
	Bottom:	82.00000000000000
)

(RectD.142
	Left:	155.00000000000000
	Top:	103.00000000000000
	Right:	177.00000000000000
	Bottom:	82.00000000000000
)

(RectD.143
	Left:	155.00000000000000
	Top:	81.00000000000000
	Right:	177.00000000000000
	Bottom:	60.00000000000000
)

(RectD.144
	Left:	155.00000000000000
	Top:	59.00000000000000
	Right:	177.00000000000000
	Bottom:	38.00000000000000
)

(RectD.145
	Left:	178.00000000000000
	Top:	103.00000000000000
	Right:	200.00000000000000
	Bottom:	82.00000000000000
)

(RectD.146
	Left:	178.00000000000000
	Top:	81.00000000000000
	Right:	200.00000000000000
	Bottom:	60.00000000000000
)

(RectD.147
	Left:	15.00000000000000
	Top:	125.00000000000000
	Right:	86.00000000000000
	Bottom:	111.00000000000000
)

(RectD.148
	Left:	97.00000000000000
	Top:	126.00000000000000
	Right:	159.00000000000000
	Bottom:	111.00000000000000
)

(RectD.149
	Left:	178.00000000000000
	Top:	59.00000000000000
	Right:	200.00000000000000
	Bottom:	38.00000000000000
)

(RectD.150
	Left:	170.00000000000000
	Top:	32.00000000000000
	Right:	199.00000000000000
	Bottom:	6.00000000000000
)

(RectD.151
	Left:	7.00000000000000
	Top:	33.00000000000000
	Right:	34.00000000000000
	Bottom:	8.00000000000000
)

(RectD.152
	Left:	34.00000000000000
	Top:	33.00000000000000
	Right:	62.00000000000000
	Bottom:	8.00000000000000
)

(RectD.153
	Left:	62.00000000000000
	Top:	33.00000000000000
	Right:	92.00000000000000
	Bottom:	8.00000000000000
)

(RectD.154
	Left:	92.00000000000000
	Top:	33.00000000000000
	Right:	121.00000000000000
	Bottom:	8.00000000000000
)

(Nil.155
)

(AVDLog.156
	Name:	"RasterWarp.Message"
	X:	61
	Y:	53
	W:	565
	H:	303
	ConstrainedControlNames:	157
	Constraints:	158
	Server:	159
	ControlPanel:	160
	Title:	"ImageWarp 2.0"
	Resizable:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	193
)

(AVStr.157
	S:	"aLabelButton11"
)

(Numb.158
	N:	85.00000000000000
)

(Nil.159
)

(CPanel.160
	Child:	161
	Child:	163
	Child:	164
	Child:	165
	Child:	166
	Child:	167
	Child:	168
	Child:	169
	Child:	171
	Child:	172
	Child:	173
	Child:	174
	Child:	175
	Child:	176
	Child:	177
	ResBox:	178
	ResBox:	179
	ResBox:	180
	ResBox:	181
	ResBox:	182
	ResBox:	183
	ResBox:	184
	ResBox:	185
	ResBox:	186
	ResBox:	187
	ResBox:	188
	ResBox:	189
	ResBox:	190
	ResBox:	191
	ResBox:	192
	Listening:	1
)

(AVIBox.161
	InternalName:	"aIconBox1"
	Constraints:	0x55
	Icon:	162
	Listening:	1
)

(AVIcon.162
	Name:	"DiamondGreen"
	Res:	"Icons.DiamondGreen"

)

(TextLabel.163
	InternalName:	"aTextLabel2"
	Constraints:	0x55
	Label:	"ImageWarp ver. 2.0"
	Listening:	1
)

(TextLabel.164
	InternalName:	"aTextLabel3"
	Constraints:	0x55
	Label:	"Author: Kenneth R. McVay"
	Listening:	1
)

(TextLabel.165
	InternalName:	"aTextLabel4"
	Constraints:	0x55
	Label:	"An ArcView GIS 3.x Extension for Warping Images from an unknown Datum/Projection "
	Listening:	1
)

(TextLabel.166
	InternalName:	"aTextLabel5"
	Constraints:	0x55
	Label:	"to a known Datum/Projection."
	Listening:	1
)

(TextLabel.167
	InternalName:	"aTextLabel6"
	Constraints:	0x55
	Label:	"This extension makes use of Dialog Designer Copyright 1997 Environmental Systems Research Institute, Inc."
	Listening:	1
)

(TextLabel.168
	InternalName:	"aTextLabel7"
	Constraints:	0x55
	Label:	"ArcView GIS Copyright  1992 - 1997 Environmental Systems Research Institute, Inc."
	Listening:	1
)

(AVIBox.169
	InternalName:	"aIconBox9"
	Constraints:	0x55
	Icon:	170
	Listening:	1
)

(AVIcon.170
	Name:	"fishrman.gif"
	Data:	4e442049 6d616765 00010064 00640000 
	Data:	2710ffff ffffff77 00010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010bf1 ffffffff ffffff7f 02262929 
	Data:	29292929 29292929 29292929 29292929 
	Data:	29292929 29292929 29292929 29292929 
	Data:	29292929 29292929 29292929 29292929 
	Data:	29292929 16202929 29292929 29292929 
	Data:	29292929 29292929 29292929 29292929 
	Data:	29292929 29130ff6 ffffffff ffffff7f 
	Data:	03333737 37373737 37373737 37373737 
	Data:	37373737 37373737 37373737 37373737 
	Data:	37373737 37373737 37373737 37373737 
	Data:	37373737 37373737 2c1d3737 37373737 
	Data:	37373737 37373737 37373737 37373737 
	Data:	37373737 37373737 371a0ff6 ffffffff 
	Data:	ffffff7f 04343838 38383838 38383838 
	Data:	38383838 38383838 38383838 38383838 
	Data:	38383838 38383838 38383838 38383838 
	Data:	38383838 38383838 38383838 37123838 
	Data:	38383838 38383838 38383838 38383838 
	Data:	38383838 38383838 38383838 381b0ff6 
	Data:	ffffffff ffffff7f 04363a3a 3a3a3a3a 
	Data:	3a3a3a3a 3a3a3a3a 3a3a3a3a 3a3a3a3a 
	Data:	3a3a3a3a 3a3a3a3a 3a3a3a3a 3a3a3a3a 
	Data:	3a3a3a3a 3a3a3a3a 3a3a3a3a 3a3a3a3a 
	Data:	3a18333a 3a3a3a3a 3a3a3a3a 3a3a3a3a 
	Data:	3a3a3a3a 3a3a3a3a 3a3a3a3a 3a3a3a3a 
	Data:	3a1c0ff6 ffffffff ffffff7f 04373b3b 
	Data:	3b3b3b3b 3b3b3b3b 3b3b3b3b 3b3b3b3b 
	Data:	3b3b3b3b 3b3b3b3b 3b3b3b3b 3b3b3b3b 
	Data:	3b3b3b3b 3b3b3b3b 3b3b3b3b 3b3b3b3b 
	Data:	3b3b3b3b 3b27253b 3b3b3b3b 3b3b3b3b 
	Data:	3b3b3b3b 3b3b3b3b 3b3b3b3b 3b3b3b3b 
	Data:	3b3b3b3b 3b1c0ff6 ffffffff ffffff7f 
	Data:	043c4040 40404040 40404040 40404040 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 4039173f 40404040 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 401e0ff6 ffffffff 
	Data:	ffffff7f 043c4040 40404040 40404040 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 40404040 403f143c 
	Data:	40404040 40404040 40404040 40404040 
	Data:	40404040 40404040 40404040 401e0ff6 
	Data:	ffffffff ffffff7f 043d4242 42424242 
	Data:	42424242 42424242 42424242 42424242 
	Data:	42424242 42424242 42424242 42424242 
	Data:	42424242 42424242 42424242 42424242 
	Data:	4242212f 42424242 42424242 42424242 
	Data:	42424242 42424242 42424242 42424242 
	Data:	42200ff6 ffffffff ffffff7f 043e4343 
	Data:	43434343 43434343 43434343 43434343 
	Data:	43434343 43434343 43434343 43434343 
	Data:	43434343 43434343 43434343 43434343 
	Data:	43434343 4343341d 43434343 43434343 
	Data:	43434343 43434343 43434343 43434343 
	Data:	43434343 43200ff6 ffffffff ffffff7f 
	Data:	05424747 47474747 47474747 47474747 
	Data:	47474747 47474747 47474747 47474747 
	Data:	47474747 47474747 47474747 47474747 
	Data:	47474747 47474747 47474410 46474747 
	Data:	47474747 47474747 47474747 47474747 
	Data:	47474747 47474747 47220ff6 ffffffff 
	Data:	ffffff7f 05434848 48484848 48484848 
	Data:	48484848 48484848 48484848 48484848 
	Data:	48484848 48484848 48484848 48484848 
	Data:	48484848 48484848 48484848 4848481a 
	Data:	3a484848 48484848 48484848 48484848 
	Data:	48484848 48484848 48484848 48220ff6 
	Data:	ffffffff ffffff7f 05454a4a 4a4a4a4a 
	Data:	4a4a4a4a 4a4a4a4a 4a4a4a4a 4a4a4a4a 
	Data:	4a4a4a4a 4a4a4a4a 4a4a4a4a 4a4a4a4a 
	Data:	4a4a4a4a 4a4a4a4a 4a4a4a4a 4a4a4a4a 
	Data:	4a4a4a2e 264a4a4a 4a4a4a4a 4a4a4a4a 
	Data:	4a4a4a4a 4a4a4a4a 4a4a4a4a 4a4a4a4a 
	Data:	4a230ff6 ffffffff ffffff7f 05484d4d 
	Data:	4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 
	Data:	4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 
	Data:	4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 
	Data:	4d4d4d4d 4d4d4d45 134c4d4d 4d4d4d4d 
	Data:	4d4d4d4d 4d4d4d4d 4d4d4d4d 4d4d4d4d 
	Data:	4d4d4d4d 4d240ff6 ffffffff ffffff7f 
	Data:	054a4f4f 4f4f4f4f 4f4f4f4f 4f4f4f4f 
	Data:	4f4f4f4f 4f4f4f4f 4f4f4f4f 4f4f4f4f 
	Data:	4f4f4f4f 4f4f4f4f 4f4f4f4f 4f4f4f4f 
	Data:	4f4f4f4f 4f4f4f4f 4f4f4f4d 13474f4f 
	Data:	4f4f4f4f 4f4f4f4f 4f4f4f4f 4f4f4f4f 
	Data:	4f4f4f4f 4f4f4f4f 4f260ff6 ffffffff 
	Data:	ffffff7f 054b5050 50505050 50505050 
	Data:	50505050 50505050 50505050 50505050 
	Data:	50505050 50505050 50505050 50505050 
	Data:	50505050 50505050 50505050 50505050 
	Data:	23365050 50505050 50505050 50505050 
	Data:	50505050 50505050 50505050 50260ff6 
	Data:	ffffffff ffffff7f 064c5252 52525252 
	Data:	52525252 52525252 52525252 52525252 
	Data:	52525252 52525252 52525252 52525252 
	Data:	52525252 52525252 52525252 52525252 
	Data:	52525252 39205152 52525252 52525252 
	Data:	52525252 52525252 52525252 52525252 
	Data:	52270ff6 ffffffff ffffff7f 06505656 
	Data:	56565656 56565656 56565656 56565656 
	Data:	56565656 56565656 56565656 56565656 
	Data:	56565656 56565656 56565656 56565656 
	Data:	56565656 56565656 4d115356 56565656 
	Data:	56565656 56565656 56565656 56565656 
	Data:	56565656 56290ff6 ffffffff ffffff7f 
	Data:	06515757 57575757 57575757 57575757 
	Data:	57575757 57575757 57575757 57575757 
	Data:	57575757 57575757 57575757 57575757 
	Data:	57575757 57575757 57575757 56134957 
	Data:	57575757 57575757 57575757 57575757 
	Data:	57575757 57575757 572a0ff6 ffffffff 
	Data:	ffffff7f 06555b5b 5b5b5b5b 5b5b5b5b 
	Data:	5b5b5b5b 5b5b5b5b 5b5b5b5b 5b5b5b5b 
	Data:	5b5b5b5b 5b5b5b5b 5b5b5b5b 5b5b5b5b 
	Data:	5b5b5b5b 5b5b5b5b 5b5b5b5b 5b5b5b5b 
	Data:	5b2b345b 5b5b5b5b 5b5b5b5b 5b5b5b5b 
	Data:	5b5b5b5b 5b5b5b5b 5b5b5b5b 5b2b0ff6 
	Data:	ffffffff ffffff7f 06565c5c 5c5c5c5c 
	Data:	5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c 
	Data:	5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c 
	Data:	5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c 
	Data:	5c5c5c5c 5c431b5c 5c5c5c5c 5c5c5c5c 
	Data:	5c5c5c5c 5c5c5c5c 5c5c5c5c 5c5c5c5c 
	Data:	5c2c0ff6 ffffffff ffffff7f 07585e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e590a59 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e2d0ff6 ffffffff ffffff7f 
	Data:	07585e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e1845 
	Data:	5e5e5e5e 5e5e5e5e 5e5e5e5e 5e5e5e5e 
	Data:	5e5e5e5e 5e5e5e5e 5e2d0ff6 ffffffff 
	Data:	ffffff7f 075b6262 62626262 62626262 
	Data:	62626262 62626262 62626262 62626262 
	Data:	62626262 62626262 62626262 62626262 
	Data:	62626262 62626262 62626262 62626262 
	Data:	6262332d 62626262 62626262 62626262 
	Data:	62626262 62626262 62626262 622e0ff6 
	Data:	ffffffff ffffff7f 075c6363 63636363 
	Data:	63636363 63636363 63636363 63636363 
	Data:	63636363 63636363 63636363 63636363 
	Data:	63636363 63636363 63636363 63636363 
	Data:	63636363 63634d15 62636363 63636363 
	Data:	63636363 63636363 63636363 63636363 
	Data:	632f0ff6 ffffffff ffffff7f 075f6666 
	Data:	66666666 66666666 66666666 66666666 
	Data:	66666666 66666666 66666666 66666666 
	Data:	66666666 66666666 66666666 66666666 
	Data:	66666666 66666666 6666600c 5c666666 
	Data:	66666666 66666666 66666666 66666666 
	Data:	66666666 66310ff6 ffffffff ffffff7f 
	Data:	07606767 67676767 67676767 67676767 
	Data:	67676767 67676767 67676767 67676767 
	Data:	67676767 67676767 67676767 67676767 
	Data:	67676767 67676767 67676767 6767671b 
	Data:	48676767 67676767 67676767 67676767 
	Data:	67676767 67676767 67310ff6 ffffffff 
	Data:	ffffff7f 08646b6b 6b6b6b6b 6b6b6b6b 
	Data:	6b6b6b6b 6b6b6b6b 6b6b6b6b 6b6b6b6b 
	Data:	6b6b6b6b 6b6b6b6b 6b6b6b6b 6b6b6b6b 
	Data:	6b6b6b6b 6b6b6b6b 6b6b6b6b 6b6b6b6b 
	Data:	6b6b6b35 2f6b6b6b 6b6b6b6b 6b6b6b6b 
	Data:	6b6b6b6b 6b6b6b6b 6b6b6b6b 6b330ff6 
	Data:	ffffffff ffffff7f 08656c6c 6c6c6c6c 
	Data:	6c6c6c6c 6c6c6c6c 6c6c6c6c 6c6c6c6c 
	Data:	6c6c6c6c 6c6c6c6c 6c6c6c6c 6c6c6c6c 
	Data:	6c6c6c6c 6c6c6c6c 6c6c6c6c 6c6c6c6c 
	Data:	6c6c6c6c 6c6c6c4f 156b6c6c 6c6c6c6c 
	Data:	6c6c6c6c 6c6c6c6c 6c6c6c6c 6c6c6c6c 
	Data:	6c330ff6 ffffffff ffffff7f 08697070 
	Data:	70707070 70707070 70707070 70707070 
	Data:	70707070 70707070 70707070 70707070 
	Data:	70707070 70707070 70707070 70707070 
	Data:	70707070 70707070 70707065 07677070 
	Data:	70707070 70707070 70707070 70707070 
	Data:	70707070 70360ff6 ffffffff ffffff7f 
	Data:	08697171 71717171 71717171 71717171 
	Data:	71717171 71717171 71717171 71717171 
	Data:	71717171 71717171 71717171 71717171 
	Data:	71717171 71717171 71717171 71717170 
	Data:	164d7171 71717171 71717171 71717171 
	Data:	71717171 71717171 71360ff6 ffffffff 
	Data:	ffffff7f 086b7373 73737373 73737373 
	Data:	73737373 73737373 73737373 73737373 
	Data:	73737373 73737373 73737373 73737373 
	Data:	73737373 73737373 73737373 73737373 
	Data:	73737373 32317373 73737373 73737373 
	Data:	73737373 73737373 73737373 73370ff6 
	Data:	ffffffff ffffff7f 086e7676 76767676 
	Data:	76767676 76767676 76767676 76767676 
	Data:	76767676 76767676 76767676 76767676 
	Data:	76767676 76767676 76767676 76767676 
	Data:	76767676 76767676 4f157576 76767676 
	Data:	76767676 76767676 76767676 76767676 
	Data:	76380ff6 ffffffff ffffff7f 08707878 
	Data:	78787878 78787878 78787878 78787878 
	Data:	78787878 78787878 78787878 78787878 
	Data:	78787878 78787878 78787878 78787878 
	Data:	78787878 78787878 78787878 6c056a78 
	Data:	78787878 78787878 78787878 78787878 
	Data:	78787878 783a0ff6 ffffffff ffffff7f 
	Data:	08717979 79797979 79797979 79797979 
	Data:	79797979 79797979 79797979 79797979 
	Data:	79797979 79797979 79797979 79797979 
	Data:	79797979 79797979 79797979 79797979 
	Data:	79115579 79797979 79797979 79797979 
	Data:	79797979 79797979 793a0ff6 ffffffff 
	Data:	ffffff7f 09727a7a 7a7a7a7a 7a7a7a7a 
	Data:	7a7a7a7a 7a7a7a7a 7a7a7a7a 7a7a7a7a 
	Data:	7a7a7a7a 7a7a7a7a 7a7a7a7a 7a7a7a7a 
	Data:	7a7a7a7a 7a7a7a7a 7a7a7a7a 7a7a7a7a 
	Data:	7a7a7a7a 7a2b3a7a 7a7a7a7a 7a7a7a7a 
	Data:	7a7a7a7a 7a7a7a7a 7a7a7a7a 7a3b0ff6 
	Data:	ffffffff ffffff7f 09757d7d 7d7d7d7d 
	Data:	7d7d7d7d 7d7d7d7d 7d7d7d7d 7d7d7d7d 
	Data:	7d7d7d7d 7d7d7d7d 7d7d7d7d 7d7d7d7d 
	Data:	7d7d7d7d 7d7d7d7d 7d7d7d7d 7d7d7d7d 
	Data:	7d7d7d7d 7d7d7d7d 7d481e7d 7d7d7d7d 
	Data:	7d7d7d7d 7d7d7d7d 7d7d7d7d 7d7d7d7d 
	Data:	7d3c0ff6 ffffffff ffffff7f 09777f7f 
	Data:	7f7f7f7f 7f7f7f7f 7f7f7f7f 7f7f7f7f 
	Data:	7f7f7f7f 7f7f7f7f 7f7f7f7f 7f7f7f7f 
	Data:	7f7f7f7f 7f7f7f7f 7f7f7f7f 7f7f7f7f 
	Data:	7f7f7f7f 7f7f7f7f 7f7f7f7f 7f630877 
	Data:	7f7f7f7f 7f7f7f7f 7f7f7f7f 7f7f7f7f 
	Data:	7f7f7f7f 7f3d0ff6 ffffffff ffffff7f 
	Data:	09788181 81818181 81818181 81818181 
	Data:	81818181 81818181 81818181 81818181 
	Data:	81818181 81818181 81818181 81818181 
	Data:	81818181 81818181 81818181 81818181 
	Data:	81770864 81818181 81818181 81818181 
	Data:	81818181 81818181 813e0ff6 ffffffff 
	Data:	ffffff7f 0a798282 82828282 82828282 
	Data:	82828282 82828282 82828282 82828282 
	Data:	82828282 82828282 82828282 82828282 
	Data:	82828282 82828282 82828282 82828282 
	Data:	82828282 82811b47 82828282 82828282 
	Data:	82828282 82828282 82828282 823f0ff6 
	Data:	ffffffff ffffff7f 0a7d8686 86868686 
	Data:	86868686 86868686 86868686 86868686 
	Data:	86868686 86868686 86868686 86868686 
	Data:	86868686 86868686 86868686 86868686 
	Data:	86868686 86868686 8686372a 86868686 
	Data:	86868686 86868686 86868686 86868686 
	Data:	86400ff6 ffffffff ffffff7f 0a7e8787 
	Data:	87878787 87878787 87878787 87878787 
	Data:	87878787 87878787 87878787 87878787 
	Data:	87878787 87878787 87878787 87878787 
	Data:	87878787 87878787 87878787 8787550d 
	Data:	86878787 87878787 87878787 87878787 
	Data:	87878787 87410ff6 ffffffff ffffff7f 
	Data:	0a838c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c7204 798c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c440ff6 ffffffff 
	Data:	ffffff7f 0a838c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8609 5f8c8c8c 8c8c8c8c 
	Data:	8c8c8c8c 8c8c8c8c 8c8c8c8c 8c440ff6 
	Data:	ffffffff ffffff7f 0b868f8f 8f8f8f8f 
	Data:	8f8f8f8f 8f8f8f8f 8f8f8f8f 8f8f8f8f 
	Data:	8f8f8f8f 8f8f8f8f 8f8f8f8f 8f8f8f8f 
	Data:	8f8f8f8f 8f8f8f8f 8f8f8f8f 8f8f8f8f 
	Data:	8f8f8f8f 8f8f8f8f 8f8f8f1f 29838f8f 
	Data:	8f8f8f8f 8f8f8f8f 8f8f8f8f 8f8f8f8f 
	Data:	8f450ff6 ffffffff ffffff7f 0b879090 
	Data:	90909090 90909090 90909090 90909090 
	Data:	90909090 90909090 90909090 90909090 
	Data:	90909090 90909090 90909090 90909090 
	Data:	90909090 8b7a8890 90909090 90909033 
	Data:	001d8a90 90909090 90909090 90909090 
	Data:	90909090 90450ff6 ffffffff ffffff7f 
	Data:	0b8a9494 94949494 94949494 94949494 
	Data:	94949494 94949494 94949494 94949494 
	Data:	94949494 94949494 94949494 94949494 
	Data:	94949494 94949353 0901085e 93949494 
	Data:	9494910f 00005d94 94949494 94949494 
	Data:	94949494 94949494 94470ff6 ffffffff 
	Data:	ffffff7f 0b8b9595 95959595 95959595 
	Data:	95959595 95959595 95959595 95959595 
	Data:	95959595 95959595 95959595 95959595 
	Data:	95959595 95959595 95956100 00000002 
	Data:	66959595 95958f09 00005195 95959595 
	Data:	95959595 95959595 95959595 95470ff6 
	Data:	ffffffff ffffff7f 0b8c9696 96969696 
	Data:	96969696 96969696 96969696 96969696 
	Data:	96969696 96969696 96969696 96969696 
	Data:	96969696 96969696 96969696 96952500 
	Data:	00000000 1b8b9596 96968305 00038596 
	Data:	96969696 96969696 96969696 96969696 
	Data:	96480ff6 ffffffff ffffff7f 0b8f9999 
	Data:	99999999 99999999 99999999 99999999 
	Data:	99999999 99999999 99999999 99999999 
	Data:	99999999 99999999 99999999 99999999 
	Data:	99920900 00000000 00056399 99994000 
	Data:	00269899 99999999 99999999 99999999 
	Data:	99999999 99490ff6 ffffffff ffffff7f 
	Data:	0c929c9c 9c9c9c9c 9c9c9c9c 9c9c9c9c 
	Data:	9c9c9c9c 9c9c9c9c 9c9c9c9c 9c9c9c9c 
	Data:	9c9c9c9c 9c9c9c9c 9c9c9c9c 9c9c9c9c 
	Data:	9c9c9c9c 8f190000 00000000 0e64969c 
	Data:	9c921200 00289a9c 9c9c9c9c 9c9c9c9c 
	Data:	9c9c9c9c 9c9c9c9c 9c4b0ff6 ffffffff 
	Data:	ffffff7f 0c939d9d 9d9d9d9d 9d9d9d9d 
	Data:	9d9d9d9d 9d9d9d9d 9d9d9d9d 9d9d9d9d 
	Data:	9d9d9d9d 9d9d9d9d 9d9d9d9d 9d9d9d9d 
	Data:	9d9d9d9d 9d9d9d9d 96600a00 00000000 
	Data:	0a919d9d 9c3f0000 000d999d 9d9d9d9d 
	Data:	9d9d9d9d 9d9d9d9d 9d9d9d9d 9d4b0ff6 
	Data:	ffffffff ffffff7f 0c949e9e 9e9e9e9e 
	Data:	9e9e9e9e 9e9e9e9e 9e9e9e9e 9e9e9e9e 
	Data:	9e9e9e9e 9e9e9e9e 9e9e9e9e 9e9e9e9e 
	Data:	9e9e9e9e 9e9e9e9e 9e9e9e9e 9e9e3600 
	Data:	00000000 098a9e9e 68000000 06008a9e 
	Data:	9e9e9e9e 9e9e9e9e 9e9e9e9e 9e9e9e9e 
	Data:	9e4c0ff6 ffffffff ffffff7f 0c97a1a1 
	Data:	a1a1a1a1 a1a1a1a1 a1a1a1a1 a1a1a1a1 
	Data:	a1a1a1a1 a1a1a1a1 a1a1a1a1 a1a1a1a1 
	Data:	a1a1a1a1 a1a1a1a1 a1a1a1a1 a1a1a1a1 
	Data:	a1a13100 00000000 70a1a18c 0c000000 
	Data:	2e00665b 679fa1a1 a1a1a1a1 a1a1a1a1 
	Data:	a1a1a1a1 a14e0ff6 ffffffff ffffff7f 
	Data:	0c98a3a3 a3a3a3a3 a3a3a3a3 a3a3a3a3 
	Data:	a3a3a3a3 a3a3a3a3 a3a3a3a3 a3a3a3a3 
	Data:	a3a3a3a3 a3a3a3a3 a3a3a3a3 a3a3a3a3 
	Data:	a3a3a3a3 a3750100 00000005 545c4a1a 
	Data:	00000000 69080a00 0043a2a3 a3a3a3a3 
	Data:	a3a3a3a3 a3a3a3a3 a34f0ff6 ffffffff 
	Data:	ffffff7f 0c9aa5a5 a5a5a5a5 a5a5a5a5 
	Data:	a5a5a5a5 a5a5a5a5 a5a5a5a5 a5a5a5a5 
	Data:	a5a5a5a5 a5a5a5a5 a5a5a5a5 a5a5a5a5 
	Data:	a5a5a5a5 a5a5a5a5 9e1c0000 00000000 
	Data:	00000000 0000001e 9f150000 0013a3a5 
	Data:	a5a5a5a5 a5a5a5a5 a5a5a5a5 a54f0ff6 
	Data:	ffffffff ffffff7f 0c9ba6a6 a6a6a6a6 
	Data:	a6a6a6a6 a6a6a6a6 a6a6a6a6 a6a6a6a6 
	Data:	a6a6a6a6 a6a6a6a6 a6a6a6a6 a6a6a6a6 
	Data:	a6a6a6a6 a6a6a6a6 a6a6a6a6 75000000 
	Data:	00000000 00000000 0000006a a6290000 
	Data:	003ba5a6 a6a6a6a6 a6a6a6a6 a6a6a6a6 
	Data:	a6500ff6 ffffffff ffffff7f 0c9faaaa 
	Data:	aaaaaaaa aaaaaaaa aaaaaaaa aaaaaaaa 
	Data:	aaaaaaaa aaaaaaaa aaaaaaaa aaaaaaaa 
	Data:	aaaaaaaa aa905247 6ea4aaaa aaaaaaaa 
	Data:	51000000 00000000 00000000 000031a6 
	Data:	aa440348 5ba3aaaa aaaaaaaa aaaaaaaa 
	Data:	aaaaaaaa aa520ff6 ffffffff ffffff7f 
	Data:	0da0abab abababab abababab abababab 
	Data:	abababab abababab abababab abababab 
	Data:	abababab abababab 860e0000 0033a3ab 
	Data:	abababaa 30000000 00000000 00000000 
	Data:	1247a0ab ab590188 abababab abababab 
	Data:	abababab abababab ab530ff6 ffffffff 
	Data:	ffffff7f 0da5b0b0 b0b0b0b0 b0b0b0b0 
	Data:	b0b0b0b0 b0b0b0b0 b0b0b0b0 b0b0b0b0 
	Data:	b0b0b0b0 b0b0b0b0 b0b0b0a6 17000000 
	Data:	000041ab b0b0b0ae 13000000 00000000 
	Data:	0039759a afb0b0b0 af56002b a1b0b0b0 
	Data:	b0b0b0b0 b0b0b0b0 b0b0b0b0 b0550ff6 
	Data:	ffffffff ffffff7f 0da5b0b0 b0b0b0b0 
	Data:	b0b0b0b0 b0b0b0b0 b0b0b0b0 b0b0b0b0 
	Data:	b0b0b0b0 b0b0b0b0 b0b0b0b0 b0b0b076 
	Data:	00000000 0000072b a0b0b0a8 01000000 
	Data:	00000000 0054b0b0 b0938977 40030000 
	Data:	7ab0b0b0 b0b0b0b0 b0b0b0b0 b0b0b0b0 
	Data:	b0550ff6 ffffffff ffffff7f 0da6b2b2 
	Data:	b2b2b2b2 b2b2b2b2 b2b2b2b2 b2b2b2b2 
	Data:	b2b2b2b2 b2b2b2b2 b2b2b2b2 b2b2b2b2 
	Data:	b2b2b258 00000000 000010a6 b0b2b291 
	Data:	00000000 00000000 000b521c 0e030000 
	Data:	00000000 73b2b2b2 b2b2b2b2 b2b2b2b2 
	Data:	b2b2b2b2 b2560ff6 ffffffff ffffff7f 
	Data:	0da7b3b3 b3b3b3b3 b3b3b3b3 b3b3b3b3 
	Data:	b3b3b3b3 b3b3b3b3 b3b3b3b3 b3b3b3b3 
	Data:	b3b3b3b3 b3b3ac26 00000000 000032b3 
	Data:	b3b3b37c 00000000 00000000 00000000 
	Data:	00000000 02141620 a0b3b3b3 b3b3b3b3 
	Data:	b3b3b3b3 b3b3b3b3 b3560ff6 ffffffff 
	Data:	ffffff7f 0eacb8b8 b8b8b8b8 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b8b8b8b8 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b78e5400 00000000 
	Data:	000022b7 b8b8b874 00000000 00000000 
	Data:	00000000 0000000a 7bb0b1b1 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b8b8b8b8 b8590ff6 
	Data:	ffffffff ffffff7f 0eacb8b8 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b8b8b8b8 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b8b8b884 28000000 
	Data:	00000000 00029db8 b8b8b87b 00000000 
	Data:	00000000 00000000 001563a0 b8b8b8b8 
	Data:	b8b8b8b8 b8b8b8b8 b8b8b8b8 b8b8b8b8 
	Data:	b8590ff6 ffffffff ffffff7f 0eaebaba 
	Data:	babababa babababa babababa babababa 
	Data:	babababa babababa babababa baba8a04 
	Data:	00000000 00000000 0016b2ba bababa83 
	Data:	00000000 00000000 00000a35 5ba9baba 
	Data:	babababa babababa babababa babababa 
	Data:	babababa ba5a0ff6 ffffffff ffffff7f 
	Data:	0eb0bcbc bcbcbcbc bcbcbcbc bcbcbcbc 
	Data:	bcbcbcbc bcbcbcbc bcbcbcbc bcbcbcbc 
	Data:	bcba3800 00000000 00000000 00078bbc 
	Data:	bcbcbc89 00000000 00000000 000010aa 
	Data:	bcbcbcbc bcbcbcbc bcbcbcbc bcbcbcbc 
	Data:	bcbcbcbc bcbcbcbc bc5a0ff6 ffffffff 
	Data:	ffffff7f 0eb3bfbf bfbfbfbf bfbfbfbf 
	Data:	bfbfbfbf bfbfbfbf bfbfbfbf bfbfbfbf 
	Data:	bfbfbfbf bfb50900 00000000 00000000 
	Data:	000039bf bfbfbf8e 00000000 00000000 
	Data:	00000052 bebfbfbf bfbfbfbf bfbfbfbf 
	Data:	bfbfbfbf bfbfbfbf bfbfbfbf bf5c0ff6 
	Data:	ffffffff ffffff7f 0eb4c0c0 c0c0c0c0 
	Data:	c0c0c0c0 c0c0c0c0 c0c0c0c0 c0c0c0c0 
	Data:	c0c0c0c0 c0c0c0c0 c0b60900 00000000 
	Data:	00000000 000040c0 c0c0c093 00000000 
	Data:	00000000 0000000d aec0c0c0 c0c0c0c0 
	Data:	c0c0c0c0 c0c0c0c0 c0c0c0c0 c0c0c0c0 
	Data:	c05d0ff6 ffffffff ffffff7f 0eb6c2c2 
	Data:	c2c2c2c2 c2c2c2c2 c2c2c2c2 c2c2c2c2 
	Data:	c2c2c2c2 c2c2c2c2 c2c2c2c2 c2650000 
	Data:	00000000 00000000 000015a5 c2c2c296 
	Data:	00000000 00000000 00000000 6fbcc1c2 
	Data:	c2c2c2c2 c2c2c2c2 c2c2c2c2 c2c2c2c2 
	Data:	c2c2c2c2 c25e0ff6 ffffffff ffffff7f 
	Data:	0eb8c5c5 c5c5c5c5 c5c5c5c5 c5c5c5c5 
	Data:	c5c5c5c5 c5c5c5c5 c5c5c5c5 c5c5c5c5 
	Data:	c5340000 00000000 00000000 0000003b 
	Data:	c5c5c59a 00000000 00000000 00000000 
	Data:	061c3558 75909b9f b6c5c5c5 c5c5c5c5 
	Data:	c5c5c5c5 c5c5c5c5 c55f0ff6 ffffffff 
	Data:	ffffff7f 0fbac7c7 c7c7c7c7 c7c7c7c7 
	Data:	c7c7c7c7 c7c7c7c7 c7c7c7c7 c7c7c7c7 
	Data:	c7c7c7c7 c5120000 00000000 00000000 
	Data:	00000020 c1c7c79c 00000000 00000000 
	Data:	00000000 00000000 00000102 1497c7c7 
	Data:	c7c7c7c7 c7c7c7c7 c7c7c7c7 c7600ff6 
	Data:	ffffffff ffffff7f 0fbdcaca cacacaca 
	Data:	cacacaca cacacaca cacacaca cacacaca 
	Data:	cacacaca cacacaca b2040000 00000000 
	Data:	00000000 00000000 6cc9caa0 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	001bc3ca cacacaca cacacaca cacacaca 
	Data:	ca610ff6 ffffffff ffffff7f 0fbfcccc 
	Data:	cccccccc cccccccc cccccccc cccccccc 
	Data:	cccccccc cccccccc cccccccc 8f000000 
	Data:	00000000 00000000 00000000 0395cc99 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 0002aacc cccccccc cccccccc 
	Data:	cccccccc cc620ff6 ffffffff ffffff7f 
	Data:	0fc1cece cececece cececece cececece 
	Data:	cececece cececece cececece cececece 
	Data:	5a000000 00000000 00000000 00000000 
	Data:	003ace69 00000000 00000000 00000000 
	Data:	00000000 00000000 000090ce cececece 
	Data:	cececece cececece ce630ff6 ffffffff 
	Data:	ffffff7f 0fc2cfcf cfcfcfcf cfcfcfcf 
	Data:	cfcfcfcf cfcfcfcf cfcfcfcf cfcfcf78 
	Data:	4176cfc1 1a000000 00000000 00000000 
	Data:	00000000 000cab14 00000000 00000000 
	Data:	00000000 00000000 00000000 000031ca 
	Data:	cfcfcfcf cfcfcfcf cfcfcfcf cf640ff6 
	Data:	ffffffff ffffff7f 0fc5d3d3 d3d15b76 
	Data:	d3d3d3d3 d3d3d3d3 d3d3d3d3 d3d3d3d3 
	Data:	d3d3d331 000e3326 00000000 00000000 
	Data:	00000000 00000000 00000f00 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000046 50555b65 7079868f 969eabb6 
	Data:	c2620ef4 fdfeffff ffffff7f 10c6d4d4 
	Data:	d4d01842 d4d4d4d4 d4d4d4d4 d4d4d4d4 
	Data:	d4d4d4d4 d4d08a0a 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 0000000d 1d2aa385 b9ffff7f 
	Data:	10c8d6d6 d6d21842 d6d6d6d6 d6d6d6d6 
	Data:	d6d6d6d6 d6d6d5c2 86300100 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00453700 
	Data:	02c7fc7e 10c8d6d6 d6d21842 d6d6d6d6 
	Data:	d6d6d6d6 d6d5cebd 95653408 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	0dd40000 0018321f 0550626c 72740d28 
	Data:	868a8e90 8f857767 4b301500 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000011 cdff1000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000081 fffff122 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 000008f2 fffffe60 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000ff6 
	Data:	ffffffc5 04000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	02270ff6 fffffffe 4b000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 636e0ff6 ffffffff d1050000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000041 dc6f0ff6 ffffffff 
	Data:	fe740000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00002dd6 e8700ff6 
	Data:	ffffffff ffee2700 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 0019d7eb 
	Data:	eb720ff6 ffffffff ffffc607 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	012aebee ee730ff6 ffffffff ffffff69 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 0a263b65 eb740ff6 ffffffff 
	Data:	ffffff7f 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 002b76bc f1740ff6 
	Data:	ffffffff ffffff7f 10670300 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 001d5562 
	Data:	63350ff6 ffffffff ffffff7f 12e5a024 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	0000002b 714c0ff5 ffffffff ffffff7f 
	Data:	1278432a 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000001 0e0902bf ffffffff 
	Data:	ffffff7f 11b54f0e 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000002 08060af5 
	Data:	ffffffff ffffff7f 010b0200 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000025 
	Data:	623d0df5 ffffffff ffffde59 06470000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00002fe6 f87a0ff6 ffffffff ffffb41b 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	00000000 00000003 24280ff6 ffffffff 
	Data:	fffff024 00010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010101 
	Data:	01010101 01010101 01010101 01010bf1 
	Data:	ffff0000 03000000 00010101 02020203 
	Data:	03030404 04050505 06060607 07070808 
	Data:	08090909 0a0a0a0b 0b0b0c0c 0c0d0d0d 
	Data:	0e0e0e0f 0f0f1010 10111111 12121213 
	Data:	13131414 14151515 16161617 17171818 
	Data:	18191919 1a1a1a1b 1b1b1c1c 1c1d1d1d 
	Data:	1e1e1e1f 1f1f2020 20212121 22222223 
	Data:	23232424 24252525 26262627 27272828 
	Data:	28292929 2a2a2a2b 2b2b2c2c 2c2d2d2d 
	Data:	2e2e2e2f 2f2f3030 30313131 32323233 
	Data:	33333434 34353535 36363637 37373838 
	Data:	38393939 3a3a3a3b 3b3b3c3c 3c3d3d3d 
	Data:	3e3e3e3f 3f3f4040 40414141 42424243 
	Data:	43434444 44454545 46464647 47474848 
	Data:	48494949 4a4a4a4b 4b4b4c4c 4c4d4d4d 
	Data:	4e4e4e4f 4f4f5050 50515151 52525253 
	Data:	53535454 54555555 56565657 57575858 
	Data:	58595959 5a5a5a5b 5b5b5c5c 5c5d5d5d 
	Data:	5e5e5e5f 5f5f6060 60616161 62626263 
	Data:	63636464 64656565 66666667 67676868 
	Data:	68696969 6a6a6a6b 6b6b6c6c 6c6d6d6d 
	Data:	6e6e6e6f 6f6f7070 70717171 72727273 
	Data:	73737474 74757575 76767677 77777878 
	Data:	78797979 7a7a7a7b 7b7b7c7c 7c7d7d7d 
	Data:	7e7e7e7f 7f7f8080 80818181 82828283 
	Data:	83838484 84858585 86868687 87878888 
	Data:	88898989 8a8a8a8b 8b8b8c8c 8c8d8d8d 
	Data:	8e8e8e8f 8f8f9090 90919191 92929293 
	Data:	93939494 94959595 96969697 97979898 
	Data:	98999999 9a9a9a9b 9b9b9c9c 9c9d9d9d 
	Data:	9e9e9e9f 9f9fa0a0 a0a1a1a1 a2a2a2a3 
	Data:	a3a3a4a4 a4a5a5a5 a6a6a6a7 a7a7a8a8 
	Data:	a8a9a9a9 aaaaaaab ababacac acadadad 
	Data:	aeaeaeaf afafb0b0 b0b1b1b1 b2b2b2b3 
	Data:	b3b3b4b4 b4b5b5b5 b6b6b6b7 b7b7b8b8 
	Data:	b8b9b9b9 babababb bbbbbcbc bcbdbdbd 
	Data:	bebebebf bfbfc0c0 c0c1c1c1 c2c2c2c3 
	Data:	c3c3c4c4 c4c5c5c5 c6c6c6c7 c7c7c8c8 
	Data:	c8c9c9c9 cacacacb cbcbcccc cccdcdcd 
	Data:	cecececf cfcfd0d0 d0d1d1d1 d2d2d2d3 
	Data:	d3d3d4d4 d4d5d5d5 d6d6d6d7 d7d7d8d8 
	Data:	d8d9d9d9 dadadadb dbdbdcdc dcdddddd 
	Data:	dedededf dfdfe0e0 e0e1e1e1 e2e2e2e3 
	Data:	e3e3e4e4 e4e5e5e5 e6e6e6e7 e7e7e8e8 
	Data:	e8e9e9e9 eaeaeaeb ebebecec ecededed 
	Data:	eeeeeeef efeff0f0 f0f1f1f1 f2f2f2f3 
	Data:	f3f3f4f4 f4f5f5f5 f6f6f6f7 f7f7f8f8 
	Data:	f8f9f9f9 fafafafb fbfbfcfc fcfdfdfd 
	Data:	fefefeff ffff0002 00080005 00180000 
	Data:	00000000 00000000 0000
)

(LButn.171
	InternalName:	"aLabelButton11"
	Label:	"OK"
	Click:	"RasterWarp.OKCont"
)

(TextLabel.172
	InternalName:	"aTextLabel9oi"
	Constraints:	0x55
	Label:	"This extension makes use of Spatial Analyst Copyright 1996 Environmental Systems Research Institute, Inc."
	Listening:	1
)

(TextLabel.173
	InternalName:	"aTextLabelasd"
	Constraints:	0x55
	Label:	"This extension uses the JPEG LIB Release 6B provided by the Independent JPEG Group."
	Listening:	1
)

(TextLabel.174
	InternalName:	"aTextLabellkj"
	Constraints:	0x55
	Label:	"Copyright (c) 1991 - 1998 Thomas G. Lane."
	Listening:	1
)

(TextLabel.175
	InternalName:	"tiffliblbl"
	Constraints:	0x55
	Label:	"This extension uses the LibTiff Release V3.4beta036 provided by Sam Leffler and Silicon Graphics, Inc."
	Listening:	1
)

(TextLabel.176
	InternalName:	"cpyrgtsl"
	Constraints:	0x55
	Label:	"Copyright (c) 1988-1998 Sam Leffler"
	Listening:	1
)

(TextLabel.177
	InternalName:	"cprgtsgi"
	Constraints:	0x55
	Label:	"Copyright (c) Silicon Graphics, Inc."
	Listening:	1
)

(RectD.178
	Left:	12.00000000000000
	Top:	42.00000000000000
	Right:	50.00000000000000
	Bottom:	14.00000000000000
)

(RectD.179
	Left:	58.00000000000000
	Top:	37.00000000000000
	Right:	202.00000000000000
	Bottom:	20.00000000000000
)

(RectD.180
	Left:	57.00000000000000
	Top:	58.00000000000000
	Right:	279.00000000000000
	Bottom:	38.00000000000000
)

(RectD.181
	Left:	9.00000000000000
	Top:	98.00000000000000
	Right:	454.00000000000000
	Bottom:	76.00000000000000
)

(RectD.182
	Left:	9.00000000000000
	Top:	113.00000000000000
	Right:	166.00000000000000
	Bottom:	91.00000000000000
)

(RectD.183
	Left:	8.00000000000000
	Top:	131.00000000000000
	Right:	530.00000000000000
	Bottom:	110.00000000000000
)

(RectD.184
	Left:	9.00000000000000
	Top:	160.00000000000000
	Right:	421.00000000000000
	Bottom:	140.00000000000000
)

(RectD.185
	Left:	446.00000000000000
	Top:	109.00000000000000
	Right:	560.00000000000000
	Bottom:	-1.00000000000000
)

(RectD.186
	Left:	241.00000000000000
	Top:	290.00000000000000
	Right:	312.00000000000000
	Bottom:	253.00000000000000
)

(RectD.187
	Left:	7.00000000000000
	Top:	141.00000000000000
	Right:	516.00000000000000
	Bottom:	124.00000000000000
)

(RectD.188
	Left:	8.00000000000000
	Top:	182.00000000000000
	Right:	525.00000000000000
	Bottom:	159.00000000000000
)

(RectD.189
	Left:	8.00000000000000
	Top:	190.00000000000000
	Right:	298.00000000000000
	Bottom:	171.00000000000000
)

(RectD.190
	Left:	7.00000000000000
	Top:	219.00000000000000
	Right:	507.00000000000000
	Bottom:	192.00000000000000
)

(RectD.191
	Left:	7.00000000000000
	Top:	224.00000000000000
	Right:	221.00000000000000
	Bottom:	207.00000000000000
)

(RectD.192
	Left:	7.00000000000000
	Top:	242.00000000000000
	Right:	193.00000000000000
	Bottom:	220.00000000000000
)

(Nil.193
)

(AVDLog.194
	Name:	"RasterWarp.SnapDiag"
	X:	71
	Y:	73
	W:	159
	H:	100
	ConstrainedControlNames:	195
	ConstrainedControlNames:	196
	ConstrainedControlNames:	197
	ConstrainedControlNames:	198
	ConstrainedControlNames:	199
	ConstrainedControlNames:	200
	Constraints:	201
	Constraints:	202
	Constraints:	203
	Constraints:	204
	Constraints:	205
	Constraints:	206
	Server:	207
	ControlPanel:	208
	Title:	"Snapping"
	AlwaysOnTop:	1
	HasTitleBar:	1
	Closeable:	1
	DefaultButton:	227
)

(AVStr.195
	S:	"FromTheme"
)

(AVStr.196
	S:	"ToTheme"
)

(AVStr.197
	S:	"FromSnapType"
)

(AVStr.198
	S:	"ToSnapType"
)

(AVStr.199
	S:	"tFromSnap"
)

(AVStr.200
	S:	"tToSnap"
)

(Numb.201
	N:	85.00000000000000
)

(Numb.202
	N:	85.00000000000000
)

(Numb.203
	N:	85.00000000000000
)

(Numb.204
	N:	85.00000000000000
)

(Numb.205
	N:	85.00000000000000
)

(Numb.206
	N:	85.00000000000000
)

(Nil.207
)

(CPanel.208
	Child:	209
	Child:	210
	Child:	211
	Child:	212
	Child:	213
	Child:	214
	Child:	215
	Child:	217
	ResBox:	219
	ResBox:	220
	ResBox:	221
	ResBox:	222
	ResBox:	223
	ResBox:	224
	ResBox:	225
	ResBox:	226
	Listening:	1
)

(TextLabel.209
	InternalName:	"aTextLabel1"
	Constraints:	0x55
	Label:	"From View"
	Listening:	1
)

(TextLabel.210
	InternalName:	"aTextLabel2"
	Constraints:	0x55
	Label:	"To View"
	Listening:	1
)

(LButn.211
	InternalName:	"FromTheme"
	Help:	"Pick Theme From//Pick the theme to snap to for the FROM View."
	Label:	"Pick Theme"
	Click:	"RasterWarp.FromPickThemeSnap"
)

(LButn.212
	InternalName:	"ToTheme"
	Help:	"Pick Theme TO//Pick the theme to snap to for the TO View."
	Label:	"Pick Theme"
	Click:	"RasterWarp.ToPickThemeSnap"
)

(LButn.213
	InternalName:	"FromSnapType"
	Help:	"Snap Type FROM//Pick the snapping type for the FROM View."
	Label:	"Snap Type"
	Click:	"RasterWarp.FromSnapType"
)

(LButn.214
	InternalName:	"ToSnapType"
	Help:	"Snap Type TO//Pick the snapping type for the TO View."
	Label:	"Snap Type"
	Click:	"RasterWarp.ToSnapType"
)

(Tool.215
	InternalName:	"tFromSnap"
	Help:	"Tolerence FROM//Pick the snapping tolerence for the FROM View by dragging a circle."
	Icon:	216
	Cursor:	"Cursors.Default"
	Apply:	"RasterWarp.FromSnapRadius"
)

(AVIcon.216
	Name:	"SnapTool"
	Res:	"Icons.SnapTool"

)

(Tool.217
	InternalName:	"tToSnap"
	Help:	"Tolerence TO//Pick the snapping tolerence for the TO View by dragging a circle."
	Icon:	218
	Cursor:	"Cursors.Default"
	Apply:	"RasterWarp.ToSnapRadius"
)

(AVIcon.218
	Name:	"SnapTool"
	Res:	"Icons.SnapTool"

)

(RectD.219
	Left:	14.00000000000000
	Top:	23.00000000000000
	Right:	71.00000000000000
	Bottom:	8.00000000000000
)

(RectD.220
	Left:	97.00000000000000
	Top:	24.00000000000000
	Right:	140.00000000000000
	Bottom:	9.00000000000000
)

(RectD.221
	Left:	8.00000000000000
	Top:	45.00000000000000
	Right:	73.00000000000000
	Bottom:	26.00000000000000
)

(RectD.222
	Left:	86.00000000000000
	Top:	45.00000000000000
	Right:	152.00000000000000
	Bottom:	26.00000000000000
)

(RectD.223
	Left:	8.00000000000000
	Top:	67.00000000000000
	Right:	73.00000000000000
	Bottom:	48.00000000000000
)

(RectD.224
	Left:	87.00000000000000
	Top:	68.00000000000000
	Right:	152.00000000000000
	Bottom:	48.00000000000000
)

(RectD.225
	Left:	27.00000000000000
	Top:	95.00000000000000
	Right:	48.00000000000000
	Bottom:	76.00000000000000
)

(RectD.226
	Left:	108.00000000000000
	Top:	96.00000000000000
	Right:	130.00000000000000
	Bottom:	76.00000000000000
)

(Nil.227
)

(AVDLog.228
	Name:	"RasterWarp.MessageStatus"
	X:	61
	Y:	53
	W:	345
	H:	192
	ConstrainedControlNames:	229
	Constraints:	230
	Server:	231
	ControlPanel:	232
	Title:	"Status"
	Resizable:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	237
)

(AVStr.229
	S:	"close"
)

(Numb.230
	N:	85.00000000000000
)

(Nil.231
)

(CPanel.232
	Child:	233
	Child:	234
	ResBox:	235
	ResBox:	236
	Listening:	1
)

(TextBox.233
	InternalName:	"theMessage"
	Listening:	1
	Constraints:	0x55
	VerticalScroll:	1
	NextControl:	231
)

(LButn.234
	InternalName:	"close"
	Label:	"Close"
	Click:	"RasterWarp.CloseStatusDiag"
)

(RectD.235
	Left:	11.00000000000000
	Top:	143.00000000000000
	Right:	338.00000000000000
	Bottom:	16.00000000000000
)

(RectD.236
	Left:	152.00000000000000
	Top:	182.00000000000000
	Right:	204.00000000000000
	Bottom:	157.00000000000000
)

(Nil.237
)

(AVDLog.238
	Name:	"RasterWarp.SessionBegin"
	X:	61
	Y:	51
	W:	331
	H:	161
	ConstrainedControlNames:	239
	ConstrainedControlNames:	240
	ConstrainedControlNames:	241
	ConstrainedControlNames:	242
	Constraints:	243
	Constraints:	244
	Constraints:	245
	Constraints:	246
	Server:	207
	ControlPanel:	247
	Title:	"ImageWarp Session Setup"
	Modal:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	268
)

(AVStr.239
	S:	"btnOK"
)

(AVStr.240
	S:	"btnCancel"
)

(AVStr.241
	S:	"btnFrom"
)

(AVStr.242
	S:	"btnTO"
)

(Numb.243
	N:	85.00000000000000
)

(Numb.244
	N:	85.00000000000000
)

(Numb.245
	N:	85.00000000000000
)

(Numb.246
	N:	85.00000000000000
)

(CPanel.247
	Child:	248
	Child:	249
	Child:	250
	Child:	252
	Child:	254
	Child:	256
	Child:	258
	Child:	259
	ResBox:	260
	ResBox:	261
	ResBox:	262
	ResBox:	263
	ResBox:	264
	ResBox:	265
	ResBox:	266
	ResBox:	267
	Listening:	1
)

(LButn.248
	InternalName:	"btnOK"
	Disabled:	1
	Help:	"Press OK after you have chosen desired themes//Press OK after you have chosen desired themes."
	Update:	"RasterWarp.LoadThemesbtnOKUpdate"
	Label:	"OK"
	Click:	"RasterWarp.SessionBeginbtnOK"
)

(LButn.249
	InternalName:	"btnCancel"
	Help:	"Press Cancel if you change your mind about starting ImageWarp//Press Cancel if you change your mind about starting ImageWarp."
	Label:	"Cancel"
	Click:	"RasterWarp.LoadThemesbtnCancel"
)

(TextLine.250
	InternalName:	"txtFrom"
	Label:	" "
	Constraints:	0x55
	Listening:	1
	TextType:	251
	NextControl:	207
)

(AVEnum.251
	Name:	"TEXTLINE_TYPE_ALL"
)

(TextLine.252
	InternalName:	"txtTo"
	Label:	" "
	Constraints:	0x55
	Listening:	1
	TextType:	253
	NextControl:	207
)

(AVEnum.253
	Name:	"TEXTLINE_TYPE_ALL"
)

(Butn.254
	InternalName:	"btnFrom"
	Help:	"Choose image to be rectified//Choose image to be rectified"
	Icon:	255
	Click:	"RasterWarp.LoadImageTheme"
)

(AVIcon.255
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(Butn.256
	InternalName:	"btnTO"
	Help:	"Choose theme to rectify to//Choose theme to rectify to"
	Icon:	257
	Click:	"RasterWarp.LoadAnyTheme"
)

(AVIcon.257
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(TextLabel.258
	InternalName:	"aTextLabel12"
	Constraints:	0x55
	Label:	"Image to be rectified "
	Listening:	1
)

(TextLabel.259
	InternalName:	"aTextLabel13"
	Constraints:	0x55
	Label:	"Theme to rectify to"
	Listening:	1
)

(RectD.260
	Left:	67.00000000000000
	Top:	153.00000000000000
	Right:	135.00000000000000
	Bottom:	125.00000000000000
)

(RectD.261
	Left:	178.00000000000000
	Top:	153.00000000000000
	Right:	245.00000000000000
	Bottom:	124.00000000000000
)

(RectD.262
	Left:	10.00000000000000
	Top:	51.00000000000000
	Right:	270.00000000000000
	Bottom:	31.00000000000000
)

(RectD.263
	Left:	10.00000000000000
	Top:	107.00000000000000
	Right:	272.00000000000000
	Bottom:	87.00000000000000
)

(RectD.264
	Left:	281.00000000000000
	Top:	56.00000000000000
	Right:	319.00000000000000
	Bottom:	24.00000000000000
)

(RectD.265
	Left:	280.00000000000000
	Top:	113.00000000000000
	Right:	318.00000000000000
	Bottom:	81.00000000000000
)

(RectD.266
	Left:	91.00000000000000
	Top:	27.00000000000000
	Right:	199.00000000000000
	Bottom:	15.00000000000000
)

(RectD.267
	Left:	90.00000000000000
	Top:	80.00000000000000
	Right:	188.00000000000000
	Bottom:	68.00000000000000
)

(Nil.268
)

(AVDLog.269
	Name:	"RasterWarp.NewTableDiag"
	X:	61
	Y:	51
	W:	319
	H:	116
	ConstrainedControlNames:	270
	ConstrainedControlNames:	271
	ConstrainedControlNames:	272
	Constraints:	273
	Constraints:	274
	Constraints:	275
	Server:	207
	ControlPanel:	276
	Title:	"Load Ground Control PointTable"
	Modal:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	291
)

(AVStr.270
	S:	"btnOK"
)

(AVStr.271
	S:	"btnCancel"
)

(AVStr.272
	S:	"btnLoadTable"
)

(Numb.273
	N:	85.00000000000000
)

(Numb.274
	N:	85.00000000000000
)

(Numb.275
	N:	85.00000000000000
)

(CPanel.276
	Child:	277
	Child:	279
	Child:	281
	Child:	282
	Child:	283
	Child:	284
	ResBox:	285
	ResBox:	286
	ResBox:	287
	ResBox:	288
	ResBox:	289
	ResBox:	290
	Listening:	1
)

(TextLine.277
	InternalName:	"txtDBFName"
	Label:	" "
	Constraints:	0x55
	Listening:	1
	TextType:	278
	NextControl:	207
)

(AVEnum.278
	Name:	"TEXTLINE_TYPE_ALL"
)

(Butn.279
	InternalName:	"btnLoadTable"
	Disabled:	1
	Icon:	280
	Click:	"RasterWarp.SelectDBF"
)

(AVIcon.280
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(LButn.281
	InternalName:	"btnOK"
	Disabled:	1
	Help:	"Press OK when done selecting table//Press OK when done selecting table."
	Label:	"OK"
	Click:	"RasterWarp.NewTableDiagbtnOK"
)

(RButn.282
	InternalName:	"rdoNew"
	Constraints:	0x55
	Listening:	1
	Label:	"New GCP Table"
	Click:	"RasterWarp.TablerdoButton"
)

(RButn.283
	InternalName:	"rdoExisting"
	Constraints:	0x55
	Listening:	1
	Label:	"Existing GCP Table"
	Click:	"RasterWarp.TablerdoButton"
)

(LButn.284
	InternalName:	"btnCancel"
	Label:	"Cancel"
	Click:	"RasterWarp.NewTableDiagbtnCancel"
)

(RectD.285
	Left:	9.00000000000000
	Top:	42.00000000000000
	Right:	262.00000000000000
	Bottom:	22.00000000000000
)

(RectD.286
	Left:	269.00000000000000
	Top:	45.00000000000000
	Right:	310.00000000000000
	Bottom:	15.00000000000000
)

(RectD.287
	Left:	174.00000000000000
	Top:	100.00000000000000
	Right:	229.00000000000000
	Bottom:	77.00000000000000
)

(RectD.288
	Left:	48.00000000000000
	Top:	78.00000000000000
	Right:	170.00000000000000
	Bottom:	55.00000000000000
)

(RectD.289
	Left:	47.00000000000000
	Top:	106.00000000000000
	Right:	184.00000000000000
	Bottom:	78.00000000000000
)

(RectD.290
	Left:	246.00000000000000
	Top:	99.00000000000000
	Right:	300.00000000000000
	Bottom:	76.00000000000000
)

(Nil.291
)

(AVDLog.292
	Name:	"RasterWarp.ManualEntry"
	X:	61
	Y:	51
	W:	298
	H:	75
	ConstrainedControlNames:	293
	Constraints:	294
	Server:	207
	ControlPanel:	295
	Title:	"Manual GCP Entry"
	Modal:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	304
)

(AVStr.293
	S:	"btnOK"
)

(Numb.294
	N:	85.00000000000000
)

(CPanel.295
	Child:	296
	Child:	298
	Child:	300
	ResBox:	301
	ResBox:	302
	ResBox:	303
	Listening:	1
)

(TextLine.296
	InternalName:	"txtX"
	Label:	"From X"
	Constraints:	0x55
	Listening:	1
	TextType:	297
	NextControl:	207
)

(AVEnum.297
	Name:	"TEXTLINE_TYPE_REAL"
)

(TextLine.298
	InternalName:	"txtY"
	Label:	"From Y"
	Constraints:	0x55
	Listening:	1
	TextType:	299
	NextControl:	207
)

(AVEnum.299
	Name:	"TEXTLINE_TYPE_REAL"
)

(LButn.300
	InternalName:	"btnOK"
	Label:	"OK"
	Click:	"RasterWarp.ManualEntryOK"
)

(RectD.301
	Left:	8.00000000000000
	Top:	35.00000000000000
	Right:	197.00000000000000
	Bottom:	15.00000000000000
)

(RectD.302
	Left:	7.00000000000000
	Top:	60.00000000000000
	Right:	197.00000000000000
	Bottom:	40.00000000000000
)

(RectD.303
	Left:	213.00000000000000
	Top:	47.00000000000000
	Right:	283.00000000000000
	Bottom:	20.00000000000000
)

(Nil.304
)

(AVDLog.305
	Name:	"RasterWarp.Batchmake"
	X:	69
	Y:	52
	W:	368
	H:	298
	ConstrainedControlNames:	306
	ConstrainedControlNames:	307
	ConstrainedControlNames:	308
	ConstrainedControlNames:	309
	ConstrainedControlNames:	310
	ConstrainedControlNames:	311
	Constraints:	312
	Constraints:	313
	Constraints:	314
	Constraints:	315
	Constraints:	316
	Constraints:	317
	Server:	207
	ControlPanel:	318
	Title:	"Batch Create"
	Modal:	1
	AlwaysOnTop:	1
	HasTitleBar:	1
	DefaultButton:	352
)

(AVStr.306
	S:	"btnAdd"
)

(AVStr.307
	S:	"btnDone"
)

(AVStr.308
	S:	"btnCancel"
)

(AVStr.309
	S:	"btnImage"
)

(AVStr.310
	S:	"aButton10"
)

(AVStr.311
	S:	"btnImgOut"
)

(Numb.312
	N:	85.00000000000000
)

(Numb.313
	N:	85.00000000000000
)

(Numb.314
	N:	85.00000000000000
)

(Numb.315
	N:	85.00000000000000
)

(Numb.316
	N:	85.00000000000000
)

(Numb.317
	N:	85.00000000000000
)

(CPanel.318
	Child:	319
	Child:	321
	Child:	323
	Child:	325
	Child:	327
	Child:	328
	Child:	329
	Child:	330
	Child:	331
	Child:	332
	Child:	333
	Child:	335
	Child:	337
	ResBox:	339
	ResBox:	340
	ResBox:	341
	ResBox:	342
	ResBox:	343
	ResBox:	344
	ResBox:	345
	ResBox:	346
	ResBox:	347
	ResBox:	348
	ResBox:	349
	ResBox:	350
	ResBox:	351
	Listening:	1
)

(TextLine.319
	InternalName:	"txtImg"
	Label:	"Input Image"
	Constraints:	0x55
	Listening:	1
	TextType:	320
	NextControl:	207
)

(AVEnum.320
	Name:	"TEXTLINE_TYPE_ALL"
)

(TextLine.321
	InternalName:	"txtTbl"
	Label:	"Table"
	Constraints:	0x55
	Listening:	1
	TextType:	322
	NextControl:	207
)

(AVEnum.322
	Name:	"TEXTLINE_TYPE_ALL"
)

(Butn.323
	InternalName:	"btnImage"
	Icon:	324
	Click:	"RasterWarp.BatchLoadImg"
)

(AVIcon.324
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(Butn.325
	InternalName:	"aButton10"
	Icon:	326
	Click:	"RasterWarp.BatchGetTable"
)

(AVIcon.326
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(AVCBBox.327
	InternalName:	"cmbOrder"
	NextControl:	207
	ContentKind:	4
	Constraints:	0x55
	Listening:	1
	Label:	"Order"
)

(AVCBBox.328
	InternalName:	"cmbMethod"
	NextControl:	207
	ContentKind:	4
	Constraints:	0x55
	Listening:	1
	Label:	"Method"
)

(LButn.329
	InternalName:	"btnAdd"
	Update:	"RasterWarp.BatchbtnAddUpdate"
	Label:	"Add"
	Click:	"RasterWarp.BatchAdd"
)

(LButn.330
	InternalName:	"btnDone"
	Label:	"Done"
	Click:	"RasterWarp.BatchDone"
)

(LButn.331
	InternalName:	"btnCancel"
	Label:	"Cancel"
	Click:	"RasterWarp.BatchCancel"
)

(AVCBBox.332
	InternalName:	"cmbType"
	NextControl:	207
	ContentKind:	4
	Constraints:	0x55
	Listening:	1
	Label:	"Output Image Type"
	Select:	"RasterWarp.BatchTypeSelect"
)

(TextLine.333
	InternalName:	"txtSize"
	Label:	"Output Cell Size"
	Constraints:	0x55
	Listening:	1
	TextType:	334
	NextControl:	207
)

(AVEnum.334
	Name:	"TEXTLINE_TYPE_REAL"
)

(TextLine.335
	InternalName:	"txtImgOut"
	Label:	"Output Image"
	Constraints:	0x55
	Listening:	1
	TextType:	336
	NextControl:	207
)

(AVEnum.336
	Name:	"TEXTLINE_TYPE_ALL"
)

(Butn.337
	InternalName:	"btnImgOut"
	Icon:	338
	Click:	"RasterWarp.BatchLoadOutImg"
)

(AVIcon.338
	Name:	"folder.gif"
	Data:	4e442049 6d616765 00010020 00200000 
	Data:	04000f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 00000000 000f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f00 0b0f0f0f 0b000f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f00000f 0f0f0b0f 0f0f0000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0f0f 0f000f0f 0b0f0f0f 0b0f0f0f 
	Data:	0b0f0f0f 0b0f0f0f 0b0f0f0f 0b0f0f0f 
	Data:	000f0f0f 0f000b0f 0f0f0b0f 0f0f0b0f 
	Data:	0f0f0b0f 0f0f0b0f 0f0f0b0f 0f0f0b0f 
	Data:	000f0000 00000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f000b 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 03000f0f 
	Data:	000f0003 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b000b0f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f00 030b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b000f 
	Data:	000f0f00 0b030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b03000f 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 000b030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b0300 
	Data:	000f0f0f 00030b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b00 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000b03 0b030b03 0b030b03 
	Data:	0b030b03 0b030b03 0b030b03 0b030b03 
	Data:	000f0f0f 0f00030b 030b030b 030b030b 
	Data:	030b030b 030b030b 030b030b 030b030b 
	Data:	000f0f0f 0f000000 00000000 00000000 
	Data:	00000000 00000000 00000000 00000000 
	Data:	000f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0f0f 0f0f0f0f 0f0f0f0f 0f0f0f0f 
	Data:	0f0f0000 00400000 00000080 00000000 
	Data:	80000080 80000000 00800080 00800000 
	Data:	80800080 808000c0 c0c000ff 00000000 
	Data:	ff0000ff ff000000 00ff00ff 00ff0000 
	Data:	ffff02ff ffff0002 0008000a 00200000 
	Data:	00000000 00000000 0000
)

(RectD.339
	Left:	28.00000000000000
	Top:	47.00000000000000
	Right:	318.00000000000000
	Bottom:	27.00000000000000
)

(RectD.340
	Left:	54.00000000000000
	Top:	155.00000000000000
	Right:	314.00000000000000
	Bottom:	135.00000000000000
)

(RectD.341
	Left:	326.00000000000000
	Top:	51.00000000000000
	Right:	361.00000000000000
	Bottom:	19.00000000000000
)

(RectD.342
	Left:	324.00000000000000
	Top:	161.00000000000000
	Right:	360.00000000000000
	Bottom:	129.00000000000000
)

(RectD.343
	Left:	89.00000000000000
	Top:	185.00000000000000
	Right:	296.00000000000000
	Bottom:	167.00000000000000
)

(RectD.344
	Left:	82.00000000000000
	Top:	208.00000000000000
	Right:	299.00000000000000
	Bottom:	189.00000000000000
)

(RectD.345
	Left:	76.00000000000000
	Top:	276.00000000000000
	Right:	128.00000000000000
	Bottom:	246.00000000000000
)

(RectD.346
	Left:	161.00000000000000
	Top:	276.00000000000000
	Right:	215.00000000000000
	Bottom:	246.00000000000000
)

(RectD.347
	Left:	249.00000000000000
	Top:	276.00000000000000
	Right:	301.00000000000000
	Bottom:	246.00000000000000
)

(RectD.348
	Left:	79.00000000000000
	Top:	90.00000000000000
	Right:	298.00000000000000
	Bottom:	72.00000000000000
)

(RectD.349
	Left:	133.00000000000000
	Top:	235.00000000000000
	Right:	299.00000000000000
	Bottom:	215.00000000000000
)

(RectD.350
	Left:	17.00000000000000
	Top:	123.00000000000000
	Right:	314.00000000000000
	Bottom:	103.00000000000000
)

(RectD.351
	Left:	325.00000000000000
	Top:	125.00000000000000
	Right:	361.00000000000000
	Bottom:	96.00000000000000
)

(Nil.352
)

(Script.353
	Name:	"RasterWarp.ActiveThemesUpdate"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\nSELF.SetEnabled(0 < theView.GetActiveThemes.Count) \n "
)

(Script.354
	Name:	"RasterWarp.AddThemes"
	SourceCode:	"RstWrpExt = Extension.Find(\"RasterWarp 2.1\")\n\n'theView = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\ntheView = av.GetActiveDoc\n\nif (theView.Is(View)) then\n    srcnames = SourceDialog.Show(\"\")\n    zoom = (theView.GetThemes.Count = 0)\n    for each n in srcnames\n      theView.AddTheme(Theme.Make(n))\n    end\n    if ((theView.GetActiveThemes.Count = 0) and (srcnames.Count > 0)) then\n      theView.GetThemes.Get(0).SetActive(TRUE)\n    end\n    if (zoom) then  theThemes = theView.GetThemes\n      r = R
ect.MakeEmpty\n      for each t in theThemes\n        r = r.UnionWith(t.ReturnExtent)\n      end\n      if (r.IsEmpty) then\n        return nil\n      elseif ((r.ReturnSize) = (0@0)) then\n        theView.GetDisplay.PanTo(r.ReturnOrigin)\n      else\n        theView.GetDisplay.SetExtent(r.Scale(1.1))\n      end\n    end\n    \n    if (theView.GetThemes.Count > 0) then\n      av.GetProject.SetModified( TRUE )\n    end\nelse\n  msgBox.Info(\"You can only add themes to a View\",\"Class Not View\")\nend\n"
)

(Script.355
	Name:	"RasterWarp.AttbThemesUpdate"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\nfor each t in theView.GetActiveThemes\n  if (t.HasAttributes) then\n    SELF.SetEnabled(TRUE)\n    return nil\n  end\nend\nSELF.SetEnabled(FALSE)\n"
)

(Script.356
	Name:	"RasterWarp.BatchAdd"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:27:47 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = self.GetDialog\n\n\ntxtImgIn = theDiag.FindByName(\"txtImg\")\ntxtImgOut = theDiag.FindByName(\"txtImgOut\")\ntxtTable = theDiag.FindByName(\"txtTbl\")\ntxtCellSize = theDiag.Fi
ndByName(\"txtSize\")\ncmbMethod = theDiag.FindByName(\"cmbMethod\")\ncmbType = theDiag.FindByName(\"cmbType\")\ncmbOrder = theDiag.FindByName(\"cmbOrder\")\n\n\nimgName = _BatchWarpVTab.FindField(\"ImageIN\")\noutimgName = _BatchWarpVTab.FindField(\"ImageOUT\")\nGCPtbl = _BatchWarpVTab.FindField(\"GCPTable\")\ntheOrder = _BatchWarpVTab.FindField(\"Order\")\ntheMethod = _BatchWarpVTab.FindField(\"Method\")\ncellSize = _BatchWarpVTab.FindField(\"CellSize\")\nimgType = _BatchWarpVTab.FindField(\"Type\")\n\n_BatchWarpVTab.SetEditable(TRUE)\nrec =
 _BatchWarpVTab.AddRecord\n_BatchWarpVTab.SetValueString(imgName,rec,txtImgIn.GetText)\n_BatchWarpVTab.SetValueString(outimgName,rec,txtImgOut.GetText)\n_BatchWarpVTab.SetValueString(GCPtbl,rec,txtTable.GetText)\n_BatchWarpVTab.SetValueString(theMethod,rec,cmbMethod.GetSelection)\n_BatchWarpVTab.SetValueString(imgType,rec,cmbType.GetSelection)\n_BatchWarpVTab.SetValue(theOrder,rec,cmbOrder.GetSelection)\n_BatchWarpVTab.SetValue(cellSize,rec,txtCellSize.GetText.asNumber)\n_BatchWarpVTab.SetEditable(FALSE)\n\n\n\ntheDiag
.FindByName(\"txtImg\").Empty\ntheDiag.FindByName(\"txtImgOut\").Empty\ntheDiag.FindByName(\"txtTbl\").Empty\ntheDiag.FindByName(\"txtSize\").SetText(\"0\")\ntheDiag.FindByName(\"btnDone\").SetEnabled(TRUE)\nself.SetEnabled(FALSE)"
)

(Script.357
	Name:	"RasterWarp.BatchbtnAddUpdate"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:16:16 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = av.FindDialog(\"RasterWarp.Batchmake\")\ntxtImgIn = theDiag.FindByName(\"txtImg\")\ntxtImgOut = theDiag.FindByName(\"txtImgOut\")\ntxtTable = theDiag.FindByName(\"txtTbl\")\n\nif(
 (txtImgIn.IsEmpty.Not) and (txtImgOut.IsEmpty.Not) and (txtTable.IsEmpty.Not) ) then\n  theDiag.FindByName(\"btnAdd\").SetEnabled(TRUE)\nend\n"
)

(Script.358
	Name:	"RasterWarp.BatchCancel"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:25:23 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = self.GetDialog\ntheDiag.FindByName(\"txtImg\").Empty\ntheDiag.FindByName(\"txtImgOut\").Empty\ntheDiag.FindByName(\"txtTbl\").Empty\ntheDiag.FindByName(\"cmbType\").Empty\ntheDiag
.FindByName(\"cmbOrder\").Empty\ntheDiag.FindByName(\"cmbMethod\").Empty\ntheDiag.FindByName(\"txtSize\").Empty\n\ntheDiag.SetModalResult(0)\ntheDiag.Close\n\n"
)

(Script.359
	Name:	"RasterWarp.BatchDone"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:21:41 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = self.GetDialog\ntheDiag.FindByName(\"txtImg\").Empty\ntheDiag.FindByName(\"txtImgOut\").Empty\ntheDiag.FindByName(\"txtTbl\").Empty\ntheDiag.FindByName(\"cmbType\").Empty\ntheDiag
.FindByName(\"cmbOrder\").Empty\ntheDiag.FindByName(\"cmbMethod\").Empty\ntheDiag.FindByName(\"txtSize\").Empty\n\ntheDiag.SetModalResult(1)\ntheDiag.Close\n"
)

(Script.360
	Name:	"RasterWarp.BatchGetTable"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 15:20:29 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = av.FindDialog(\"RasterWarp.BatchMake\")\n\ntheFile = FileDialog.Show(\"*.dbf\",\"*.dbf\",\"Choose the GCP Table to use.\")\nif(theFile = nil) then\n  return nil\nelse\n  theDiag.Fi
ndByName(\"txtTbl\").SetText(theFile.asString)\n  theDiag.FindByName(\"btnAdd\").Update\nend\n\n"
)

(Script.361
	Name:	"RasterWarp.BatchLoadImg"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 15:17:47 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\naSrcName = SourceDialog.ShowClass (\"Pick the Image Theme that you want to Warp.\", ImgSrc)\n    \nif (aSrcName.IsEmpty) then\n  return nil\nelse\n  theDiag = av.FindDialog(\"RasterWar
p.Batchmake\")\n  txtImg = theDiag.FindByName(\"txtImg\")\n  if (aSrcName.Count > 1) then\n    msgBox.Error(\"You can only pick one Image theme\",\"\")\n    return nil\n  end\n  \n  if (ImgSrc.IsValidFileName(aSrcName.Get(0).GetDataSource.asFileName).Not) then \n    msgBox.Error(\"You picked something other then an Image Theme.\",\"\")\n    return nil\n  end\n  txtImg.SetText(aSrcName.Get(0).GetDataSource)\n  theDiag.FindByName(\"btnAdd\").Update\nend\n\n"
)

(Script.362
	Name:	"RasterWarp.BatchLoadOutImg"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:06:53 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = Self.GetDialog\n\ntxtImgOut = theDiag.FindByName(\"txtImgOut\")\ncmbType = theDiag.FindByName(\"cmbType\")\n\nfiletype = cmbType.GetSelection\n\nworking = FileName.GetCWD\ntmpFN 
= working.MakeTmp(\"NewImg\",fileType)\ntheFile = FileDialog.Put(tmpFN,\"*.\"+filetype,\"Choose a new Output Image Name.\")\nif(theFile = nil) then\n  return nil\nend\n\ntxtImgOut.SetText(theFile.asString)\ntheDiag.FindByName(\"btnAdd\").Update\n\n\n"
)

(Script.363
	Name:	"RasterWarp.BatchTypeSelect"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 16:04:38 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nSelf.GetDialog.FindByName(\"txtImgOut\").Empty\n"
)

(Script.364
	Name:	"RasterWarp.BeginSession"
	SourceCode:	"' Name: BeginSession\n'\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 16:34:22 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\n\ntheDiag = av.FindDialog(\"RasterWarp.SessionBegin\")\ntheDiag.FindByName(\"btnOK\").SetEnabled(False)\ntheDiag.FindByName(\"txtFrom\").Empty\ntheDiag.FindByName(\"txtTo\").Empty\n\n\n
\nAVUpperLeft = av.ReturnOrigin    \nAVCenter = avUpperLeft + (av.ReturnExtent / (2@2))    \nhalfDialogWidthHeight = theDiag.ReturnExtent.ReturnSize / (2@2)    \nMovePoint = AVCenter - halfDialogWidthHeight    \ntheDiag.MoveTo(MovePoint.GetX, MovePoint.GetY)\n\n\n\ntheDiag.Open\n\nresult = theDiag.GetModalResult\n\nif(result = 0) then\n  return nil\nelse\n  av.Run(\"RasterWarp.StartUp\",\"\")\nend\n\n"
)

(Script.365
	Name:	"RasterWarp.CalcFrom"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\n\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nrms = theVtab.FindField(\"RMS\")\nUsePnt = theVtab.FindField(\"Use_Point\")\n\n\ncount = 0\nfor each aRec in theVtab\n  if (theVtab.ReturnValue(UsePnt,aRec) = \"ON\")\n    then\n      count = count + 1\n  end\nend\n\nif (count < 4) \n  then\n    MsgBox.Info(\"You cannot use Compute From with less then four GCP's ON\",\"INFO\")\n    exit\nend\n\nif (count < 7)\n  then\n    ord = \"First Order\"\n    Order = 1\n    \n  else\n    ord = \"Se
cond Order\"\n    Order = 2\n    \nend\n\n\n\n\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"To_y\")\n\n\na = {}\naa = {}\nab = {}\nac = {}\nad = {}\nae = {}\naf = {}\nag = {}\nah = {}\nai = {}\naj = {}\nNA = {}\n\nindex = {}\nd = 0\nSol1 = {}\nSol2 = {}\nb = {}\n\n'############# DO SUMS HERE ###############################\n\n outX2outYinX = 0\n outX2outY4 = 0\n outX2outY3 = 0\n outX2inY = 0\n outX2inX = 0\n outX2outY2 = 0\n outYinX  =  0\n outX2outYinY  =  0\n o
utX3  =  0\n outX3inX  =  0\n outX3inY  =  0\n outX3outY  =  0\n outX3outY2  =  0\n outX3outY3  =  0\n outX4  =  0\n outX4outY  =  0\n outX4outY2  =  0\n outX5  =  0\n outX5outY  =  0\n outX6  =  0\n outXinX  =  0\n outXinY  =  0\n outXoutY  =  0\n outXoutY2  =  0\n outXoutY2inX  =  0\n outXoutY2inY  =  0\n outXoutY3  =  0\n outXoutY4  =  0\n outXoutY5  =  0\n outXoutYinX  =  0\n outXoutYinY  =  0\n outY  =  0\n outY2  =  0\n outY2inX  =  0\n outY2inY  =  0\n outY3  =  0\n outY3inX  =  0\n outY3inY  =  0\n outY4  =  0\n outY5  =  0\n outY
6  =  0\n outYinY  =  0\n outX = 0\n inX = 0\n inY = 0\n outX2 = 0\n outX2outY = 0\n RecCount = 0\n \nfor each recd in  theVtab\n  \n  if (( theVtab.ReturnValue( UsePnt,recd).UCase = \"ON\") and (recd <> RstWrpExt.GetPreferences.Get(\"LastPoint\").Get(1)))\n    then\n       RecCount =  RecCount + 1\n      inXtmp  =  theVtab.ReturnValue( infx,recd)\n      outXtmp =  theVtab.ReturnValue( outfx,recd)\n      inYtmp  =  theVtab.ReturnValue( infy,recd)\n      outYtmp =  theVtab.ReturnValue( outfy,recd)\n      \n      \n       outX2outYi
nX =    outX2outYinX +( outXtmp*outXtmp*outYtmp*inXtmp)\n       outX2outY4 =      outX2outY4 + (outXtmp*outXtmp*outYtmp*outYtmp*outYtmp*outYtmp)\n       outX2outY3 =      outX2outY3 + (outXtmp*outXtmp*outYtmp*outYtmp*outYtmp)\n       outX2inY =        outX2inY + (outXtmp*outXtmp*inYtmp)\n       outX2inX  =       outX2inX + (outXTmp*outXTmp*inXTmp)\n       outX2outY2 =      outX2outY2 + (outXtmp*outXtmp*outYtmp*outYtmp)\n       outX2outY =       outX2outY + (outXtmp*outXtmp*outYtmp)\n       outYinX  =        outYin
X + (outYtmp * inXtmp)\n       outX2outYinY  =   outX2outYinY + ((outXtmp * outXtmp) * outYtmp * inYtmp)\n       outX3  =          outX3 + (outXtmp * outXtmp * outXtmp)\n       outX3inX  =       outX3inX + ((outXtmp * outXtmp * outXtmp) * inXtmp)\n       outX3inY  =       outX3inY + ((outXtmp*outXtmp*outXtmp) * inYtmp)\n       outX3outY  =      outX3outY  + ((outXtmp*outXtmp*outXtmp) * outYtmp)\n       outX3outY2  =     outX3outY2 + ((outXtmp*outXtmp*outXtmp) * (outYtmp*outYtmp))\n       outX3outY3  =     outX3out
Y3 + ((outXtmp*outXtmp*outXtmp) * (outYtmp*outYtmp*outYtmp))\n       outX4  =          outX4 + (outXtmp*outXtmp*outXtmp*outXtmp)\n       outX4outY  =      outX4outY + ((outXtmp*outXtmp*outXtmp*outXtmp) * outYtmp)\n       outX4outY2  =     outX4outY2 + ((outXtmp*outXtmp*outXtmp*outXtmp) * (outYtmp)*outYtmp)\n       outX5  =          outX5 + (outXtmp*outXtmp*outXtmp*outXtmp*outXtmp)\n       outX5outY  =      outX5outY + ((outXtmp*outXtmp*outXtmp*outXtmp*outXtmp) * outYtmp)\n       outX6  =          outX6 + (outXtmp
*outXtmp*outXtmp*outXtmp*outXtmp*outXtmp)\n       outXinX  =        outXinX + (outXtmp * inXtmp)\n       outXinY  =        outXinY + (outXtmp * inYtmp)\n       outXoutY  =       outXoutY + (outXtmp * outYtmp)\n       outXoutY2  =      outXoutY2 + (outXtmp * (outYtmp*outYtmp))\n       outXoutY2inX  =   outXoutY2inX + (outXtmp * (outYtmp*outYtmp) * inXtmp)\n       outXoutY2inY  =   outXoutY2inY + (outXtmp * (outYtmp*outYtmp) * inYtmp)\n       outXoutY3  =      outXoutY3 + (outXtmp * (outYtmp*outYtmp*outYtmp))\n      
 outXoutY4  =      outXoutY4 + (outXtmp * (outYtmp*outYtmp*outYtmp*outYtmp))\n       outXoutY5  =      outXoutY5 + (outXtmp * (outYtmp*outYtmp*outYtmp*outYtmp*outYtmp))\n       outXoutYinX  =    outXoutYinX + ( outXtmp * outYtmp * inXtmp)\n       outXoutYinY  =    outXoutYinY + ( outXtmp * outYtmp * inYtmp)\n       outX =            outX + outXtmp\n       outY  =           outY + outYtmp\n       outY2  =          outY2 + (outYtmp * outYtmp)\n       outY2inX  =       outY2inX + ((outYtmp * outYtmp) * inXtmp)\n      
 outY2inY  =       outY2inY + ((outYtmp * outYtmp) * inYtmp)\n       outY3  =          outY3 + (outYtmp * outYtmp * outYtmp)\n       outY3inX  =       outY3inX + ((outYtmp * outYtmp * outYtmp) * inXtmp)\n       outY3inY  =       outY3inY + ((outYtmp * outYtmp * outYtmp) * inYtmp)\n       outY4  =          outY4 + (outYtmp*outYtmp*outYtmp*outYtmp)\n       outY5  =          outY5 + (outYtmp*outYtmp*outYtmp*outYtmp*outYtmp)\n       outY6  =          outY6 + (outYtmp*outYtmp*outYtmp*outYtmp*outYtmp*outYtmp)\n       ou
tYinY  =        outYinY + (outYtmp * inYtmp)\n       inX  =            inX + inXtmp\n       inY  =            inY + inYtmp\n       outX2  =          outX2 + (outXtmp*outXtmp)\n    end 'if\nend 'for\n\n\n\n'##########################################################\n\nif (ord = \"First Order\") then\n  if ( RecCount < 3) then\n    MsgBox.Error(\"You must have at least 3 GCP's pairs for a First Order fit\",\"ERROR Not enough points\")\n    exit\n  end\n    \n   \n    n = 3\n      \n   NA = {0, 0,     0,         0}\n   aa = {0,  RecCoun
t,     outX,      outY}\n   ab = {0,  outX,  outX2,     outXoutY}  \n   ac = {0,  outY,  outXoutY,  outY2}\n   \n    Sol1 = { 0,  inX,  outXinX,  outYinX}\n    Sol2 = { 0,  inY,  outXinY,  outYinY}\n   \n    a.Add(NA)\n    a.Add(aa)\n    a.Add(ab)\n    a.Add(ac)  \n   \nelseif (ord = \"Second Order\") then\n  if ( RecCount < 6) then\n    MsgBox.Error(\"You must have at least 6 GCP's pairs for a Second Order fit\",\"ERROR Not enough points\")\n    exit\n  end\n\n    \n   \n    n = 6\n   \n   NA = {0,0,0,0,0,0,0}\n   aa = {0,  RecCount, 
        outX,       outX2,       outY,       outXoutY,    outY2}\n   ab = {0,  outX,      outX2,      outX3,       outXoutY,   outX2outY,   outXoutY2}\n   ac = {0,  outX2,     outX3,      outX4,       outX2outY,  outX3outY,   outX2outY2}\n   ad = {0,  outY,      outXoutY,   outX2outY,   outY2,      outXoutY2,   outY3}\n   ae = {0,  outXoutY,  outX2outY,  outX3outY,   outXoutY2,  outX2outY2,  outXoutY3}\n   af = {0,  outY2,     outXoutY2,  outX2outY2,  outY3,      outXoutY3,   outY4}\n   \n    Sol1 = {0,  inX,  out
XinX,  outX2inX,  outYinX,  outXoutYinX,  outY2inX}\n    Sol2 = {0,  inY,  outXinY,  outX2inY,  outYinY,  outXoutYinY,  outY2inY}\n   \n    a.Add(NA)\n    a.Add(aa)\n    a.Add(ab)\n    a.Add(ac)\n    a.Add(ad)\n    a.Add(ae)\n    a.Add(af)\n   \nelse\n    \n   \n   if ( RecCount < 10) then\n    MsgBox.Error(\"You must have at least 10 GCP's pairs for a Third Order fit\",\"ERROR Not enough points\")\n    exit\n   end\n\n    \n    \n    n = 10\n   \n   NA = {0,0,0,0,0,0,0,0,0,0,0}\n   aa = {0,  RecCount,          outX,        outX2,    
   outX3,       outY,        outXoutY,    outX2outY,   outY2,       outXoutY2,   outY3}\n   ab = {0,  outX,       outX2,       outX3,       outX4,       outXoutY,    outX2outY,   outX3outY,   outXoutY2,   outX2outY2,  outXoutY3}\n   ac = {0,  outX2,      outX3,       outX4,       outX5,       outX2outY,   outX3outY,   outX4outY,   outX2outY2,   outX3outY2,  outX2outY3}\n   ad = {0,  outX3,      outX4,       outX5,       outX6,       outX3outY,   outX4outY,   outX5outY,   outX3outY2,  outX4outY2,  outX3outY3}\n 
  ae = {0,  outY,       outXoutY,    outX2outY,   outX3outY,   outY2,       outXoutY2,   outX2outY2,  outY3,       outXoutY3,   outY4}\n   af = {0,  outXoutY,   outX2outY,   outX3outY,   outX4outY,   outXoutY2,   outX2outY2,  outX3outY2,  outXoutY3,   outX2outY3,  outXoutY4}\n   ag = {0,  outX2outY,  outX3outY,   outX4outY,   outX5outY,   outX2outY2,  outX3outY2,  outX4outY2,  outX2outY3,  outX3outY3,  outX2outY4}\n   ah = {0,  outY2,      outXoutY2,   outX2outY2,   outX3outY2,  outY3,       outXoutY3,   outX2
outY3,  outY4,       outXoutY4,   outY5}\n   ai = {0,  outXoutY2,  outX2outY2,  outX3outY2,  outX4outY2,  outXoutY3,   outX2outY3,  outX3outY3,  outXoutY4,   outX2outY4,  outXoutY5}\n   aj = {0,  outY3,      outXoutY3,   outX2outY3,  outX3outY3,  outY4,       outXoutY4,   outX2outY4,  outY5,       outXoutY5,   outY6}\n   \n    Sol1 = {0,  inX,  outXinX,  outX2inX,  outX3inX,  outYinX,  outXoutYinX,  outX2outYinX,  outY2inX,  outXoutY2inX,  outY3inX}\n    Sol2 = {0,  inY,  outXinY,  outX2inY,  outX3inY,  outYinY,
  outXoutYinY,  outX2outYinY,  outY2inY,  outXoutY2inY,  outY3inY}\n   \n    a.Add(NA)\n    a.Add(aa)\n    a.Add(ab)\n    a.Add(ac)\n    a.Add(ad)\n    a.Add(ae)\n    a.Add(af)\n    a.Add(ag)\n    a.Add(ah)\n    a.Add(ai)\n    a.Add(aj)\n   \nend\n    \n  \nresult = av.Run(\"RasterWarp.Ludcmp\",{n,a,index,d})\na = result.Get(0)\nindex = result.Get(1)\nd = result.Get(2)\n\n\nresult = av.Run(\"RasterWarp.Luksb\",{n,a,index,Sol1})\nSol1 = result.Get(0)\n\nresult = av.Run(\"RasterWarp.Luksb\",{n,a,index,Sol2})\nSol2 = result.Get(0)\n\n\nLastPoint
 = RstWrpExt.GetPreferences.Get(\"LastPoint\").Get(0)\nxPart = LastPoint.GetX\nyPart = LastPoint.GetY\n\nif ( Order = 1) then\n      x =  Sol1.Get(1) + ( Sol1.Get(2)*xPart) + ( Sol1.Get(3)*yPart)\n        \n  elseif ( Order = 2) then\n      x =  Sol1.Get(1) + \n          ( Sol1.Get(2) * xPart) + \n          ( Sol1.Get(3) * xPart*xPart) + \n          ( Sol1.Get(4) * yPart) +\n          ( Sol1.Get(5) * xPart*ypart) +\n          ( Sol1.Get(6) * yPart*yPart)\n      \n  else\n   \n   x =  Sol1.Get(1) + \n       ( Sol1.Get(2) * xPar
t) +\n       ( Sol1.Get(3) * xPart*xPart) +\n       ( Sol1.Get(4) * xPart*xPart*xPart) +\n       ( Sol1.Get(5) * yPart) +\n       ( Sol1.Get(6) * xPart*yPart) +\n       ( Sol1.Get(7) * xPart*xPart*yPart) +\n       ( Sol1.Get(8) * yPart*yPart) +\n       ( Sol1.Get(9) * xPart*yPart*yPart) + \n       ( Sol1.Get(10) * yPart*yPart*yPart)\n       \nend\nif ( Order = 1) then\n      y =  Sol2.Get(1) + ( Sol2.Get(2)*xPart) + ( Sol2.Get(3)*yPart)      \n      \n  elseif ( Order = 2) then\n      y =   Sol2.Get(1) + \n          ( Sol2
.Get(2) * xPart) + \n          ( Sol2.Get(3) * xPart*xPart) + \n          ( Sol2.Get(4) * yPart) + \n          ( Sol2.Get(5) * xPart * yPart) + \n          ( Sol2.Get(6) * yPart*yPart)\n          \n        else\n   \n   y =  Sol2.Get(1) +\n       ( Sol2.Get(2) * xPart) +\n       ( Sol2.Get(3) * xPart*xPart) + \n       ( Sol2.Get(4) * xPart*xPart*xPart) +\n       ( Sol2.Get(5) * yPart) + \n       ( Sol2.Get(6) * xPart*yPart) +\n       ( Sol2.Get(7) * xPart*xPart*yPart) +\n       ( Sol2.Get(8) * yPart*yPart) +\n       ( Sol2
.Get(9) * xPart*yPart*yPart) +\n       ( Sol2.Get(10) * yPart*yPart*yPart)\n   \nend\n\n\n\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\n\n\ntheGCPcount = RstWrpExt.GetPreferences.Get(\"Pointy\").Get(0)\ntheGCPcount = theGCPcount + 1\n\n\nthePalette = av.GetSymbolWin.GetPalette\nmlst = thePalette.GetList(#PALETTE_LIST_MARKER)\ntheGraphicSymboltoUse = mlst.Get(40)\ntheGraphicSymbol = BasicMarker.Make\ntheGraphicSymbol.Copy(theGraphicSymbolTo
Use)\ntheGraphicSymbol.SetColor(Color.GetRed)\ntheGraphicSymbol.SetSize(10)\n\n\n\n  theGraphicList = FromV.GetGraphics\n  thedrawpoint = Point.Make(x,y)\n  theGraphicpoint = GraphicShape.Make(thedrawpoint)\n  \n  theGraphicpoint.SetSymbol(theGraphicSymbol)\n  theLinkNum = GraphicText.Make(\"  \"+(theGCPcount-1).asstring,thedrawpoint)\n  theLinkNum.GetSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetName((theGCPcount-1).asString)\n  theGraphicList.A
dd(theGroup)\n  theGraphicList.Invalidate\n  av.ProcessAllInvals\n  \n  \n  theVtab.SetEditable(TRUE)\n  rec = RstWrpExt.GetPreferences.Get(\"HighBall\").Get(0)\n  theVtab.SetValue(infx,rec,x)\n  theVtab.SetValue(infy,rec,y) \n  ToV.GetWin.Activate \n  RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})  'firstrec = true\n  CurrentView = ToV\n  RstWrpExt.GetPreferences.Set(\"BatterUp\",{CurrentView})\n  theGCPcount = theGCPcount - 1\n  RstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n  theVtab.SetEditable(FALSE)\n   \n  the
Disp = FromV.GetDisplay\n  theDisp.PanTo(thedrawpoint)      \n        "
)

(Script.366
	Name:	"RasterWarp.CalRMS"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:09:31 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nXerr = theVtab.FindField(\"X_Error\")\nYerr = t
heVtab.FindField(\"Y_Error\")\nUsePnt = theVtab.FindField(\"Use_Point\")\n\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"To_y\")\n\nmyHome = system.GetEnvVar(\"HOME\")\n\n'Count usable records\nRecCount = 0\nfor each recd in  theVtab\n  if ( theVtab.ReturnValue( UsePnt,recd).UCase = \"ON\") \n    then\n       RecCount =  RecCount + 1\n  end\nend\n\n\n\nFitList = {1,2,3,4,5,6,7,8,9,10,11,12}\nord = MsgBox.ListAsString(FitList,\"Choose the Polynomial Or
der for the fit\",\"Choose Order\")\nif (ord = nil) then return nil end\n\nneeded = ((ord + 1) * (ord + 2))/2\n\nif (RecCount < needed) then\n  msgBox.Error(\"You must have at least \" + needed.asString + \" GCP pairs for a \"+ ord.asString + \" fit.\",\"ERROR Not Enough GCP's\")\n  exit\nend\n\nRstWrpExt.GetPreferences.Set(\"LawOrder\",{ord})\n\ntheLinkList = List.Make\nfor each recd in theVtab\n  if (theVtab.ReturnValue(UsePnt,recd).UCase = \"ON\") then\n    x1 = theVtab.ReturnValue(infx,recd)\n    y1 = theVtab.ReturnValue(infy,recd)\n 
   x2 = theVtab.ReturnValue(outfx,recd)\n    y2 = theVtab.ReturnValue(outfy,recd)\n    p1 = Point.Make(x1,y1)\n    p2 = Point.Make(x2,y2)\n    l1 = Line.Make(p1,p2)\n    theLinkList.Add(l1)\n  end\nend\n\nfnError = (myHome + \"\\errorfn.dbf\").asFileName\nfnCoef = (myHome + \"\\coeffn.dbf\").asFileName\n\ntheRet = Grid.CalcPolynomialFit (theLinkList, ord, fnCoef, fnError, False)\n\nRstWrpExt.GetPreferences.Set(\"Coeff\",theRet.Get(0))\nerrVtab = theRet.Get(1)\nerrX = errVtab.FindField(\"X_Error\")\nerrY = errVtab.FindField(\"Y_Error\")
\n\n\ncnt = 0\ntheVtab.SetEditable(True)\nfor each recd in theVtab\n  if ( theVtab.ReturnValue( UsePnt,recd).UCase = \"ON\") then\n    theVtab.SetValue(Xerr,recd,errVtab.ReturnValue(errX,cnt))\n    theVtab.SetValue(Yerr,recd,errVtab.ReturnValue(errY,cnt))\n    cnt = cnt + 1\n  else\n    theVtab.SetValue(Xerr,recd,0.0)\n    theVtab.SetValue(Yerr,recd,0.0)\n  end\nend\ntheVtab.SetEditable(False)\ntheVtab.Refresh\n\nmsgBox.Info(\"Total X RMS Error \" + theRet.Get(2).asString + NL +\n            \"Total Y RMS Error \" + theRet.Get(3).a
sString + NL +\n            \"ChiSqare X \" + theRet.Get(4).asString + NL +\n            \"ChiSquare Y \" + theRet.Get(5).asString,\"RMS Errors\")\n            \n\nRstWrpExt.GetPreferences.Set(\"CanDo\",{TRUE})\n\naReport = MsgBox.YesNo(\"Would like to create a Report?\",\"Create Report\",False)\nif (aReport = true)\n  then\n    av.Run(\"RasterWarp.Report\",{theRet.Get(2),theRet.Get(3),theRet.Get(4),theRet.Get(5)})\nend"
)

(Script.367
	Name:	"RasterWarp.CanUnload"
	SourceCode:	"' Name: CanUnload\n' Author: Kenneth R. McVay\n' Date: Fri Mar 05 13:44:54 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\nreturn (System.CanUnloadLibrary(self.GetDependencies.Get(0)))"
)

(Script.368
	Name:	"RasterWarp.ClearSelect"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\nfor each t in theView.GetActiveThemes\n  t.ClearSelection\n end"
)

(Script.369
	Name:	"RasterWarp.CloseStatusDiag"
	SourceCode:	"diagMsg = av.FindDialog(\"RasterWarp.MessageStatus\").Close"
)

(Script.370
	Name:	"RasterWarp.CreateBatch"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 14:14:43 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\n\nworking = FileName.GetCWD\ntmpFN = working.MakeTmp(\"Batch\",\"dbf\")\ntheFile = FileDialog.Put(tmpFN,\"*.dbf\",\"Choose a new GCP Table name.\")\nif(theFile = nil) then\n  return nil\nen
d\n\n_BatchWarpVtab = Vtab.MakeNew(theFile,dbase)\nBatchtable = Table.Make(_BatchWarpVtab)\nBatchtable.SetName(_BatchWarpVtab.GetName)\n  \nimgName = Field.Make(\"ImageIN\",#FIELD_CHAR,256,0)\noutimgName = Field.Make(\"ImageOUT\",#FIELD_CHAR,256,0)\nGCPtbl = Field.Make(\"GCPTable\",#FIELD_CHAR,256,0)\ntheOrder = Field.Make(\"Order\",#FIELD_LONG,3,0)\ntheMethod = Field.Make(\"Method\",#FIELD_CHAR,30,0)\ncellSize = Field.Make(\"CellSize\",#FIELD_DECIMAL,20,3)\nimgType = Field.Make(\"Type\",#FIELD_CHAR,4,0)\n_BatchWarpVtab.AddFields({im
gName,outimgName,GCPtbl,theOrder,theMethod,cellSize,imgType})\ntableWin = Batchtable.GetWin\n\n\ntheDiag = av.FindDialog(\"RasterWarp.BatchMake\")\ntxtImg = theDiag.FindByName(\"txtImg\")\ntxtImgOut = theDiag.FindByName(\"txtImgOut\")\ncmbType = theDiag.FindByName(\"cmbType\")\ntxtCellSize = theDiag.FindByName(\"txtSize\")\ntxtTable = theDiag.FindByName(\"txtTbl\")\ncmbOrder = theDiag.FindByName(\"cmbOrder\")\ncmbMethod = theDiag.FindByName(\"cmbMethod\")\nbtnAdd = theDiag.FindByName(\"btnAdd\")\nbtnDone = theDiag.FindByName(\"btnDone\")\n\n
txtImg.Empty\ntxtTable.Empty\ntxtCellSize.Empty\ntxtCellSize.SetText(\"0\")\ncmbType.Empty\ncmbOrder.Empty\ncmbMethod.Empty\nbtnAdd.SetEnabled(FALSE)\nbtnDone.SetEnabled(FALSE)\n\nlstOrder = {1,2,3,4,5,6,7,8,9,10,11,12}\ncmbOrder.DefineFromList(lstOrder)\nlstMethod = {\"Nearest Neighbor\",\"Bilinear Interpolation\",\"Cubic Convolution\"}\ncmbMethod.DefineFromList(lstMethod)\n\nlstType = {\"tif\",\"jpg\",\"bil\",\"bip\",\"bsq\"}\ncmbType.DefineFromList(lstType)\n\nAVUpperLeft = av.ReturnOrigin    \nAVCenter = avUpperLeft + (av.ReturnExtent / (2
@2))    \nhalfDialogWidthHeight = theDiag.ReturnExtent.ReturnSize / (2@2)    \nMovePoint = AVCenter - halfDialogWidthHeight    \ntheDiag.MoveTo(MovePoint.GetX, MovePoint.GetY)\ntheDiag.Open\n\nresult = theDiag.GetModalResult\nif(result = 0) then\n  tGUI = av.FindGUI(\"Table\")\n  theDocs = av.GetProject.GetDocsWithGroupGUI(tGUI)\n  if(theDocs.IsEmpty.Not) then\n    for each d in theDocs\n      if(d.GetName = BatchTable.GetName) then\n          av.GetProject.RemoveDoc(d)\n      end\n    end\n  end\n else\n  tableWin.Open\n  tabl
eWin.Maximize\nend\n_BatchWarpVtab = nil\nav.PurgeObjects"
)

(Script.371
	Name:	"RasterWarp.DeleteGCP"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:09:45 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nGCP = theVtab.FindField(\"GCP\")\n\nTheWindows =
 RstWrpExt.GetPreferences.Get(\"ThreeStooges\")\n\nToRoam = TheWindows.Get(0).Get(1)\nTo = TheWindows.Get(1).Get(1)\nFrom = TheWindows.Get(2).Get(1)\n\n\nDelList = List.Make\n\nfor each rec in theVTab\n  DelList.Add(theVTab.ReturnValue(GCP,rec))\nend\n\nDWhich = MsgBox.MultiListAsString(DelList,\"Choose the GCP's to delete\",\"DELETE GCP's\")\nif (DWhich = NIL) then\n  exit\nend\n\ntheVtab.SetEditable(TRUE)\nfor each tiepoint in DWhich\n  recToDelete = Nil\n  for each rec in theVTab\n    if (theVTab.ReturnValue(GCP,rec) = tiepoint) th
en\n        recToDelete = rec\n        break\n    end\n  end\n  if (recToDelete <> NIL) then\n    theVTab.RemoveRecord(recToDelete)\n  end\n  \n  inViewGraphics = From.GetGraphics\n  for each graphicpoint in inViewGraphics\n    if (graphicpoint.GetName = tiepoint.asString) then\n      inViewGraphics.RemoveGraphic(graphicpoint)\n      break\n    end\n  end\n  \n  outViewGraphics = To.GetGraphics\n  for each graphicpoint in outViewGraphics\n    if (graphicpoint.GetName = tiepoint.asString) then\n      outViewGraphics.RemoveGraph
ic(graphicpoint)\n      break\n    end\n  end\n  outViewGraphics = ToRoam.GetGraphics\n  for each graphicpoint in outViewGraphics\n    if (graphicpoint.GetName = tiepoint.asString) then\n      outViewGraphics.RemoveGraphic(graphicpoint)\n      break\n    end\n  end\n\nend\ntheVtab.SetEditable(False)\ntheVtab.Refresh\n"
)

(Script.372
	Name:	"RasterWarp.DelPntPicker"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\n\nGCP = theVtab.FindField(\"GCP\")\ntheView = av.GetactiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\naGraphicSet = theView.GetGraphics.GetSelected\n\nif (aGraphicSet.Count > 1) \n  then\n    MsgBox.Info(\"
You can only select and delete one GCP at a time.\",\"INFO\")\n    exit\nend\nif (aGraphicSet.Count = 0)\n  then\n    MsgBox.Info(\"There are no GCP's selected to delete.\",\"INFO\")\n    exit\nend\n\nfor each aGraphicGroup in aGraphicSet\n  GraphicPoint = aGraphicGroup.GetName\n  GraphicNumberPoint = GraphicPoint.asNumber\n\n  aGraphics = ToRoamV.GetGraphics\n  for each GrphPnt in aGraphics\n    if (GrphPnt.GetName = GraphicPoint)\n      then\n        aGraphics.RemoveGraphic(GrphPnt)\n        break\n    end\n  end\n\n  aGraphics = ToV
.GetGraphics\n  for each GrphPnt in aGraphics\n    if (GrphPnt.GetName = GraphicPoint)\n      then\n        aGraphics.RemoveGraphic(GrphPnt)\n        break\n    end\n  end\n\n  aGraphics = FromV.GetGraphics\n  for each GrphPnt in aGraphics\n    if (GrphPnt.GetName = GraphicPoint)\n      then\n        aGraphics.RemoveGraphic(GrphPnt)\n        break\n    end\n  end\nend\ntheVtab.SetEditable(TRUE)\nfor each rec in theVtab\n  if (theVtab.ReturnValue(GCP,rec) = GraphicNumberPoint)\n    then\n      recToDel = rec\n      break\n  end\nend
\nif (recToDel  <> NIL)\n  then\n    theVtab.RemoveRecord(recToDel)\nend\ntheVtab.SetEditable(False)\ntheVtab.Refresh\n\n"
)

(Script.373
	Name:	"RasterWarp.DispGraphics"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:09:59 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\n\nToX = theVtab.FindField(\"To_x\")\nToY = theVt
ab.FindField(\"To_y\")\nFromX = theVtab.FindField(\"From_x\")\nFromY = theVtab.FindField(\"From_y\")\nGCP = theVtab.FindField(\"GCP\")\nUsePnt = theVtab.FindField(\"Use_Point\")\n\n\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\n\nthePalette = av.GetSymbolWin.GetPalette\nmlst = thePalette.GetList(#PALETTE_LIST_MARKER)\ntheGraphicSymboltoUse = mlst.Get(40)\n\n\nfor each rec in t
heVtab 'to roam\n  OnOrOff = theVtab.ReturnValue(UsePnt,rec)\n  theGraphicList = ToRoamV.GetGraphics\n  thedrawpoint = Point.Make(theVtab.ReturnValue(ToX,rec),theVtab.ReturnValue(ToY,rec))\n  theGraphicpoint = GraphicShape.Make(thedrawpoint)\n  \n  theGraphicSymbol = BasicMarker.Make\n  theGraphicSymbol.Copy(theGraphicSymboltoUse)\n  theGraphicSymbol.SetSize(10)\n  \n  if ( OnOrOff = \"ON\")\n    then\n      theGraphicSymbol.SetColor(Color.GetRed)\n    else\n      theGraphicSymbol.SetColor(Color.GetBlue)\n  end\n  theGraphic
point.SetSymbol(theGraphicSymbol)\n  theLinkNum = GraphicText.Make(\"  \"+theVtab.ReturnValue(GCP,rec).asstring,thedrawpoint)\n  theLinkNum.GetSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetName(theVtab.ReturnValue(GCP,rec).asString)\n  theGraphicpoint.Invalidate\n  theGraphicList.Add(theGroup)\nend\n\n\nfor each rec in theVtab 'to \n  OnOrOff = theVtab.ReturnValue(UsePnt,rec)\n  theGraphicList = ToV.GetGraphics\n  thedrawpoint = Point.Make(theV
tab.ReturnValue(ToX,rec),theVtab.ReturnValue(ToY,rec))\n  theGraphicpoint = GraphicShape.Make(thedrawpoint)\n  theGraphicSymbol = BasicMarker.Make\n  theGraphicSymbol.Copy(theGraphicSymboltoUse)\n  theGraphicSymbol.SetSize(10)\n  if ( OnOrOff = \"ON\")\n    then\n      theGraphicSymbol.SetColor(Color.GetRed)\n    else\n      theGraphicSymbol.SetColor(Color.GetBlue)\n  end\n  theGraphicpoint.SetSymbol(theGraphicSymbol)\n  theLinkNum = GraphicText.Make(\"  \"+theVtab.ReturnValue(GCP,rec).asstring,thedrawpoint)\n  theLinkNum.G
etSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetName(theVtab.ReturnValue(GCP,rec).asString)\n  theGraphicpoint.Invalidate\n  theGraphicList.Add(theGroup)\nend\n\n\nfor each rec in theVtab 'to roam\n  OnOrOff = theVtab.ReturnValue(UsePnt,rec)\n  theGraphicList = FromV.GetGraphics\n  thedrawpoint = Point.Make(theVtab.ReturnValue(FromX,rec),theVtab.ReturnValue(FromY,rec))\n  theGraphicpoint = GraphicShape.Make(thedrawpoint)\n  theGraphicSymbol =
 BasicMarker.Make\n  theGraphicSymbol.Copy(theGraphicSymboltoUse)\n  theGraphicSymbol.SetSize(10)\n  if ( OnOrOff = \"ON\")\n    then\n      theGraphicSymbol.SetColor(Color.GetRed)\n    else\n      theGraphicSymbol.SetColor(Color.GetBlue)\n  end\n  theGraphicpoint.SetSymbol(theGraphicSymbol)\n  theLinkNum = GraphicText.Make(\"  \"+theVtab.ReturnValue(GCP,rec).asstring,thedrawpoint)\n  theLinkNum.GetSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetNa
me(theVtab.ReturnValue(GCP,rec).asString)\n  theGraphicpoint.Invalidate\n  theGraphicList.Add(theGroup)\nend"
)

(Script.374
	Name:	"RasterWarp.FromPickThemeSnap"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\n\ntheThemes = FromV.GetThemes\nUseThemes = List.Make\n\nfor each t in theThemes\n  if ( t.Is(Ftheme))\n    then\n      UseThemes.Add(t)\n  end\nend\n\nif (UseThemes.Count = 0)\n  then\n    MsgBox.Info(\"There are no Feature Themes in the FROM View that can be used for snapping.\",\"INFO\")\n    exit\nend\n\nSnapTheme = MsgBox.ListAsString(UseThemes,\"Pick the snap theme for the FROM View\",\"FROM SNAP THEME\")\nif (SnapTheme = 
nil)\n  then\n    exit\nend\nParms = RstWrpExt.GetPreferences.Get(\"SnapFrom\")\nParms.Set(2,SnapTheme)\nRstWrpExt.GetPreferences.Set(\"SnapFrom\",Parms)\n"
)

(Script.375
	Name:	"RasterWarp.FromSnapRadius"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\n\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\nif (theView <> FromV)\n  then\n    MsgBox.Info(\"You can only use the FROM SnapDistance Tool on the FROM VIEW\",\"INFO\")\n    exit\nend\n\ntheDisp = theView.GetDisplay\n\ntheCircle = theDisp.ReturnUserCircle.GetRadius\n\nParms= RstWrpExt.GetPreferences.Get(\"SnapFrom\")\nParms.Set(1,theCircle)\n\nRstWrpExt.GetPreferences.Set(\"SnapFrom\",Parms)"
)

(Script.376
	Name:	"RasterWarp.FromSnapType"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\n\nSnapList = {\"None\",\"To Closest Vertex\",\"To Closest Boundary\", \"To Closest EndPoint\", \"To Nearest Intersection\"}\n\ntheType = MsgBox.ListAsString(SnapList,\"Pick the type of snapping you prefer.\",\"SNAP TYPE\")\nif (theType = nil)\n  then\n    exit\nend\n\nif (theType = \"None\")\n  then\n    SnapType = #POINT_SNAP_NONE \n  elseif (theType = \"To Closest Vertex\")\n    then\n      SnapType = #POINT_SNAP_VERTEX \n  elseif (theType = \"To Closest Boundary\")\n    then\n      SnapType = #POINT_S
NAP_BOUNDARY \n  elseif (theType = \"To Closest EndPoint\")\n    then\n      SnapType = #POINT_SNAP_ENDPOINT \n  else\n    SnapType = #POINT_SNAP_INTERSECTION \nend\n\nParms = RstWrpExt.GetPreferences.Get(\"SnapFrom\")\nParms.Set(0,SnapType)\nRstWrpExt.GetPreferences.Set(\"SnapFrom\",Parms)\n"
)

(Script.377
	Name:	"RasterWarp.GoBatch"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 17:41:43 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntGUI = av.FindGUI(\"Table\")\ntheDocs = av.GetProject.GetDocsWithGroupGUI(tGUI)\nlstNames = List.Make\n\nif(theDocs.IsEmpty) then\n  msgBox.Info(\"There are no tables in the project.\",
\"\")\n  return nil\nend\n\nfor each t in theDocs\n  lstNames.Add(t.GetName)\nend\n\nresult = msgBox.ListAsString(lstNames,\"Pick the Batch Table to Use.\",\"\")\nif(result = nil) then\n  return nil\nend\n\nfor each t in theDocs\n  if(t.GetName = result) then\n    chosen = t\n    break\n  end\nend\n\nBatchVTab = chosen.GetVtab\n\nimgName = BatchVTab.FindField(\"ImageIN\")\noutimgName = BatchVTab.FindField(\"ImageOUT\")\nGCPtbl = BatchVTab.FindField(\"GCPTable\")\ntheOrder = BatchVTab.FindField(\"Order\")\ntheMethod = BatchVTab.FindField(\"Method\")
\ncellSize = BatchVTab.FindField(\"CellSize\")\nimgType = BatchVTab.FindField(\"Type\")\n\nif ( (imgName = nil) or (outimgName = nil) or (GCPtbl = nil) or (theOrder = nil) or \n     (theMethod = nil) or (cellSize = nil) or (imgType = nil)) then\n  msgBox.Error(\"The selected table is not a Batch Warp table.\",\"\")\n  return nil\nend\n\nmsgDiag = av.FindDialog(\"RasterWarp.MessageStatus\")\ntheMsg = msgDiag.FindByName(\"theMessage\")\ntheMsg.Empty\ncloseBtn = MsgDiag.FindByName(\"Close\")\ncloseBtn.SetEnabled(False)\nmsgDiag.Open\ntheMs
g.SetText(theMsg.GetText + \"***Starting Batch Warp***\" + NL)\nfor each rec in BatchVTab\n  fnInName = BatchVtab.ReturnValue(imgName,rec).asFileName\n  fnOutName = BatchVtab.ReturnValue(outimgName,rec).asFileName\n  fnTable = BatchVtab.ReturnValue(GCPtbl,rec).asFileName\n  \n  useOrder = BatchVtab.ReturnValue(theOrder,rec)\n  useMethod = BatchVtab.ReturnValue(theMethod,rec)\n  theSize = BatchVtab.ReturnValue(cellSize,rec)\n  theType = BatchVtab.ReturnValue(imgType,rec)\n  \n  theVtab = VTab.Make(fnTable,false,false)\n  
\n  UsePnt = theVtab.FindField(\"Use_Point\")\n  infx = theVtab.FindField(\"From_x\")\n  infy = theVtab.FindField(\"From_y\")\n  outfx = theVtab.FindField(\"To_x\")\n  outfy = theVtab.FindField(\"To_y\")\n  \n  tmpCnt = 0\n  for each recd in  theVtab\n  if ( theVtab.ReturnValue( UsePnt,recd).UCase = \"ON\") \n    then\n     tmpCnt =tmpCnt + 1\n  end\n  end\n\n  needed = ((useOrder + 1)*(useOrder + 2))/2\n  if(tmpCnt < needed) then\n    theMsg.SetText(theMsg.GetText + \"No success \" + fnInName.asString + \" Not enough GCP's for the given 
order.\" + NL)\n    theVtab = nil\n    continue\n  end\n  \n  theLinkList = List.Make\n  for each recd in theVtab\n    if (theVtab.ReturnValue(UsePnt,recd).UCase = \"ON\") then\n      x1 = theVtab.ReturnValue(infx,recd)\n      y1 = theVtab.ReturnValue(infy,recd)\n      x2 = theVtab.ReturnValue(outfx,recd)\n      y2 = theVtab.ReturnValue(outfy,recd)\n      p1 = Point.Make(x1,y1)\n      p2 = Point.Make(x2,y2)\n      l1 = Line.Make(p1,p2)\n      theLinkList.Add(l1)\n    end\n  end\n\n  if (useMethod = \"Nearest Neighbor\") then\n    r
esEnum = #GRID_RESTYPE_NEAREST\n  elseif (useMethod = \"Bilinear Interpolation\") then\n    resEnum = #GRID_RESTYPE_BILINEAR \n  else\n    resEnum = #GRID_RESTYPE_CUBIC\n  end\n  \n  \n  if (theType.UCase = \"BSQ\") then\n    imgTypeID = 1\n  elseif (theType.UCase = \"BIL\") then\n    imgTypeID = 2\n  elseif (theType.UCase = \"BIP\") then\n    imgTypeID = 3\n  elseif (theType.UCase = \"JPG\") then\n    imgTypeID = 4\n  elseif (theType.UCase = \"TIF\") then\n    imgTypeID = 5\n  end\n\n  \n\n  theSrcNm = SrcName.Make(fnInName.asString)\n  the
ImgSrc = ImgSrc.Make(theSrcNm)\n  if(theImgSrc.HasError) then\n    theMsg.SetText(theMsg.GetText + \"No success \" + fnInName.asString + \" there was a problem opening the image.\" + NL)\n    continue\n  end\n  bandcount = theImgSrc.GetNumBands\n  GRID.Reset\n\n  if (bandcount = 1) then\n    grd1 = Grid.MakeFromImage(fnInName, 1)\n  else\n    grd1 = Grid.MakeFromImage(fnInName, 1)\n    grd2 = Grid.MakeFromImage(fnInName, 2)\n    grd3 = Grid.MakeFromImage(fnInName, 3)\n  end\n  if(theSize = 0) then\n    resample = nil\n  else\n  
  resample = theSize\n  end\n  if (bandcount = 1) then\n    g1 = grd1.Warp(theLinkList, useOrder, resEnum, resample)\n    g1str = g1.GetSrcName.GetDataSource\n    g2str = \" \"\n    g3str = \" \"\n    numGrids = 1\n  else\n    g1 = grd1.Warp(theLinkList, useOrder, resEnum, resample)\n    g1str = g1.GetSrcName.GetDataSource\n    g2 = grd2.Warp(theLinkList, useOrder, resEnum, resample)\n    g2str = g2.GetSrcName.GetDataSource\n    g3 = grd3.Warp(theLinkList, useOrder, resEnum, resample)\n    g3str = g3.GetSrcName.GetDataSource
\n    numGrids = 3\n  end\n  home = system.getenvvar(\"AVHOME\")\n  home = home + \"\\bin32\\g2i.dll\"\n\n  ' make the dll function call\n  aDLL = DLL.Make(home.asfilename)\n  WriteImage = DLLProc.make(aDLL,\"WriteImg\",#DLLPROC_TYPE_INT32,{#DLLPROC_TYPE_STR,#DLLPROC_TYPE_STR,#DLLPROC_TYPE_STR,\n          #DLLPROC_TYPE_INT32,#DLLPROC_TYPE_STR,#DLLPROC_TYPE_INT32})\n\n  system.RefreshWindows\n  x = WriteImage.call({g1str,g2str,g3str,numGrids,fnOutName.asString,imgTypeID})\n\n  \n  'say ok if the conversion was a success\n  if ( x =
 99)\n    then \n    if (imgTypeID < 4) then\n    theMsg.SetText(theMsg.GetText + \"Image Warp was successful \" + fnInName.asString + NL)\n    system.RefreshWindows\n    fnOutName.SetExtension(\"hdr\")\n    fileWld = LineFile.Make(fnOutName,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Get(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left = theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.ddddddddddd
ddd\")\n    sizeCell.Setformat(\"d.dddddddddddddd\")\n    fileWld.WriteElt(\"byteorder M\")\n    fileWld.WriteElt(\"nbits 8\")\n    fileWld.WriteElt(\"xdim \"+sizeCell.asString)\n    fileWld.WriteElt(\"ydim \"+sizeCell.asString)\n    fileWld.WriteElt(\"ncols \"+ col.asString)\n    fileWld.WriteElt(\"nrows \"+row.asString)\n    fileWld.WriteElt(\"nbands \" + numGrids.asString)\n    fileWld.WriteElt(\"ulxmap \"+ (left+(0.5*sizeCell)).asString)\n    fileWld.WriteElt(\"ulymap \" + (top-(0.5*sizeCell)).asString)\n    fileWld.Close\n  elseif (im
gTypeID = 4) then\n    theMsg.SetText(theMsg.GetText + \"Image Warp was successful \"+ fnInName.asString + NL)\n    system.RefreshWindows\n    fnOutName.SetExtension(\"jpgw\")\n    fileWld = LineFile.Make(fnOutName,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Get(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left = theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.dddddddddddddd\")\n    sizeCell.Setfor
mat(\"d.dddddddddddddd\")\n    fileWld.WriteElt(sizeCell.asString)\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"-\" + sizeCell.asString)\n    fileWld.WriteElt((left+(0.5*sizeCell)).asString)\n    fileWld.WriteElt((top-(0.5*sizeCell)).asString)\n    fileWld.Close\n  elseif (imgTypeID = 5) then\n    theMsg.SetText(theMsg.GetText + \"Image Warp was successful \" + fnInName.asString+ NL)\n    system.RefreshWindows\n    fnOutName.SetExtension(\"tifw\")\n    fileWld = Li
neFile.Make(fnOutName,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Get(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left = theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.dddddddddddddd\")\n    sizeCell.Setformat(\"d.dddddddddddddd\")\n    fileWld.WriteElt(sizeCell.asString)\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"-\" + sizeCell.asS
tring)\n    fileWld.WriteElt((left+(0.5*sizeCell)).asString)\n    fileWld.WriteElt((top-(0.5*sizeCell)).asString)\n    fileWld.Close\n  end\n  'something went wrong display the error message\n  elseif (( x = 1) or (x = 2) or (x = 3)) then \n      theMsg.SetText(theMsg.GetText + \"There was an error opening a Grid.\"+ fnInName.asString+ NL)\n  elseif ( x = 4) then \n      theMsg.SetText(theMsg.GetText + \"There was an error reading the bounding box of a Grid.\"+ fnInName.asString+ NL)\n  elseif ( x = 5) then \n      theMsg
.SetText(theMsg.GetText + \"There was an error setting the window of a Grid.\"+ fnInName.asString+ NL)\n  elseif ( x = 6) then \n      theMsg.SetText(theMsg.GetText + \"There was an error creating the output file.\"+ fnInName.asString+ NL)\n  elseif ( x = 7) then \n      theMsg.SetText(theMsg.GetText + \"There was a buffer allocation problem GRID.\"+ fnInName.asString+ NL)\n  elseif ( x = 8) then \n      theMsg.SetText(theMsg.GetText + \"There was a buffer allocation problem JPEG.\"+ fnInName.asString+ NL)\n  elseif ( x =
 15) then \n      theMsg.SetText(theMsg.GetText + \"Could not load the libtiff.dll\"+ fnInName.asString+ NL)\n  elseif ( x = 16) then \n      theMsg.SetText(theMsg.GetText + \"Could not access a function in libtiff.dll\"+ fnInName.asString+ NL)\n  elseif ( x = 17) then \n      theMsg.SetText(theMsg.GetText + \"Could not write scanline.\"+ fnInName.asString+ NL)\n  end\n\n  if(bandcount = 1) then\n    grd1 = nil\n    g1 = nil\n  else\n    g1 = nil\n    g2 = nil\n    g3 = nil\n    grd1 = nil\n    grd2 = nil\n    grd3 = nil\n  end\n  
  \n  aDLL = nil\n  WriteImage = nil\n  av.PurgeObjects\n  \nend\n\ntheMsg.SetText(theMsg.GetText + \"***Batch Warp Session Complete***\" + NL)\ncloseBtn.SetEnabled(True)\n\n\n\n\n"
)

(Script.378
	Name:	"RasterWarp.HasUpdate"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n   then\n     exit\nend\nSELF.SetEnabled((theView.GetGraphics.Count > 0) or (theView.GetThemes.Count > 0))"
)

(Script.379
	Name:	"RasterWarp.Help"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Wed Mar 10 16:51:55 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nhome = system.GetEnvVar(\"AVHOME\") + \"\\help\\ImageWarp.hlp\"\nsystem.execute (\"winhelp.exe \"+home)"
)

(Script.380
	Name:	"RasterWarp.ImportTable"
	SourceCode:	"' Name: Import Table\n'\n' Author: Kenneth R. McVay\n' Date: Thu Aug 20 13:54:26 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\nfileTable = fileDialog.Show(\"*.dbf\",\"*.dbf\",\"Pick the table you would like to import.\")\n\nif (filetable = nil ) then\n  exit\nend\n\nv = VTab.Mak
e(fileTable, FALSE, FALSE)\nif (v.HasError) then\n  if (v.HasLockError) then\n      MsgBox.Error(\"Unable to acquire Read Lock for file \" + fileTable.GetBaseName, \"\")\n      exit\n    else\n      MsgBox.Error(\"The file '\" + fileTable.GetBaseName + \"' is not valid.\", \"\")\n      exit\n  end\nelse\n  \n  outName = av.GetProject.MakeFileName(\"Coords\",\"dbf\")\n  coordfile = FileDialog.Put(outName,\"*.dbf\",\"Enter the name for the new GCP table.\")\n\n  if (coordfile <> nil) then\n  '### create the table to hold the coordinates ###\n
\n      theVtab = Vtab.MakeNew(coordfile,dbase)\n      coortable = Table.MakeWithGUI(theVtab,\"Table\")\n      coortable.SetName(\"Ground Control Points\")\n\n      GCP = Field.Make(\"GCP\",#FIELD_DECIMAL,10,0)\n      UsePnt = Field.Make(\"Use Point\",#FIELD_CHAR,3,0)\n      infx = Field.Make(\"From x\",#FIELD_DECIMAL,25,7)\n      infy = Field.Make(\"From y\",#FIELD_DECIMAL,25,7)\n      outfx = Field.Make(\"To x\",#FIELD_DECIMAL,25,7)\n      outfy = Field.Make(\"To y\",#FIELD_DECIMAL,25,7)\n      xErr = Field.Make(\"X_Error\",#FIELD_DE
CIMAL,25,7)\n      yErr = Field.Make(\"Y_Error\",#FIELD_DECIMAL,25,7)\n      theVtab.AddFields({GCP,UsePnt,infx,infy,outfx,outfy,xErr,yErr})\n      \n      lstFields = v.GetFields\n      lstFields.Insert(\"NONE\")\n      \n      fieldOK = false\n      while (fieldOK = false)\n        fldFromX = msgBox.ListAsString(lstFields,\"Pick the field to use for the From X coordinates.\",\"Pick Field\")\n        if (fldFromX = nil) then\n          exit\n        else\n          if (fldFromX = \"NONE\") then\n            fieldOK = true\n       
   elseif (fldFromX.IsTypeNumber = false) then\n            msgBox.Error(\"The field that was chosen is not a numeric field.\",\"NON Numeric Field\")\n          else\n            fieldOK = true\n          end\n        end\n      end\n      \n      fieldOK = false\n      while (fieldOK = false)\n        fldFromY = msgBox.ListAsString(lstFields,\"Pick the field to use for the From Y coordinates.\",\"Pick Field\")\n        if (fldFromY = nil) then\n          exit\n        else\n          if (fldFromY = \"NONE\") then\n            fiel
dOK = true\n          elseif (fldFromY.IsTypeNumber = false) then\n            msgBox.Error(\"The field that was chosen is not a numeric field.\",\"NON Numeric Field\")\n          else\n            fieldOK = true\n          end\n        end\n      end\n      \n      fieldOK = false\n      while (fieldOK = false)\n      fldToX = msgBox.ListAsString(lstFields,\"Pick the field to use for the To X coordinates.\",\"Pick Field\")\n      if (fldToX = nil) then\n          exit\n        else\n          if (fldToX = \"NONE\") then\n          
  fieldOK = true\n          elseif (fldToX.IsTypeNumber = false) then\n            msgBox.Error(\"The field that was chosen is not a numeric field.\",\"NON Numeric Field\")\n          else\n            fieldOK = true\n          end\n        end\n      end\n      \n      fieldOK = false\n      while (fieldOK = false)\n      fldToY = msgBox.ListAsString(lstFields,\"Pick the field to use for the To Y coordinates.\",\"Pick Field\")\n      if (fldToY = nil) then\n          exit\n        else\n          if (fldToY = \"NONE\") then\n      
      fieldOK = true\n          elseif (fldToY.IsTypeNumber = false) then\n            msgBox.Error(\"The field that was chosen is not a numeric field.\",\"NON Numeric Field\")\n          else\n            fieldOK = true\n          end\n        end\n      end\n      \n      recdCount = 1\n      theVtab.SetEditable(True)\n      for each recd in v\n        newRec = theVtab.AddRecord\n        theVtab.SetValue(GCP,newRec,recdCount)\n        theVtab.SetValue(UsePnt,newRec,\"ON\")\n        if (fldFromX <> \"NONE\") then\n          theVt
ab.SetValue(infx,newRec,v.ReturnValue(fldFromX,recd))\n        end\n        if (fldFromY <> \"NONE\") then\n          theVtab.SetValue(infy,newRec,v.ReturnValue(fldFromY,recd))\n        end\n        if (fldToX <> \"NONE\") then\n          theVtab.SetValue(outfx,newRec,v.ReturnValue(fldToX,recd))\n        end\n        if (fldToY <> \"NONE\") then\n          theVtab.SetValue(outFY,newRec,v.ReturnValue(fldToY,recd))\n        end\n        recdCount = recdCount + 1\n      end\n      \n      coorTable.GetWin.Open\n     theVtab.SetEdi
table(False)\n  else\n    exit\n  end\nend"
)

(Script.381
	Name:	"RasterWarp.InstallScript"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:08:59 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nif (av.GetProject = nil)\n  then\n    return nil\nend\n\n'if (Extension.Find(\"Spatial Analyst\") = nil) then\n'  Extension.Open(\"$AVEXT\\spatial.avx\".asFileNa
me)\n'end\n\n\namenuBar = av.GetProject.FindGUI(\"Project\").GetMenuBar\namenuBar.Add(Self.Get(0),4)\n\n\nav.GetProject.SetStartUp(\"RasterWarp.LoadToolBar\")"
)

(Script.382
	Name:	"RasterWarp.LoadAbout"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sat Mar 06 01:29:27 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\ntheDiag = av.FindDialog(\"RasterWarp.Message\")\nAVUpperLeft = av.ReturnOrigin    \nAVCenter = avUpperLeft + (av.ReturnExtent / (2@2))    \nhalfDialog
WidthHeight = theDiag.ReturnExtent.ReturnSize / (2@2)    \nMovePoint = AVCenter - halfDialogWidthHeight    \ntheDiag.MoveTo(MovePoint.GetX, MovePoint.GetY)\ntheDiag.Open"
)

(Script.383
	Name:	"RasterWarp.LoadAnyTheme"
	SourceCode:	"' Name: LoadAnyTheme\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 17:29:50 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\n\naSrcName = SourceDialog.ShowClass (\"Pick the Theme that you want to Warp TO.\", FSrc)\n    \nif (aSrcName.IsEmpty) then\n  return nil\nelse\n  theDiag = av.FindDialog(\"RasterWar
p.SessionBegin\")\n  txtTO = theDiag.FindByName(\"txtTo\")\n  if (aSrcName.Count > 1) then\n    msgBox.Error(\"You can only pick one theme at this stage. More can be added later with Add Themes.\",\"\")\n    return nil\n  end\n  fnSrc = aSrcName.Get(0).GetDataSource.asFileName\n  if(aSrcName.Get(0).GetSubName = \"\") then\n    if(fnSrc.GetExtension.Count = 0) then\n      if(Grid.IsValidDataSetFileName(fnSrc).Not) then\n        msgBox.Error(\"The source file does not exist or is invalid.\",\"\")\n        return nil\n      end\n    el
seif (ImgSrc.IsValidFileName(fnSrc).Not) then\n      msgBox.Error(\"The source file does not exist or is invalid.\",\"\")\n      return nil\n    end\n    txtTO.SetText(fnSrc.asString)\n    theDiag.FindByName(\"btnOK\").Update\n    \n  elseif(fnSrc.GetExtension = \"shp\") then\n    if(file.Exists(fnSrc).Not) then\n      msgBox.Error(\"The source file does not exist or is invalid.\",\"\")\n      return nil\n    end\n    txtTO.SetText(fnSrc.asString)\n    theDiag.FindByName(\"btnOK\").Update\n  else\n    txtTo.SetText(aSrcName.Get(0).GetD
ataSource++aSrcName.Get(0).GetSubName)\n    theDiag.FindByName(\"btnOK\").Update\n  end\nend"
)

(Script.384
	Name:	"RasterWarp.LoadImageTheme"
	SourceCode:	"' Name: LoadImageThemes\n'\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 16:49:42 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\naSrcName = SourceDialog.ShowClass (\"Pick the Image Theme that you want to Warp.\", ImgSrc)\n    \nif (aSrcName.IsEmpty) then\n  return nil\nelse\n  theDiag = av.FindDialog(\"
RasterWarp.SessionBegin\")\n  txtFROM = theDiag.FindByName(\"txtFrom\")\n  if (aSrcName.Count > 1) then\n    msgBox.Error(\"You can only pick one Image theme\",\"\")\n    return nil\n  end\n  \n  if (ImgSrc.IsValidFileName(aSrcName.Get(0).GetDataSource.asFileName).Not) then \n    msgBox.Error(\"You picked something other then an Image Theme.\",\"\")\n    return nil\n  end\n  txtFROM.SetText(aSrcName.Get(0).GetDataSource)\n  theDiag.FindByName(\"btnOK\").Update\nend\n        \n"
)

(Script.385
	Name:	"RasterWarp.LoadNewTable"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 12:10:37 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFr
omV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\n\ntheDiag = av.FindDialog(\"RasterWarp.NewTableDiag\")\ntxtBx = theDiag.FindByName(\"txtDBFName\")\ntxtBx.Empty\nrdoNew = theDiag.FindByName(\"rdoNew\")\nrdoNew.Select\n\nAVUpperLeft = av.ReturnOrigin    \nAVCenter = avUpperLeft + (av.ReturnExtent / (2@2))    \nhalfDialogWidthHeight = theDiag.ReturnExtent.ReturnSize / (2@2)    \nMovePoint = AVCenter - halfDialogWidthHeight    \ntheDiag.MoveTo(MovePoint.GetX, MovePoint.GetY)\ntheDiag.Open\nresult = theDiag.GetMod
alResult\nif(result = 0) then\n  return nil\nend\nfnDBF = theDiag.FindByName(\"txtDBFName\").GetText.asFileName\nif(result = 2) then\n  Dummy = av.Run(\"RasterWarp.LoadTable\",{fnDBF})\n  if(Dummy = nil) then\n    msgBox.Error(\"The chosen table is not a valid GCP Table\",\"\")\n    return nil\n  end\n  theGraphics = ToV.GetGraphics\n  theGraphics.Empty\n  theGraphics = FromV.GetGraphics\n  theGraphics.Empty\n  theGraphics = ToRoamV.GetGraphics\n  theGraphics.Empty\n  'delete the old table\n  tGUI = av.FindGUI(\"Table\")\n  theDocs = a
v.GetProject.GetDocsWithGroupGUI(tGUI)\n  if(theDocs.IsEmpty.Not) then\n    theTable = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1)\n    for each d in theDocs\n      if(d.GetName = theTable.GetName) then\n          av.GetProject.RemoveDoc(d)\n      end\n    end\n  end\n  RstWrpExt.GetPreferences.Set(\"MesaVerde\",Dummy)\n  RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})          \n  av.Run(\"RasterWarp.DispGraphics\",{})\nelse \n  theTable = av.Run(\"RasterWarp.MakeGCPTable\",{fnDBF})\n  TableWin = theTable.GetWin\n  tmp
List = {TableWin,theTable}\n  theGCPcount = 0\n  RstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n  theGraphics = ToV.GetGraphics\n  theGraphics.Empty\n  theGraphics = FromV.GetGraphics\n  theGraphics.Empty\n  theGraphics = ToRoamV.GetGraphics\n  theGraphics.Empty\n  'delete the old table\n  tGUI = av.FindGUI(\"Table\")\n  theDocs = av.GetProject.GetDocsWithGroupGUI(tGUI)\n  if(theDocs.IsEmpty.Not) then\n    theTable = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1)\n    for each d in theDocs\n      if(d.GetName = the
Table.GetName) then\n          av.GetProject.RemoveDoc(d)\n      end\n    end\n  end\n  RstWrpExt.GetPreferences.Set(\"MesaVerde\",tmpList)\n  RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})\nend \n\nCurrentView = ToV\nRstWrpExt.GetPreferences.Set(\"BatterUp\",{CurrentView})\n\n\nRstWrpExt.GetPreferences.Set(\"MainMan\",{})\nRstWrpExt.GetPreferences.Set(\"LawOrder\",{})\nRstWrpExt.GetPreferences.Set(\"Coeff\",{})\nRstWrpExt.GetPreferences.Set(\"HighBall\",{})\nRstWrpExt.GetPreferences.Set(\"LastPoint\",{})\nRstWrpExt.GetPreferences.Set
(\"CanDo\",{FALSE})\n\n"
)

(Script.386
	Name:	"RasterWarp.LoadTable"
	SourceCode:	"' Name: LoadTable\n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:11:14 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)
\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\n\ntheFile = Self.Get(0)\n    v = VTab.Make(theFile, FALSE, FALSE)\n    if (v.HasError) \n      then\n        if (v.HasLockError) \n          then\n            MsgBox.Error(\"Unable to acquire Read Lock for file \" + theFile.GetBaseName, \"\")\n            Return nil\n          else\n            MsgBox.Error(\"The file '\" + theFile.GetBaseName + \"' is not valid.\", \"\")\n            Return nil\n        end\n      else\n        if (v.FindField(\"GCP\") <> nil)\n    
      then\n            if (v.FindField(\"Use_Point\") <> nil)\n              then\n                if (v.FindField(\"From_x\") <> nil)\n                  then\n                    if (v.FindField(\"From_y\") <>  nil)\n                      then\n                        if (v.FindField(\"To_x\") <>  nil)\n                          then\n                            if (v.FindField(\"To_y\") <> nil)\n                              then\n                                if (v.FindField(\"X_Error\") <> nil)\n                            
      then\n                                    if (v.FindField(\"Y_Error\") <> nil)\n                                      then\n                                          UsePnt = v.FindField(\"Use_Point\")\n                                          fromX = v.FindField(\"From_x\")\n                                          fromY = v.FindField(\"From_y\")\n                                          toX = v.FindField(\"To_x\")\n                                          toY = v.FindField(\"To_y\")\n                               
           \n                                          blnFrom = False\n                                          blnTo = False\n                                          recCount = 0\n                                          for each rec in v\n                                            if ((v.ReturnValue(fromX,rec) <> 0.0) and (v.ReturnValue(fromY,rec) <> 0.0)) then\n                                              blnFrom = True\n                                            end\n                                    
        if ((v.ReturnValue(toX,rec) <> 0.0) and (v.ReturnValue(toY,rec) <> 0.0)) then\n                                              blnTo = True\n                                            end\n                                            recCount = recCount + 1\n                                          end\n                                          if ((blnFrom = False) and (blnTo = True)) then\n                                            arect = FromV.ReturnExtent\n                                            h
orz = (arect.GetRight - arect.GetLeft).Abs / (recCount + 1)\n                                            vert = (arect.GetTop - arect.GetBottom).Abs / recCount\n                                            \n                                            if (arect.GetRight > arect.GetLeft) then\n                                              horzPos = arect.GetLeft + horz\n                                              v.SetEditable(True)\n                                              for each i in v\n                  
                              v.SetValue(fromX,i,horzPos)\n                                                if ( arect.GetTop < arect.GetBottom) then\n                                                  v.SetValue(fromY,i,arect.GetTop + (2*vert))\n                                                else\n                                                  v.SetValue(fromY,i,arect.GetTop - (2*vert))\n                                                end\n                                                horzPos = horzPos + hor
z\n                                              end\n                                              v.SetEditable(False)\n                                            elseif ( arect.GetRight < arect.GetLeft) then\n                                               horzPos = arect.GetLeft - horz\n                                               v.SetEditable(True)\n                                               for each i in v\n                                                 v.SetValue(fromX,i,horzPos)\n                  
                               if (arect.GetTop < arect.GetBottom) then\n                                                   v.SetValue(fromY,i,arect.GetTop + (2*vert))\n                                                 else\n                                                   v.SetValue(fromY,i,arect.GetTop - (2*vert))\n                                                 end\n                                                 horzPos = horzPos - horz\n                                               end\n                  
                             v.SetEditable(False)\n                                             end\n                                             \n                                           elseif ((blnFrom = True) and (blnTo = False)) then\n                                            arect = ToV.ReturnExtent\n                                            horz = (arect.GetRight - arect.GetLeft).Abs / (recCount + 1)\n                                            vert = (arect.GetTop - arect.GetBottom).Abs / recCount\n
                                            \n                                            if (arect.GetRight > arect.GetLeft) then\n                                              horzPos = arect.GetLeft + horz\n                                              v.SetEditable(True)\n                                              for each i in v\n                                                v.SetValue(toX,i,horzPos)\n                                                if ( arect.GetTop < arect.GetBottom) then\n             
                                     v.SetValue(toY,i,arect.GetTop + (2*vert))\n                                                else\n                                                  v.SetValue(toY,i,arect.GetTop - (2*vert))\n                                                end\n                                                horzPos = horzPos + horz\n                                              end\n                                              v.SetEditable(False)\n                                             e
lseif ( arect.GetRight < arect.GetLeft) then\n                                               horzPos = arect.GetLeft - horz\n                                               v.SetEditable(True)\n                                               for each i in v\n                                                 v.SetValue(toX,i,horzPos)\n                                                 if (arect.GetTop < arect.GetBottom) then\n                                                   v.SetValue(toY,i,arect.GetTop + (2*vert))\n 
                                                else\n                                                   v.SetValue(toY,i,arect.GetTop - (2*vert))\n                                                 end\n                                                 horzPos = horzPos - horz\n                                               end\n                                               v.SetEditable(False)\n                                             end\n                                             \n                         
                                                      \n                                          else ' the case for both from and to are already filled\n                                            'dont need to do anything\n                                           \n                                          end\n                                          \n                                          gui = av.GetProject.FindGUI(\"Table\")\n                                          t = Table.MakeWithGUI(v, \"Table\")\n 
                                         t.SetName(v.GetName)\n                                          High = 0\n                                          GCP = v.FindField(\"GCP\")\n                                          for each rec in v\n                                            tmp = v.ReturnValue(GCP,rec)\n                                            if (tmp > High)\n                                              then\n                                                High = tmp\n                             
               end\n                                          end\n                                          \n                                          RstWrpExt.GetPreferences.Set(\"Pointy\",{High})\n                                            \n                                          TableWin = t.GetWin\n                                          tmpList = {}\n                                          tmpList.Add(TableWin)\n                                          tmpList.Add(t)\n                                 
         Return tmpList\n                                       else\n                                         msgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                                         Return nil\n                                     end\n                                  else\n                                    MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                                    Return nil\n                                end\n                              else
\n                                MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                                Return nil\n                            end\n                          else\n                            MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                            Return nil\n                        end\n                      else\n                        MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                        Return nil\n               
     end\n                 else\n                   MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n                   Return nil\n               end\n             else\n               MsgBox.Info(\"This is not a Valid Coordinate Table To\",\"Info\")\n               Return nil\n          end\n        else\n          MsgBox.Info(\"This is not a Valid Coordinate Table\",\"Info\")\n          Return nil\n      end\n          \n    end\n\n "
)

(Script.387
	Name:	"RasterWarp.LoadThemesbtnCancel"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 18:17:43 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = Self.GetDialog\ntheDiag.FindByName(\"txtFrom\").Empty\ntheDiag.FindByName(\"txtTo\").Empty\ntheDiag.SetModalResult(0)\ntheDiag.Close\n"
)

(Script.388
	Name:	"RasterWarp.LoadThemesbtnOKUpdate"
	SourceCode:	"' Name: LoadThemesbtnOKUpdate\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 17:56:11 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = av.FindDialog(\"RasterWarp.SessionBegin\")\ntxtFROM = theDiag.FindByName(\"txtFrom\")\ntxtTO = theDiag.FindByName(\"txtTo\")\n\nif ((txtFROM.GetText.Count > 0) and
 (txtTO.GetText.Count > 0)) then\n  theDiag.FindByName(\"btnOK\").SetEnabled(TRUE)\nend"
)

(Script.389
	Name:	"RasterWarp.LoadToolBar"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Fri Mar 05 14:17:22 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = av.FindDialog(\"RasterWarp.ToolBar\")\ntheDiag.FindByName(\"rdoAuto\").Select\n\n'theDiag.FindByName(\"btnCalcFrom\").SetHelpTopic(\"IDH_CALFROM@$AVHOME\\help\\ImageWarp.hlp\")\n'
theDiag.FindByName(\"btnShowSnap\").SetHelpTopic(\"IDH_SNAP@$AVHOME\\help\\ImageWarp.hlp\")\n'theDiag.FindByName(\"btnWarpShape\").SetHelpTopic(\"IDH_GO@$AVHOME\\help\\ImageWarp.hlp\")\n'theDiag.FindByName(\"btnQuit\").SetHelpTopic(\"IDH_QUIT@$AVHOME\\help\\ImageWarp.hlp\")\n'theDiag.FindByName(\"rdoAuto\").SetHelpTopic(\"IDH_PICKTOOL@$AVHOME\\help\\ImageWarp.hlp\")\n'theDiag.FindByName(\"rdoManual\").SetHelpTopic(\"IDH_PICKTOOL@$AVHOME\\help\\ImageWarp.hlp\")\ntheDiag.Open"
)

(Script.390
	Name:	"RasterWarp.Ludcmp"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sat Sep 12 22:25:36 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:11:39 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------
------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n'******************************************************************\n'Public Sub ludcmp(a() As Double, n As Integer, index() As Integer, d As Double)\n    \n  n = Self.Get(0)\n  a = Self.Get(1)\n  index = Self.Get(2)\n  d = Self.Get(3) \n   \n  vv= List.Make\n   \n  for each i in 0.. n\n    vv.add(0.0)\n   
  index.add(0.0)\n  end\n  \n  \n  tiny = 1 * (10 ^ -20)\n  \n  d = 1.0\n  For each i in 1..( n)\n    big = 0.0\n    For each j in 1..( n)\n       if ( ( a.get(i).get(j)).abs > big ) then\n         big = ( a.get(i).get(j)).abs\n       end\n    end\n    \n    If (big = 0) Then\n      MsgBox.Error(\"singular matrix in routine ludcmp all of your GCPs are zero\", \"ERROR Singular Matrix\")\n      exit\n    end\n    \n    \n        vv.Set(i, 1/big)\n    \n    \n    \n   \n  end 'For each i\n  \n       \n  '### ###################### OK TO HERE\n
   \n   For each j in 1..( n)\n   \n    halt = 0\n   \n     For each i in 1..(j-1)\n       if (j = 1) then Continue end\n       sum =  a.get(i).get(j)\n       \n       \n         For each k in 1..(i - 1)\n           if (i = 1) then Continue end\n           sum = sum - ( a.get(i).get(k) *  a.get(k).get(j))\n         end 'for each k\n           \n       tmpList =  a.get(i)\n       tmpList.Set(j,sum)      'a(i,j)=sum\n        a.Set(i,tmpList)\n     end 'for each i\n      \n          \n     big = 0.0\n     For each i in j..( n)\n    
   sum =  a.get(i).get(j)\n      \n         For each k in 1..(j - 1)\n           if (j = 1) then Continue end\n           sum = sum - ( a.get(i).get(k) *  a.get(k).get(j))\n         end 'for each k\n               \n       tmpList =  a.Get(i)\n       tmpList.Set(j,sum)\n        a.Set(i,tmpList)\n      \n       \n       dum = vv.Get(i) * sum.Abs\n       If (dum >= big) then\n         big = dum\n         imax = i\n       end\n     end 'for each i\n     \n     \n     halt = 0\n     \n     \n     if (j <> imax) then\n       \n       fo
r each k in 1..( n)\n         dum =  a.get(imax).get(k)\n         \n         tmplist=  a.Get(imax)\n         tmpList.Set(k, a.Get(j).Get(k))\n          a.Set(imax,tmpList)\n         \n        \n         \n         tmpList =  a.get(j)\n         tmpList.Set(k,dum)\n          a.Set(j,tmpList)\n         \n         halt =0\n                  \n       end 'for each k\n       \n       d = -d\n       vv.Set(imax,vv.get(j))\n       \n       \n       \n     end 'if j <> imax\n     \n        \n     halt = 0\n     \n      index.Set(j,imax)\n     
\n          \n     If ( a.Get(j).Get(j)  = 0.0) then\n       tmpList =  a.Get(j)\n       tmpList.Set(j,tiny)\n        a.Set(j,tmpList)\n     end\n     \n     halt = 0\n     \n     If (j <> ( n)) then\n       dum = 1.0 / ( a.Get(j).Get(j))\n       \n       For each i in (j + 1)..( n)\n             \n         tmpList =  a.Get(i)\n         tmpList.Set(j, a.Get(i).Get(j) * dum)\n          a.Set(i,tmpList)\n         \n         halt = 0\n         \n         \n       end 'for each i\n       \n     end ' if\n     \n     halt = 0\n     \n   en
d\n\n\n       \nReturn {a,index,d}"
)

(Script.391
	Name:	"RasterWarp.Luksb"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sat Sep 12 22:26:02 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:11:48 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------
------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n'Public Sub lubksb(a() As Double, ByVal n As Integer, index() As Integer, b() As Double)\n \n n = Self.Get(0)\n a = Self.Get(1)\n index = Self.Get(2)\n b = Self.Get(3)\n    \n   \n  ii = 0\n  \n  For each i in 1..( n)\n  \n     ip =  index.Get(i)\n     sum =  b.Get(ip)\n     \n      b.Set(ip, b.Get(i))\n     \n 
    If (ii <> 0) then\n     \n        For each j in ii..(i - 1)\n          if (i = 1) then Continue end\n          sum = sum - ( a.Get(i).Get(j) *  b.Get(j))\n        end 'for each j\n        \n     elseif (sum <> 0) then \n       ii = i\n     end\n      b.Set(i,sum)\n  end 'for each i\n  \n  halt = 0\n  \n  For each i in ( n)..1 by -1\n     sum =  b.Get(i)\n     \n     \n       For each j in (i + 1)..( n)\n          if (i =  n) then Continue end\n          sum = sum - ( a.Get(i).Get(j) *  b.Get(j))\n       end 'for j\n     \n    
  \n      b.Set(i,sum/( a.Get(i).Get(i)))\n     \n     halt = 0\n  end\n\n\n\nReturn {b}"
)

(Script.392
	Name:	"RasterWarp.Make"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:09:18 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n             \ntheProject = av.GetProject\n\n\n  \ntheInstallScript = theProject.FindDoc(\"RasterWarp.InstallScript\").GetScript\ntheUninstallScript = theProjec
t.Finddoc(\"RasterWarp.UninstallScript\").GetScript\ntheUnloadScript = theProject.FindDoc(\"RasterWarp.Unload\").GetScript\n'theLoadScript = theProject.FindDoc(\"RasterWarp.Load\").GetScript\ntheCanUnloadScript = theProject.FindDoc(\"RasterWarp.CanUnload\").GetScript\n\nif ((theInstallScript = nil) or (theUninstallScript = nil))\n  then\n    MsgBox.Info(\"Install or Uninstall script not compiled\",\"\")\n    return nil\nend\n\nmyExtension = Extension.Make(\"$AVEXT/ImageWarp.avx\".asFileName,\n  \"ImageWarp\",theInstallScript, theUnins
tallScript,{\"$AVBIN\\avdlog.dll\".asfilename,\"$AVEXT\\spatial.avx\".asFileName})\n\nmyExtension.SetExtVersion(2.0)\nmyExtension.SetAbout(\"ImageWarp An Extension For Geo-Registering Images.\")\nmyExtension.SetUnloadScript(theUnloadScript)\n'myExtension.SetLoadScript(theLoadScript)\nmyExtension.SetCanUnloadScript(theCanUnloadScript)\n  \n\naMenu = av.FindGUI(\"Project\").GetMenuBar\nfor each i in aMenu\n  if( i.GetLabel = \"ImageWarp\") then\n    myExtension.Add(i)\n    break\n  end\nend\n\n\n\ntheDiag = theProject.FindDialog(\"RasterWar
p.ToolBar\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.Message\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.SnapDiag\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.MessageStatus\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.SessionBegin\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.NewTableDiag\")\nmyExtension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.ManualEntry\")\nmyExt
ension.Add(theDiag)\ntheDiag = theProject.FindDialog(\"RasterWarp.Batchmake\")\nmyExtension.Add(theDiag)\n\n\nfor each d in av.GetProject.GetDocs\n  if(d.Is(SEd)) then\n    if(d.GetName.Contains(\"RasterWarp.\")) then\n      if(d.IsCompiled.Not) then\n        d.Compile\n      end\n      myExtension.Add(av.FindScript(d.GetName))\n    end\n  end\nend\n\nmyExtension.Commit"
)

(Script.393
	Name:	"RasterWarp.MakeGCPTable"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Mon Mar 08 00:12:20 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ncoordfile = self.Get(0)\ntheVtab = Vtab.MakeNew(coordfile,dbase)\ncoortable = Table.Make(theVtab)\ncoortable.SetName(theVtab.GetName)\n  \nGCP = Field.Make(\"GCP\",#FIELD_DECIMAL,10,
0)\nUsePnt = Field.Make(\"Use Point\",#FIELD_CHAR,3,0)\ninfx = Field.Make(\"From x\",#FIELD_DECIMAL,22,4)\ninfy = Field.Make(\"From y\",#FIELD_DECIMAL,22,4)\noutfx = Field.Make(\"To x\",#FIELD_DECIMAL,22,4)\noutfy = Field.Make(\"To y\",#FIELD_DECIMAL,22,4)\nXerr = Field.Make(\"X Error\",#FIELD_DECIMAL,22,4)\nYerr = Field.Make(\"Y Error\",#FIELD_DECIMAL,22,4)\ntheVtab.AddFields({GCP,UsePnt,infx,infy,outfx,outfy,Xerr,Yerr})\nreturn coortable"
)

(Script.394
	Name:	"RasterWarp.ManualEntryOK"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Tue Mar 09 10:58:15 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\n\n\ntheDiag = Self.GetDialog\n\ntxtX = theDiag.FindByName(\"txtX\")\ntxtY = theDiag.FindByName(\"txtY\")\n\nif((txtX.IsEmpty) or (txtY.IsEmpty))then\n  msgBox.Info(\"You must enter a coord
inate for both text boxes\",\"\")\n  return nil\nelse\n  theDiag.SetModalResult(1)\n  theDiag.Close\nend\n"
)

(Script.395
	Name:	"RasterWarp.MoveGCP"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\n\nGCP = theVtab.FindField(\"GCP\")\nUsePnt = theVtab.FindField(\"Use_Point\")\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"T
o_y\")\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\n\nToSnapType = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(0)\nToCircle = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(1)\nToSnapTheme = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(2)\n\nFromSnapType = RstWrpExt.GetPreferences.Get(\"SnapFrom\").Get(0)\nFromCircle = RstWrpExt.GetPreferences.Get(\"SnapFrom\").Get(1)\nFromSnapTheme = RstWrpExt.GetPreferences.Get(\"SnapFrom\").Get(2)\n\ntheDisp = theView.GetDisplay\n\naGraphicSet = theView.GetGraphics.G
etSelected\n\nif (aGraphicSet.Count <> 1)\n  then\n    MsgBox.Info(\"You can only move 1 GCP at a time. Either multiple points are selected or no point is selected.\",\"INFO\")\n    exit\nend\n\nr = theDisp.ReturnUserPoint\n      \nif (theView = ToV)\n  then\n    if (ToSnapTheme <> nil)\n      then\n        ToSnapTheme.SetInteractiveSnapTolerance (ToCircle)\n        ToSnapTheme.UserSnapPoint (ToSnapType, r)\n    end\n  elseif (theView = FromV)\n    then\n      if (FromSnapTheme <> nil)\n        then\n          FromSnapTheme.SetInte
ractiveSnapTolerance (FromCircle)\n          FromSnapTheme.UserSnapPoint (FromSnapType, r)\n      end\nend\nx = r.GetX\ny = r.GetY\n\n\nthePalette = av.GetSymbolWin.GetPalette\nmlst = thePalette.GetList(#PALETTE_LIST_MARKER)\ntheGraphicSymboltoUse = mlst.Get(40)\ntheGraphicSymbol = BasicMarker.Make\ntheGraphicSymbol.Copy(theGraphicSymbolToUse)\ntheGraphicSymbol.SetColor(Color.GetRed)\ntheGraphicSymbol.SetSize(10)\n\n\nif ((theView = ToRoamV) or (theView = ToV))\n  then\n    theVtab.SetEditable(TRUE)\n    for each aGraphicGroup
 in aGraphicSet\n      GraphicPoint = aGraphicGroup.GetName\n      GraphicPointNumber = GraphicPoint.asNumber\n      \n      aGraphics = ToRoamV.GetGraphics\n      for each GrphPnt in aGraphics\n        if (GrphPnt.GetName = GraphicPoint)\n          then\n            aGraphics.RemoveGraphic(GrphPnt)\n            break\n        end\n      end\n      aGraphics = ToV.GetGraphics\n      for each GrphPnt in aGraphics\n        if (GrphPnt.GetName = GraphicPoint)\n          then\n            aGraphics.RemoveGraphic(GrphPnt)\n     
       break\n        end\n      end\n      \n      \n\n      \n      theGraphicList = ToRoamV.GetGraphics\n      thedrawpoint = Point.Make(x,y)\n      theGraphicpoint = GraphicShape.Make(thedrawpoint)\n      \n      \n      theGraphicpoint.SetSymbol(theGraphicSymbol)\n      theLinkNum = GraphicText.Make(\"  \"+GraphicPoint,thedrawpoint)\n      theLinkNum.GetSymbol.SetSize(12)\n      theGroup = GraphicGroup.Make\n      theGroup.Add(theGraphicpoint)\n      theGroup.Add(theLinkNum)\n      theGroup.SetName(GraphicPoint)\n      the
GraphicList.Add(theGroup)\n      theGraphicList.Invalidate\n      av.ProcessAllInvals\n\n      \n      theGraphicList = ToV.GetGraphics\n      thedrawpoint = Point.Make(x,y)\n      theGraphicpoint = GraphicShape.Make(thedrawpoint)\n      \n      theGraphicpoint.SetSymbol(theGraphicSymbol)\n      theLinkNum = GraphicText.Make(\"  \"+GraphicPoint,thedrawpoint)\n      theLinkNum.GetSymbol.SetSize(12)\n      theGroup = GraphicGroup.Make\n      theGroup.Add(theGraphicpoint)\n      theGroup.Add(theLinkNum)\n      theGroup.SetName
(GraphicPoint)\n      theGraphicList.Add(theGroup)\n      theGraphicList.Invalidate\n      av.ProcessAllInvals\n\n      \n      for each rec in theVtab\n        if (theVtab.ReturnValue(GCP,rec) = GraphicPointNumber)\n          then\n            theVtab.SetValue(outfx,rec,x)\n            theVtab.SetValue(outfy,rec,y)\n            break\n        end\n      end\n   end ' for\n   \n      theVtab.SetEditable(False)\n      theVtab.Refresh\n  elseif (theView = FromV)\n    then\n      theVtab.SetEditable(True)\n      for each aGraphicG
roup in aGraphicSet\n        GraphicPoint = aGraphicGroup.GetName\n        GraphicPointNumber = GraphicPoint.asNumber\n      \n        aGraphics = FromV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              aGraphics.RemoveGraphic(GrphPnt)\n              break\n          end\n        end\n        x = r.GetX\n        y = r.GetY\n      \n        theGraphicList = FromV.GetGraphics\n        thedrawpoint = Point.Make(x,y)\n        theGraphicpoint = Grap
hicShape.Make(thedrawpoint)\n        \n        \n        theGraphicpoint.SetSymbol(theGraphicSymbol)\n        theLinkNum = GraphicText.Make(\"  \"+GraphicPoint,thedrawpoint)\n        theLinkNum.GetSymbol.SetSize(12)\n        theGroup = GraphicGroup.Make\n        theGroup.Add(theGraphicpoint)\n        theGroup.Add(theLinkNum)\n        theGroup.SetName(GraphicPoint)\n        theGraphicList.Add(theGroup)\n        theGraphicList.Invalidate\n        av.ProcessAllInvals\n        \n        for each rec in theVtab\n          if (th
eVtab.ReturnValue(GCP,rec) = GraphicPointNumber)\n          then\n            theVtab.SetValue(infx,rec,x)\n            theVtab.SetValue(infy,rec,y)\n            break\n          end\n        end\n     end ' for\n     theVtab.SetEditable(False)\n     theVtab.Refresh\n   else\n     exit\nend\n    \n    \n    \n      "
)

(Script.396
	Name:	"RasterWarp.NewTableDiagbtnCancel"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Mon Mar 08 00:49:06 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\nSelf.GetDialog.SetModalResult(0)\nSelf.GetDialog.Close\n"
)

(Script.397
	Name:	"RasterWarp.NewTableDiagbtnOK"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 23:17:05 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = Self.GetDialog\n\ntxtDBFName = theDiag.FindByName(\"txtDBFName\")\nif(txtDBFName.IsEmpty) then\n  msgbox.Info(\"You need to select a table before you can continue.\",\"\")\nels
e\n  if(theDiag.FindByName(\"rdoNew\").IsSelected) then\n    theDiag.SetModalResult(1)\n  else\n    theDiag.SetModalResult(2)\n  end\n\n  Self.GetDialog.Close\nend\n\n\n"
)

(Script.398
	Name:	"RasterWarp.OKCont"
	SourceCode:	"av.FindDialog(\"RasterWarp.Message\").Close"
)

(Script.399
	Name:	"RasterWarp.OnOff"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\nToRoamV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\n\nGCP = theVtab.FindField(\"GCP\")\nUsePnt = theVtab.FindField(\"Use_Point\")\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"T
o_y\")\n\n\nToggleList = List.Make\n\nfor each rec in theVTab\n  ToggleList.Add(theVTab.ReturnValue(GCP,rec))\nend\n\nTogWhich = MsgBox.MultiListAsString(ToggleList,\"Choose the GCP's to Toggle ON/OFF\",\"TOGGLE GCP's\")\nif (TogWhich = NIL) then\n  return nil\nend\n\ntheVtab.SetEditable(TRUE)\nfor each tiepoint in TogWhich\n\n  recToToggle = Nil\n  for each rec in theVTab\n    if (theVTab.ReturnValue(GCP,rec) = tiepoint) then\n        recToToggle = rec\n        break\n    end\n  end\n\n  \n  if (recToToggle <> NIL) then\n  \n    if (theVt
ab.ReturnValue(UsePnt,recToToggle) = \"ON\")\n      then\n        theVTab.SetValue(UsePnt,recToToggle,\"OFF\")\n        GraphicPoint = theVtab.ReturnValue(GCP,recToToggle).asString\n        aGraphics = ToRoamV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetBlue)\n              GrphPnt.Invalidate\n              break\n          end\n        end\n        \n        aGraphics = ToV.GetGraphic
s\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetBlue)\n              GrphPnt.Invalidate\n              break\n          end\n        end\n        \n        aGraphics = FromV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetBlue)\n              GrphPnt.Invalidate
\n              break\n          end\n        end\n        \n        \n        \n        \n      else\n        theVTab.SetValue(UsePnt,recToToggle,\"ON\")\n        \n        GraphicPoint = theVtab.ReturnValue(GCP,recToToggle).asString\n        aGraphics = ToRoamV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetRed)\n              GrphPnt.Invalidate\n              break\n          end\n        
end\n        \n        aGraphics = ToV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint)\n            then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetRed)\n              GrphPnt.Invalidate\n              break\n          end\n        end\n        \n        aGraphics = FromV.GetGraphics\n        for each GrphPnt in aGraphics\n          if (GrphPnt.GetName = GraphicPoint) then\n              GrphPnt.GetGraphics.Get(0).GetSymbol.SetColor(Color.GetRed)
\n              GrphPnt.Invalidate\n              break\n          end\n        end   \n             \n     end  'if else\n  end 'if <> nil\nend 'for\n\nav.ProcessAllInvals\n\n "
)

(Script.400
	Name:	"RasterWarp.Pan"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:11:56 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nav.GetProject.SetModified(true)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheName = theView.GetName\nRstWrpExt = Extension
.Find(\"ImageWarp\")\n\nTheWindows = RstWrpExt.GetPreferences.Get(\"ThreeStooges\")\n\nToRoam = TheWindows.Get(0).Get(1)\n\n\nif ( theView <> ToRoam)\n  then\n    theView.GetDisplay.Pan\nend\n"
)

(Script.401
	Name:	"RasterWarp.PickTool"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:12:05 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nToRoamV = RstWrpExt.GetPreferences.Get(\"Thre
eStooges\").Get(0).Get(1)\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\n\nToSnapType = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(0)\nToCircle = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(1)\nToSnapTheme = RstWrpExt.GetPreferences.Get(\"SnapTo\").Get(2)\n\nFromSnapType = RstWrpExt.GetPreferences.Get(\"SnapFrom\").Get(0)\nFromCircle = RstWrpExt.GetPreferences.Get(\"SnapFrom\").Get(1)\nFromSnapTheme = RstWrpExt.GetPreferences.Get(\"SnapFro
m\").Get(2)\n\n\nfirstRec = RstWrpExt.GetPreferences.Get(\"WhosOnFirst\").Get(0)\nCurrentView = RstWrpExt.GetPreferences.Get(\"BatterUp\").Get(0)\ntheGCPcount = RstWrpExt.GetPreferences.Get(\"Pointy\").Get(0)\ntheGCPcount = theGCPcount + 1\n\n\n\nGCP = theVtab.FindField(\"GCP\")\nUsePnt = theVtab.FindField(\"Use_Point\")\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"To_y\")\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend
\ntheDisplay = theView.GetDisplay\nthePoint = Nil\n\ntheVtab.SetEditable(TRUE)\n\nif (TheView = ToRoamV)\n  then\n    MsgBox.Error(\"You Cannot Select GCP's on the TO *** ROAM View\",\"ERROR\")\n    exit\nend\n\nRstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n\ntoolDiag = av.FindDialog(\"RasterWarp.ToolBar\")\nrdoAuto = toolDiag.FindByName(\"rdoAuto\")\n\nif(rdoAuto.IsSelected) then\n  thePoint = theDisplay.ReturnUserPoint\n\n  if (theView = ToV) then\n    if (ToSnaptheme <> nil) then\n       ToSnapTheme.SetInteractiveSnapToleranc
e(ToCircle)\n       ToSnapTheme.UserSnapPoint (ToSnapType, thePoint)\n    end\n  elseif (theView = FromV) then\n     if (FromSnapTheme <> nil) then\n        FromSnapTheme.SetInteractiveSnapTolerance (FromCircle)\n        FromSnapTheme.UserSnapPoint (FromSnapType, thePoint)\n     end\n  end\n  x = thePoint.GetX\n  y = thePoint.GetY\nelse\n' now get user point manually\n  manualDiag = av.FindDialog(\"RasterWarp.ManualEntry\")\n  txtX = manualDiag.FindByName(\"txtX\")\n  txtY = manualDiag.FindByName(\"txtY\")\n  txtX.Empty\n  txtY.E
mpty\n  if(theView = ToV) then\n    txtX.SetLabel(\"TO X\")\n    txtY.SetLabel(\"TO Y\")\n  else\n    txtX.SetLabel(\"FROM X\")\n    txtY.SetLabel(\"FROM Y\")\n  end\n  AVUpperLeft = av.ReturnOrigin    \n  AVCenter = avUpperLeft + (av.ReturnExtent / (2@2))    \n  halfDialogWidthHeight = manualDiag.ReturnExtent.ReturnSize / (2@2)    \n  MovePoint = AVCenter - halfDialogWidthHeight    \n  manualDiag.MoveTo(MovePoint.GetX, MovePoint.GetY)\n  manualDiag.Open\n  x = txtX.GetText.asNumber\n  y = txtY.GetText.asNumber\n  thePoint = Point
.Make(x,y)\nend\n\n\nToFlag = false\n\nthePalette = av.GetSymbolWin.GetPalette\nmlst = thePalette.GetList(#PALETTE_LIST_MARKER)\ntheGraphicSymboltoUse = mlst.Get(40)\ntheGraphicSymbol = BasicMarker.Make\ntheGraphicSymbol.Copy(theGraphicSymbolToUse)\ntheGraphicSymbol.SetColor(Color.GetRed)\ntheGraphicSymbol.SetSize(10)\n\nif (firstRec = false) then\n  theGraphicList = theView.GetGraphics\n  thedrawpoint = Point.Make(x,y)\n  theGraphicpoint = GraphicShape.Make(thedrawpoint) \n   \n  theGraphicpoint.SetSymbol(theGraphicSymbol)\n 
 theLinkNum = GraphicText.Make(\"  \"+(theGCPcount-1).asstring,thedrawpoint)\n  theLinkNum.GetSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetName((theGCPcount-1).asString)\n  theGraphicList.Add(theGroup)\n  theGraphicList.Invalidate\n  av.ProcessAllInvals\nelse\n  theGraphicList = theView.GetGraphics\n  thedrawpoint = Point.Make(x,y)\n  theGraphicpoint = GraphicShape.Make(thedrawpoint)  \n  \n  theGraphicpoint.SetSymbol(theGraphicSymbol)\n  \n  t
heLinkNum = GraphicText.Make(\"  \"+(theGCPcount).asstring,thedrawpoint)\n  theLinkNum.GetSymbol.SetSize(12)\n  theGroup = GraphicGroup.Make\n  theGroup.Add(theGraphicpoint)\n  theGroup.Add(theLinkNum)\n  theGroup.SetName((theGCPcount).asString)\n  theGraphicList.Add(theGroup)\n  theGraphicList.Invalidate\n  av.ProcessAllInvals\n  \n  if (theView = ToV) then\n    theGraphicListtoR = ToRoamV.GetGraphics\n    thedrawpointtoR = Point.Make(x,y)\n    theGraphicpointtoR = GraphicShape.Make(thedrawpointtoR)\n    \n    theGraphicpo
inttoR.SetSymbol(theGraphicSymbol)\n    \n    theLinkNumtoR = GraphicText.Make(\"  \"+(theGCPcount).asstring,thedrawpointtoR)\n    theLinkNumtoR.GetSymbol.SetSize(12)\n    theGrouptoR = GraphicGroup.Make\n    theGrouptoR.Add(theGraphicpointtoR)\n    theGrouptoR.Add(theLinkNumtoR)\n    theGrouptoR.SetName((theGCPcount).asString)\n    theGraphicListtoR.Add(theGrouptoR)\n    theGraphicListtoR.Invalidate\n    av.ProcessAllInvals\n    ToFlag = true\n  end\n  \nend\n\nanAnswer = MsgBox.MiniYesNo(\"Do you want to keep the point you 
just entered ??\",true)\n\nif ( anAnswer = true) \n  then\n    if (firstRec = true) \n      then\n        rec = theVtab.AddRecord\n        theVtab.SetValue(UsePnt,rec,\"ON\")\n        theVtab.SetValue(GCP,rec,theGCPcount)\n        RstWrpExt.GetPreferences.Set(\"HighBall\",{rec})\n    end  \n    if ((theView = ToV) and (CurrentView = ToV)) \n      then\n        theVtab.SetValue(outfx,rec,x)\n        theVtab.SetValue(outfy,rec,y)\n        FromV.GetWin.Activate\n        RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{FALSE})   'firstR
ec = false\n        CurrentView = FromV\n        RstWrpExt.GetPreferences.Set(\"BatterUp\",{CurrentView})\n        RstWrpExt.GetPreferences.Set(\"LastPoint\",{thePoint,rec})\n    \n      elseif ((theView = ToV) and (CurrentView = FromV)) then\n        MsgBox.Info(\"You must select a control point on the FROM View!\",\"Attention!!\")\n        FromV.GetWin.Activate\n        theGraphicList.RemoveGraphic(theGroup)\n        theGCPcount = theGCPcount-1\n        RstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n    \n      elseif
 ((theView = FromV) and (CurrentView = FromV)) then\n        rec = RstWrpExt.GetPreferences.Get(\"HighBall\").Get(0)\n        theVtab.SetValue(infx,rec,x)\n        theVtab.SetValue(infy,rec,y) \n        ToV.GetWin.Activate \n        RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})  'firstrec = true\n        CurrentView = ToV\n        RstWrpExt.GetPreferences.Set(\"BatterUp\",{CurrentView})\n        theGCPcount = theGCPcount - 1\n        RstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n  \n      elseif ((theView = F
romV) and (CurrentView = ToV)) then\n        MsgBox.Info(\"You must select a control point on the TO View\",\"Attention!!\")  \n        ToV.GetWin.Activate\n        rec = RstWrpExt.GetPreferences.Get(\"HighBall\").Get(0)\n        RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})\n        theGraphicList.RemoveGraphic(theGroup)\n        if (ToFlag = true)\n        then\n          theGraphicListtoR.RemoveGraphic(theGrouptoR)\n        end\n        theVtab.RemoveRecord(rec)\n        theGCPcount = theGCPcount-1\n        RstWrpExt
.GetPreferences.Set(\"Pointy\",{theGCPcount})\n    end  \n\n  else\n    if (ToFlag = true)\n      then\n        theGraphicListtoR.RemoveGraphic(theGrouptoR)\n    end\n    theGraphicList.RemoveGraphic(theGroup)\n    theGCPcount = theGCPcount-1\n    RstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\nend\n\nTheVtab.SetEditable(FALSE)"
)

(Script.402
	Name:	"RasterWarp.Report"
	SourceCode:	"totX = Self.Get(0)\ntotY = Self.Get(1)\nchiX = Self.Get(2)\nchiY = Self.Get(3)\ntotX.SetFormat(\"d.ddddddd\")\ntotY.SetFormat(\"d.ddddddd\")\nchiX.SetFormat(\"d.ddddddd\")\nchiY.SetFormat(\"d.ddddddd\")\n\nShpWrpExt = Extension.Find(\"ImageWarp\")\ntheVtab = ShpWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nUsePnt = theVtab.FindField(\"Use_Point\")\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"To_y\")\nGCP = theVtab.FindField(\"GCP\")\nXerr = 
theVtab.FindField(\"X_Error\")\nYerr = theVtab.FindField(\"Y_Error\")\n\nOutFN = av.GetProject.MakeFileName(\"Report\",\"rpt\")\nOutFN = FileDialog.Put(OutFN,\"*.rpt\",\"Output Report File\")\nOutFN.SetExtension(\"rpt\")\n\nWF = LineFile.Make(OutFN,#FILE_PERM_WRITE)\nif (WF = nil)\n  then\n    MsgBox.Error(\"Cannot create the file \" + OutFN.GetFullName,\"ERROR CREATING FILE\")\n    Return false\nend\n\nWF.WriteElt(\"GCP ID  Input X            Input Y            Output X           Output Y           X error            Y error\")\nWF.WriteElt
(\"_______________________________________________________________________________________________________________________________\")\n\ncount = 0\n\nfor each recd in  theVtab\n  if ( theVtab.ReturnValue(UsePnt,recd).UCase = \"ON\") \n    then\n      \n      inXtmp  =  theVtab.ReturnValue( outfx,recd)\n      outXtmp =  theVtab.ReturnValue( infx,recd)\n      inYtmp  =  theVtab.ReturnValue( outfy,recd)\n      outYtmp =  theVtab.ReturnValue( infy,recd)\n      aGCP = theVtab.ReturnValue(GCP,recd)\n      errorX = theVtab.ReturnV
alue(Xerr,recd)\n      errorY = theVtab.ReturnValue(Yerr,recd)\n      aGCP.SetFormat(\"dddd\")\n      OutXtmp.SetFormat(\"dddddddddddd.ddd\")\n      OutYtmp.SetFormat(\"dddddddddddd.ddd\")\n      inXtmp.SetFormat(\"dddddddddddd.ddd\")\n      inYtmp.SetFormat(\"dddddddddddd.ddd\")\n      errorX.SetFormat(\"dddddddddddd.ddd\")\n      errorY.SetFormat(\"dddddddddddd.ddd\")\n      count = count + 1\n     WF.WriteElt(aGCP.asString+\"     \"+OutXtmp.asString+\"   \"+OutYtmp.asstring+\"   \"+inXtmp.asstring+\"   \"+inYtmp.asstring+\"   \"+errorX.a
sstring+\"   \"+errorY.asstring)\n  end\nend\n\n\nWF.WriteElt(\"______________________________________________________________________________________________________________________________\")\n\nWF.WriteElt(\"Total X RMS Error = \" + totX.AsString+ \" in Output Map Units.\")\nWF.WriteElt(\"Total Y RMS Error = \" + totY.AsString+ \" in Output Map Units.\")\nWF.WriteElt(\"ChiSquare X Error = \" + chiX.AsString)\nWF.WriteElt(\"ChiSquare Y Error = \" + chiY.AsString)\nWF.Close\nReturn True\n"
)

(Script.403
	Name:	"RasterWarp.ResizeWins"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:12:12 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\n\nTheWindows = RstWrpExt.GetPreferences.Get(\"ThreeStooges\")\n\nToRoam = TheWindows.Get(0).Get(0)\nTo = TheWindows.G
et(1).Get(0)\nFrom = TheWindows.Get(2).Get(0)\n\nfor each aView in TheWindows\n  aView.Get(1).SetTocWidth(0)\nend\n\nScreenSize = System.ReturnScreenSizePixels\n\nif (ScreenSize.GetY = 768)\n  then\n    Scale = 0.8541666666667\n  elseif (ScreenSize.GetY = 600)\n    then\n      Scale = 0.816666666667\n  elseif (ScreenSize.GetY = 480)\n    then\n      Scale = 0.7708333333\n  else\n    Scale = 0.8541666666667\nend\n\nToRoam.Open\nTo.Open\nFrom.Open\n\nToRoam.MoveTo(ScreenSize.GetX/3,0)\nToRoam.Resize(ScreenSize.GetX*2/3,(ScreenSize.GetY
*Scale).Truncate)\n\nTo.MoveTo(0,((ScreenSize.GetY*Scale)/2).Truncate)\nTo.Resize(ScreenSize.GetX/3,((ScreenSize.GetY*Scale)/2).Truncate)\n\nFrom.MoveTo(0,0)\nFrom.Resize(ScreenSize.GetX/3,((ScreenSize.GetY*Scale)/2).Truncate)\n\n\n\n\nRstWrpExt.GetPreferences.Set(\"Vista\",{TRUE})\n\nReturn TRUE"
)

(Script.404
	Name:	"RasterWarp.SelectableThemesUpdate"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\nfor each t in theView.GetActiveThemes\n  if (t.CanSelect) then\n    SELF.SetEnabled(TRUE)\n    return nil\n  end\nend\nSELF.SetEnabled(FALSE)\n"
)

(Script.405
	Name:	"RasterWarp.SelectApply"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 18:19:01 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheTheme = theView.GetEditableTheme\nif (theTheme = nil) then\n  theView.Select\n
else\n  theTheme.GetFTab.BeginTransaction\n  theTheme.Select\n  theTheme.GetFTab.EndTransaction\nend\nav.GetProject.SetModified(true)"
)

(Script.406
	Name:	"RasterWarp.SelectClick"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 18:16:10 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheView.SetSelectMode(#GRAPHICS_SELECT_NORMAL)"
)

(Script.407
	Name:	"RasterWarp.SelectDBF"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Mon Mar 08 00:23:53 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = Self.GetDialog\n\nif(theDiag.FindByName(\"rdoNew\").IsSelected) then\n  working = FileName.GetCWD\n  tmpFN = working.MakeTmp(\"GCP\",\"dbf\")\n  theFile = FileDialog.Put(tmpFN,\"
*.dbf\",\"Choose a new GCP Table name.\")\n  if(theFile = nil) then\n    return nil\n  else\n    theDiag.FindByName(\"txtDBFName\").SetText(theFile.asString)\n    theDiag.FindByName(\"btnOK\").SetEnabled(TRUE)\n  end\nelse\n  theFile = FileDialog.Show(\"*.dbf\",\"*.dbf\",\"Choose the GCP Table to use.\")\n  if(theFile = nil) then\n    return nil\n  else\n    theDiag.FindByName(\"txtDBFName\").SetText(theFile.asString)\n    theDiag.FindByName(\"btnOK\").SetEnabled(TRUE)\n  end\nend\n"
)

(Script.408
	Name:	"RasterWarp.SelectPoint"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\nr = theView.ReturnUserRect\ntheThemes = theView.GetActiveThemes\nif (r.IsNull) then \n  p = theView.GetDisplay.ReturnUserPoint\n  if (System.IsShiftKeyDown) then\n    op = #VTAB_SELTYPE_XOR\n  else\n    op = #VTAB_SELTYPE_NEW\n  end\n  for each t in theThemes\n    if (t.CanSelect) then\n      t.SelectByPoint(p, op)\n    end\n  end\nelse\n  if (System.IsShiftKeyDown) then\n    op = #VTAB_SELTYPE_OR\n  else\n    op = #VTAB_SELTYPE_NEW\n  end\n  for each t in
 theThemes\n    if (t.CanSelect) then\n      t.SelectByRect(r, op)\n    end\n  end\nend\nav.GetProject.SetModified(true)"
)

(Script.409
	Name:	"RasterWarp.SessionBeginbtnOK"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Sun Mar 07 23:49:44 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = self.GetDialog\n\ntheDiag.SetModalResult(1)\ntheDiag.Close\n"
)

(Script.410
	Name:	"RasterWarp.SetProjection"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:12:22 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\nToRoamV = Self.Get(0)\nToV = Self.Get(1)\n\n\nUnitsPickLst = {\"Unknown\",\"Inches\",\"Feet\",\"Yards\",\"Miles\",\"Millimeters\",\"Centimeters\",\"Meters\",\"Kilometers\",\n
                \"Nautical miles\",\"Decimal degrees\"}\n            \nUnitsLst = {#UNITS_LINEAR_UNKNOWN, #UNITS_LINEAR_INCHES, #UNITS_LINEAR_FEET, #UNITS_LINEAR_YARDS, #UNITS_LINEAR_MILES,\n            #UNITS_LINEAR_MILLIMETERS, #UNITS_LINEAR_CENTIMETERS, #UNITS_LINEAR_METERS, #UNITS_LINEAR_KILOMETERS,\n            #UNITS_LINEAR_NAUTICALMILES, #UNITS_LINEAR_DEGREES}\n\n\n\n\n\nthePrj = ProjectionDialog.Show(ToV,#UNITS_LINEAR_UNKNOWN)\nif (thePrj = nil)\n  then \n    Return nil\nend\n\nToV.SetProjection(thePrj)\nToRoamV.SetProj
ection(thePrj)\n\n\nReturn TRUE"
)

(Script.411
	Name:	"RasterWarp.ShowSnapDiag"
	SourceCode:	"av.FindDialog(\"RasterWarp.SnapDiag\").Open"
)

(Script.412
	Name:	"RasterWarp.ShutDown"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:12:32 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\n\nav.FindDialog(\"RasterWarp.ToolBar\").Close\nav.FindDialog(\"RasterWarp.SnapDiag\").Close\n\nvGUI = av.FindGUI(\"View\")\ntheDocs = av.GetProject.GetD
ocsWithGroupGUI (vGUI)\nif(theDocs.IsEmpty.Not) then\n  for each d in theDocs\n    if((d.GetName = \"TO\") or (d.GetName = \"FROM\") or (d.GetName = \"TO *** ROAM\")) then\n      av.GetProject.RemoveDoc(d)\n    end\n  end\nend\n\n\ntGUI = av.FindGUI(\"Table\")\ntheDocs = av.GetProject.GetDocsWithGroupGUI(tGUI)\nif(theDocs.IsEmpty.Not) then\n  theTable = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1)\n  for each d in theDocs\n    if(d.GetName = theTable.GetName) then\n        av.GetProject.RemoveDoc(d)\n    end\n  end\nend\n\nRstWrpEx
t.GetPreferences.Remove(\"ThreeStooges\")\nRstWrpExt.GetPreferences.Remove(\"WhosOnFirst\")\nRstWrpExt.GetPreferences.Remove(\"MesaVerde\")\nRstWrpExt.GetPreferences.Remove(\"BatterUp\")\n\nRstWrpExt.GetPreferences.Remove(\"MainMan\")\nRstWrpExt.GetPreferences.Remove(\"Pointy\")\nRstWrpExt.GetPreferences.Remove(\"LawOrder\")\nRstWrpExt.GetPreferences.Remove(\"Coeff\")\nRstWrpExt.GetPreferences.Remove(\"HighBall\")\nRstWrpExt.GetPreferences.Remove(\"Together\")\nRstWrpExt.GetPreferences.Remove(\"LastPoint\")\nRstWrpExt.GetPreferences.Remove(
\"SnapFrom\")\nRstWrpExt.GetPreferences.Remove(\"SnapTo\")\nRstWrpExt.GetPreferences.Remove(\"CanDo\")\n\n'av.GetProject.Close\n'av.ClearGlobals\n'System.RefreshWindows\nav.PurgeObjects\nav.ProcessAllInvals\n'theProject = Project.Make\n'theProject.GetWin.Open\n'theProject.SetModified(FALSE)\n'av.Run(\"Codepage.Install\",nil)\n"
)

(Script.413
	Name:	"RasterWarp.StartUp"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:13:08 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\ntheDiag = av.FindDialog(\"RasterWarp.SessionBegin\")\ntheDiag.Close\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\n\nRstWrpExt.GetPreferences.Add(\"ThreeStooges\",{})\nRstWrpExt.GetPreferences.Add
(\"WhosOnFirst\",{})\nRstWrpExt.GetPreferences.Add(\"MesaVerde\",{})\nRstWrpExt.GetPreferences.Add(\"BatterUp\",{})\nRstWrpExt.GetPreferences.Add(\"MainMan\",{})\nRstWrpExt.GetPreferences.Add(\"Pointy\",{})\nRstWrpExt.GetPreferences.Add(\"LawOrder\",{})\nRstWrpExt.GetPreferences.Add(\"Coeff\",{})\nRstWrpExt.GetPreferences.Add(\"HighBall\",{})\nRstWrpExt.GetPreferences.Add(\"Together\",{})\nRstWrpExt.GetPreferences.Add(\"LastPoint\",{})\nRstWrpExt.GetPreferences.Add(\"SnapFrom\",{})\nRstWrpExt.GetPreferences.Add(\"SnapTo\",{})\nRstWrpExt.GetPr
eferences.Add(\"CanDo\",{})\nRstWrpExt.GetPreferences.Set(\"SnapFrom\",{#POINT_SNAP_NONE,0,nil})\nRstWrpExt.GetPreferences.Set(\"SnapTo\",{#POINT_SNAP_NONE,0,nil})\nRstWrpExt.GetPreferences.Set(\"CanDo\",{FALSE})\n\nToRoamView = View.Make\nToRoamView.SetName(\"TO *** ROAM\")\nToRoamWin = ToRoamView.GetWin\n\nToV = View.Make\nToV.SetName(\"TO\")\nToWin = ToV.GetWin\n\nFromV = View.Make\nFromV.SetName(\"FROM\")\nFromWin = FromV.GetWin\n\nRstWrpExt.GetPreferences.Set(\"Together\",{{ToRoamView,ToV}})\n\n\n'### does the user want to set a projecti
on ###\nProjGot = nil\nWhile (ProjGot = nil)\n  Answer = MsgBox.YesNo(\"Do you want to set the Projection for the TO View?\",\"Set Projection\",TRUE)\n    if (Answer = TRUE)\n      then\n        result = av.Run(\"RasterWarp.SetProjection\",{ToRoamView,ToV})\n        if (result = nil)\n          then\n            result2 = MsgBox.YesNo(\"Are you sure you do not want to set a projection for the TO View\",\"SetProjection\",TRUE)\n            if (result2 = true)\n              then\n                ProjGot = \"OK\"\n            end\n   
       else\n             ProjGot = \"OK\"\n        end\n      else\n        ProjGot = \"OK\"\n    end\nend\n\n\nCurrentView = ToV\nRstWrpExt.GetPreferences.Set(\"BatterUp\",{CurrentView})\n\ntheGCPcount = 0\nRstWrpExt.GetPreferences.Set(\"Pointy\",{theGCPcount})\n\n\n\nFromText = theDiag.FindByName(\"txtFrom\").GetText\nToText = theDiag.FindByName(\"txtTo\").GetText\n\nsrcImage = SrcName.Make(FromText)\nFromV.AddTheme(Theme.Make(srcImage))\n\ntokenList = ToText.AsTokens(\" \")\n\nif(tokenList.Count > 1) then\n  srcTheme = SrcName.Make(theDiag.Fi
ndByName(\"txtTo\").GetText)\n  ToV.AddTheme(Theme.Make(srcTheme))\nelse\n  FNToken = tokenList.Get(0).asFileName\n  if(FNToken.GetExtension = \"\") then 'must be a grid\n    srcTheme = Grid.MakeSrcname(FNToken.asString)\n    theGrid = Grid.Make(srcTheme)\n    theGTheme = GTheme.Make(theGrid)\n    ToV.AddTheme(theGTheme)\n  else\n    srcTheme = SrcName.Make(theDiag.FindByName(\"txtTo\").GetText)\n    ToV.AddTheme(Theme.Make(srcTheme))\n  end\nend\n\n\nfor each t in ToV.GetThemes\n    t.SetVisible(TRUE)\n    t.SetActive(TRUE)\nend\nf
or each t in FromV.GetThemes\n    t.SetVisible(TRUE)\n    t.SetActive(TRUE)\nend\nToV.CopyThemes\nToRoamView.Paste\nfor each t in ToRoamView.GetThemes\n    t.SetVisible(TRUE)\n    t.SetActive(TRUE)\nend\n\n\n\ntmpList = {}\ntmpList2 = {}\n\ntmpList.Add(ToRoamWin)\ntmpList.Add(ToRoamView)\ntmpList2.Add(tmpList)\ntmpList = {}\ntmpList.Add(ToWin)\ntmpList.Add(ToV)\ntmpList2.Add(tmpList)\ntmpList = {}\ntmpList.Add(FromWin)\ntmpList.Add(FromV)\ntmpList2.Add(tmpList)\nRstWrpExt.GetPreferences.Set(\"ThreeStooges\",tmpList2)\n\ndiagLoadTable = a
v.FindDialog(\"RasterWarp.NewTableDiag\")\ndiagLoadTable.FindByName(\"btnLoadTable\").SetEnabled(FALSE)\ndiagLoadTable.FindByName(\"btnOK\").SetEnabled(FALSE)\ndiagLoadTable.FindByName(\"txtDBFName\").Empty\nAVUpperLeft = av.ReturnOrigin    \nAVCenter = avUpperLeft + (av.ReturnExtent / (2@2))    \nhalfDialogWidthHeight = diagLoadTable.ReturnExtent.ReturnSize / (2@2)    \nMovePoint = AVCenter - halfDialogWidthHeight    \ndiagLoadTable.MoveTo(MovePoint.GetX, MovePoint.GetY)\ndiagLoadTable.Open\ntheResult = diagLoadTable.GetMod
alResult\n\nif(theResult = 0) then\n  av.Run(\"RasterWarp.ShutDown\",\"\")\n  return nil\nend\nfnDBF = diagLoadTable.FindByName(\"txtDBFName\").GetText.asFileName\nif(theResult = 2) then\n  Dummy = av.Run(\"RasterWarp.LoadTable\",{fnDBF})\n  RstWrpExt.GetPreferences.Set(\"MesaVerde\",Dummy)\n  RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})          \n  av.Run(\"RasterWarp.DispGraphics\",{})\nelse \n  theTable = av.Run(\"RasterWarp.MakeGCPTable\",{fnDBF})\n  TableWin = theTable.GetWin\n  tmpList = {TableWin,theTable}\n  RstWrpExt.Get
Preferences.Set(\"MesaVerde\",tmpList)\n  RstWrpExt.GetPreferences.Set(\"WhosOnFirst\",{TRUE})\nend \n\n\nav.Run(\"RasterWarp.ResizeWins\",\"\")\nav.Run(\"RasterWarp.LoadToolBar\",\"\")\n\nav.GetProject.SetModified(true)"
)

(Script.414
	Name:	"RasterWarp.TablerdoButton"
	SourceCode:	"' Name: Script3\n'\n' Author: Kenneth R. McVay\n' Date: Mon Mar 08 00:29:03 1999\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\n\ntheDiag = Self.GetDialog\n\ntheDiag.FindByName(\"btnLoadTable\").SetEnabled(TRUE)\n"
)

(Script.415
	Name:	"RasterWarp.ToggleTOC"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:13:26 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\n\ntheWindow = RstWrpExt.GetPreferences.Get(\"ThreeStooges\")\n\nfor each aView in theWindow\n  if ( aView.Get(1).Get
TocWidth > 0)\n    then\n      aView.Get(1).SetTocWidth(0)\n    else\n      aView.Get(1).SetTocWidth(120)\n  end\nend\n\n\n\n\n"
)

(Script.416
	Name:	"RasterWarp.ToPickThemeSnap"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\n\ntheThemes = ToV.GetThemes\nUseThemes = List.Make\n\nfor each t in theThemes\n  if ( t.Is(Ftheme))\n    then\n      UseThemes.Add(t)\n  end\nend\n\nif (UseThemes.Count = 0)\n  then\n    MsgBox.Info(\"There are no Feature Themes in the TO View that can be used for snapping.\",\"INFO\")\n    exit\nend\n\nSnapTheme = MsgBox.ListAsString(UseThemes,\"Pick the snap theme for the TO View\",\"TO SNAP THEME\")\nif (SnapTheme = nil)\n  the
n\n    exit\nend\nParms = RstWrpExt.GetPreferences.Get(\"SnapTo\")\nParms.Set(2,SnapTheme)\nRstWrpExt.GetPreferences.Set(\"SnapTo\",Parms)"
)

(Script.417
	Name:	"RasterWarp.ToSnapRadius"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\n\nToV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(1).Get(1)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\nif (theView <> ToV)\n  then\n    MsgBox.Info(\"You can only use the FROM SnapDistance Tool on the FROM VIEW\",\"INFO\")\n    exit\nend\n\ntheDisp = theView.GetDisplay\n\ntheCircle = theDisp.ReturnUserCircle.GetRadius\n\nParms= RstWrpExt.GetPreferences.Get(\"SnapTo\")\nParms.Set(1,theCircle)\n\nRstWrpExt.GetPreferences.Set(\"SnapTo\",Parms)"
)

(Script.418
	Name:	"RasterWarp.ToSnapType"
	SourceCode:	"RstWrpExt = Extension.Find(\"ImageWarp\")\n\nSnapList = {\"None\",\"To Closest Vertex\",\"To Closest Boundary\", \"To Closest EndPoint\", \"To Nearest Intersection\"}\n\ntheType = MsgBox.ListAsString(SnapList,\"Pick the type of snapping you prefer.\",\"SNAP TYPE\")\nif (theType = nil)\n  then\n    exit\nend\n\nif (theType = \"None\")\n  then\n    SnapType = #POINT_SNAP_NONE \n  elseif (theType = \"To Closest Vertex\")\n    then\n      SnapType = #POINT_SNAP_VERTEX \n  elseif (theType = \"To Closest Boundary\")\n    then\n      SnapType = #POINT_S
NAP_BOUNDARY \n  elseif (theType = \"To Closest EndPoint\")\n    then\n      SnapType = #POINT_SNAP_ENDPOINT \n  else\n    SnapType = #POINT_SNAP_INTERSECTION \nend\n\nParms = RstWrpExt.GetPreferences.Get(\"SnapTo\")\nParms.Set(0,SnapType)\nRstWrpExt.GetPreferences.Set(\"SnapTo\",Parms)\n"
)

(Script.419
	Name:	"RasterWarp.UndoZoom"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\ntheView.GetDisplay.UndoZoom\n"
)

(Script.420
	Name:	"RasterWarp.UndoZoomUpdate"
	SourceCode:	"theView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\nSELF.SetEnabled(theView.GetDisplay.CanUndoZoom)"
)

(Script.421
	Name:	"RasterWarp.UninstallScript"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:14:27 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nif (av.GetProject = nil )\n  then\n    return nil\nend\n\nif (av.GetProject.IsClosing)\n  then\n    return nil\nend\n\n\namenubar = av.getproject.FindGUI(\"Projec
t\").GetMenuBar\namenubar.Remove(Self.Get(0))\n"
)

(Script.422
	Name:	"RasterWarp.Unload"
	SourceCode:	"Dialog.DetachFromExtension(self)"
)

(Script.423
	Name:	"RasterWarp.ViewSwitch"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:13:35 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\n\ntheWindows = RstWrpExt.GetPreferences.Get(\"ThreeStooges\")\nViewsOpen = RstWrpExt.GetPreferences.Get(\"Vista\").G
et(0)\nTableWin = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(0)\n\nToRoam = TheWindows.Get(0).Get(0)\nTo = TheWindows.Get(1).Get(0)\nFrom = TheWindows.Get(2).Get(0)\n\nif (ViewsOpen = FALSE)\n  then\n    'TableWin.Close\n    TableWin.Minimize\n    'av.Run(\"RasterWarp.ResizeWins\",\"\")\n    ToRoam.Activate\n    To.Activate\n    From.Activate\n    RstWrpExt.GetPreferences.Set(\"Vista\",{TRUE})\n  else\n    'for each aWin in theWindows\n    '  aWin.Get(0).Close\n    'end\n    To.Minimize\n    ToRoam.Minimize\n    From.Minimize\n    R
stWrpExt.GetPreferences.Set(\"Vista\",{FALSE})\n    TableWin.Activate\n    TableWin.Maximize\nend"
)

(Script.424
	Name:	"RasterWarp.WarpRaster"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:13:44 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\ndiagMsg = av.FindDialog(\"RasterWarp.MessageStatus\")\ndiagMsg.SetTitle(\"Status\")\ntheMessage = diagMsg.FindByName(\"theMessage\")\ncloseBtn = diagMsg.FindByNa
me(\"Close\")\ncloseBtn.SetEnabled(False)\ntheMessage.SetText(\"Image Warp\" + NL)\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nCanDo = RstWrpExt.GetPreferences.Get(\"CanDo\").Get(0)\nif (Cando = False)\n  then\n    MsgBox.Info(\"You cannot create the new Image until you Calculate the RMS\",\"INFO\")\n    return nil\nend\n\ntheVtab = RstWrpExt.GetPreferences.Get(\"MesaVerde\").Get(1).GetVtab\nOrder = RstWrpExt.GetPreferences.Get(\"LawOrder\").Get(0)\nFromV = RstWrpExt.GetPreferences.Get(\"ThreeStooges\").Get(2).Get(1)\nUsePnt = theVtab.Fi
ndField(\"Use_Point\")\n\ninfx = theVtab.FindField(\"From_x\")\ninfy = theVtab.FindField(\"From_y\")\noutfx = theVtab.FindField(\"To_x\")\noutfy = theVtab.FindField(\"To_y\")\n\n\n\n'### make sure there are enough points for the order ###\ntmpCnt = 0\nfor each recd in  theVtab\n  if ( theVtab.ReturnValue( UsePnt,recd).UCase = \"ON\") \n    then\n     tmpCnt =tmpCnt + 1\n  end\nend\n\nneeded = ((Order + 1)*(Order + 2))/2\n\nif (tmpCnt < needed) then\n  msgBox.Error(\"There are not enough GCP's ON for a \" + Order.AsString +\" order warp.\",\"Not
 enough GCP's\")\n  return nil\nend\n\ntheLinkList = List.Make\nfor each recd in theVtab\n  if (theVtab.ReturnValue(UsePnt,recd).UCase = \"ON\") then\n    x1 = theVtab.ReturnValue(infx,recd)\n    y1 = theVtab.ReturnValue(infy,recd)\n    x2 = theVtab.ReturnValue(outfx,recd)\n    y2 = theVtab.ReturnValue(outfy,recd)\n    p1 = Point.Make(x1,y1)\n    p2 = Point.Make(x2,y2)\n    l1 = Line.Make(p1,p2)\n    theLinkList.Add(l1)\n  end\nend\n\ntheThemes = FromV.GetThemes\nImgThemes = List.Make\nfor each t in theThemes\n  if (t.Is(Itheme)) 
then\n    ImgThemes.Add(t)\n  end\nend\n\nuseTheme = msgBox.ListAsString(ImgThemes,\"Pick the Image theme to Warp\",\"Pick Image Theme\")\nif (useTheme = nil) then\n  return nil\nend\n\nresample = msgBox.ListAsString({\"Nearest neighbor\",\"Bilinear interpolation\",\"Cubic convolution\"},\n  \"Pick the Resampling Method\",\"Pick Method\")\nif (resample = nil) then\n  return nil\nelseif (resample = \"Nearest neighbor\") then\n  resEnum = #GRID_RESTYPE_NEAREST\nelseif (resample = \"Bilinear interpolation\") then\n  resEnum = #GRID_RESTYPE_BILI
NEAR \nelse\n  resEnum = #GRID_RESTYPE_CUBIC\nend\n\n\ntypeImage = msgBox.ListAsString({\"BSQ\",\"BIL\",\"BIP\",\"JPG\",\"TIF\"},\"Pick the output image type.\",\"Choose type\")\nif (typeImage = nil) then\n  return nil\nelseif (typeImage = \"BSQ\") then\n  imgTypeID = 1\nelseif (typeImage = \"BIL\") then\n  imgTypeID = 2\nelseif (typeImage = \"BIP\") then\n  imgTypeID = 3\nelseif (typeImage = \"JPG\") then\n  imgTypeID = 4\nelseif (typeImage = \"TIF\") then\n  imgTypeID = 5\nend\n\nmsgBox.Report(\"The next dialog you see will ask you to enter the cell 
size for the output image.\"+NL+\n              \"The value you enter for cell size must be in output map units\" + NL +\n              \"and if you enter a value that is too small you will create an image that is\" + NL +\n              \"very large and you stand the chance of running out of drive space.\" + NL + NL +\n              \"In general you want to pick the cell size to be the same as that\" + NL +\n              \"of the original image in output map units. If you pick a smaller value, \" + NL +\n              \"yo
u will be wasting drive space with no gain in image resolution.\" + NL + NL +\n              \"If you are unsure what to enter, then leave it at the default of 0.\",\"Cell Size\")\n\nitsOK = false\nwhile (itsOK.Not)\n  useCS = msgBox.Input(\"Enter the desired output image cellsize.\" + NL + \n                       \"0 is default and will try to match the number of rows and columns\",\"Cell Size\",\"0\")\n  if(useCS = nil) then\n    return nil\n  end\n  if (useCS.IsNumber) then\n    itsOK = true\n    useCellSize = useCS.asNumber\n  
  if(useCellSize = 0) then\n      useCellSize = nil\n    end\n  else\n    msgBox.Error(\"You must enter a numeric value for cell size.\",\"\")\n  end\nend\n\nfnNewImage = av.GetProject.MakeFileName(\"NewImg\",typeImage)\nfnNewImage = fileDialog.Put(fnNewImage,\"*.\"+typeImage,\"Enter the new image filename.\")\nif (fnNewImage = nil) then\n  return nil\nend\n\n\nfnNewImage.SetExtension(typeImage)\nfnNewStr = fnNewImage.asString\n\n\n\nfnImg = useTheme.GetSrcName.GetFileName\n\ndiagMsg.Open\n\n\n\ntheMessage.SetText(theMessage.GetText + \"Conver
ting the image to GRIDS\" + NL)\nbandcount = useTheme.GetImgSrc.GetNumBands\n\nGRID.Reset\n\nif (bandcount = 1) then\n  grd1 = Grid.MakeFromImage(fnImg, 1)\nelse\n  grd1 = Grid.MakeFromImage(fnImg, 1)\n  grd2 = Grid.MakeFromImage(fnImg, 2)\n  grd3 = Grid.MakeFromImage(fnImg, 3)\nend\n\n\nif (bandcount = 1) then\n  theMessage.SetText(theMessage.GetText + \"Warping GRID 1 of 1\" + NL)\n  g1 = grd1.Warp(theLinkList, Order, resEnum, useCellSize)\n  g1str = g1.GetSrcName.GetDataSource\n  g2str = \" \"\n  g3str = \" \"\n  numGrids = 1\nelse
\n  theMessage.SetText(theMessage.GetText + \"Warping GRID 1 of 3\" + NL)\n  System.RefreshWindows\n  g1 = grd1.Warp(theLinkList, Order, resEnum, useCellSize)\n  g1str = g1.GetSrcName.GetDataSource\n  theMessage.SetText(theMessage.GetText + \"Warping GRID 2 of 3\" + NL)\n  System.RefreshWindows\n  g2 = grd2.Warp(theLinkList, Order, resEnum, useCellSize)\n  g2str = g2.GetSrcName.GetDataSource\n  theMessage.SetText(theMessage.GetText + \"Warping GRID 3 of 3\" + NL)\n  System.RefreshWindows\n  g3 = grd3.Warp(theLinkList, Order
, resEnum, useCellSize)\n  g3str = g3.GetSrcName.GetDataSource\n  numGrids = 3\nend\n\ntheMessage.SetText(theMessage.GetText + \"Warping GRIDS Completed\" + NL)\nSystem.RefreshWindows\n\n' get the program path\nhome = system.getenvvar(\"AVHOME\")\nhome = home + \"\\bin32\\g2i.dll\"\n\n' make the dll function call\naDLL = DLL.Make(home.asfilename)\nWriteImage = DLLProc.make(aDLL,\"WriteImg\",#DLLPROC_TYPE_INT32,{#DLLPROC_TYPE_STR,#DLLPROC_TYPE_STR,#DLLPROC_TYPE_STR,\n        #DLLPROC_TYPE_INT32,#DLLPROC_TYPE_STR,#DLLPROC_TYPE_INT32}
)\ntheMessage.SetText(theMessage.GetText + \"Conection to Grid2Img Open\"+NL)\ntheMessage.SetText(theMessage.GetText + \"Converting the GRIDs back into an Image Please Wait\" + NL)\nsystem.RefreshWindows\nx = WriteImage.call({g1str,g2str,g3str,numGrids,fnNewStr,imgTypeID})\n\n'say ok if the conversion was a success\nif ( x = 99)\n  then \n  if (imgTypeID < 4) then\n    msgbox.info(\"The Conversion was successful.\",\"RasterWarp::Grid2Img\")\n    theMessage.SetText(theMessage.GetText + \"Image Warp was successful\" + NL)\n    sys
tem.RefreshWindows\n    fnNewImage.SetExtension(\"hdr\")\n    fileWld = LineFile.Make(fnNewImage,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Get(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left = theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.dddddddddddddd\")\n    sizeCell.Setformat(\"d.dddddddddddddd\")\n    theMessage.SetText(theMessage.GetText + \"Writing the Header\" + NL)\n    system.RefreshW
indows\n    fileWld.WriteElt(\"byteorder M\")\n    fileWld.WriteElt(\"nbits 8\")\n    fileWld.WriteElt(\"xdim \"+sizeCell.asString)\n    fileWld.WriteElt(\"ydim \"+sizeCell.asString)\n    fileWld.WriteElt(\"ncols \"+ col.asString)\n    fileWld.WriteElt(\"nrows \"+row.asString)\n    fileWld.WriteElt(\"nbands \" + numGrids.asString)\n    fileWld.WriteElt(\"ulxmap \"+ (left+(0.5*sizeCell)).asString)\n    fileWld.WriteElt(\"ulymap \" + (top-(0.5*sizeCell)).asString)\n    fileWld.Close\n    theMessage.SetText(theMessage.GetText + \"Header co
mplete.\" + NL)\n    system.RefreshWindows\n  elseif (imgTypeID = 4) then\n    msgbox.info(\"The Conversion was successful.\",\"RasterWarp::Grid2Img\")\n    theMessage.SetText(theMessage.GetText + \"Image Warp was successful\" + NL)\n    system.RefreshWindows\n    fnNewImage.SetExtension(\"jpgw\")\n    fileWld = LineFile.Make(fnNewImage,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Get(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left 
= theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.dddddddddddddd\")\n    sizeCell.Setformat(\"d.dddddddddddddd\")\n    theMessage.SetText(theMessage.GetText + \"Writing the World File.\" + NL)\n    system.RefreshWindows\n    fileWld.WriteElt(sizeCell.asString)\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"-\" + sizeCell.asString)\n    fileWld.WriteElt((left+(0.5*sizeCell)).asString)\n    fileWld.WriteElt((top-(0.5*sizeCell)).asStrin
g)\n    fileWld.Close\n    theMessage.SetText(theMessage.GetText + \"World File complete.\" + NL)\n    system.RefreshWindows\n  elseif (imgTypeID = 5) then\n    msgbox.info(\"The Conversion was successful.\",\"RasterWarp::Grid2Img\")\n    theMessage.SetText(theMessage.GetText + \"Image Warp was successful\" + NL)\n    system.RefreshWindows\n    fnNewImage.SetExtension(\"tifw\")\n    fileWld = LineFile.Make(fnNewImage,#FILE_PERM_WRITE)\n    sizeCell = g1.GetCellSize\n    theExtent = g1.GetExtent\n    row = g1.GetNumRowsAndCols.Ge
t(0)\n    col = g1.GetNumRowsAndCols.Get(1)\n    top = theExtent.GetTop\n    left = theExtent.GetLeft\n    top.SetFormat(\"d.dddddddddddddd\")\n    left.SetFormat(\"d.dddddddddddddd\")\n    sizeCell.Setformat(\"d.dddddddddddddd\")\n    theMessage.SetText(theMessage.GetText + \"Writing the World File.\" + NL)\n    system.RefreshWindows\n    fileWld.WriteElt(sizeCell.asString)\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"0.00000000000000\")\n    fileWld.WriteElt(\"-\" + sizeCell.asString)\n    fileWld.WriteElt((l
eft+(0.5*sizeCell)).asString)\n    fileWld.WriteElt((top-(0.5*sizeCell)).asString)\n    fileWld.Close\n    theMessage.SetText(theMessage.GetText + \"World File complete.\" + NL)\n    system.RefreshWindows\n  end\n\n\n'something went wrong display the error message\nelseif (( x = 1) or (x = 2) or (x = 3))\n  then \n    msgbox.Error(\"There was an error opening a Grid.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"There was an error opening a Grid.\")\n\nelseif ( x = 4)\n  then \n    msgbox.Error(\"There was an
 error reading the bounding box of a Grid.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"There was an error reading the bounding box of a Grid.\")\n\nelseif ( x = 5)\n  then \n    msgbox.Error(\"There was an error setting the window of a Grid.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"There was an error setting the window of a Grid.\")\n\nelseif ( x = 6)\n  then \n    msgbox.Error(\"There was an error creating the output file.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.
GetText + \"There was an error creating the output file.\")\n\nelseif ( x = 7)\n  then \n    msgbox.Error(\"There was a buffer allocation problem GRID.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"There was a buffer allocation problem GRID.\")\n\nelseif ( x = 8)\n  then \n    msgbox.Error(\"There was a buffer allocation problem JPEG.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"There was a buffer allocation problem JPEG.\")\n\nelseif ( x = 15)\n  then \n    msgbox.Error(\"Could not load t
he libtiff.dll \",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"Could not load the libtiff.dll\")\n\nelseif ( x = 16)\n  then \n    msgbox.Error(\"Could not access a function in libtiff.dll.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"Could not access a function in libtiff.dll\")\n\nelseif ( x = 17)\n  then \n    msgbox.Error(\"Could not write scanline.\",\"Grid2Img ERROR\")\n    theMessage.SetText(theMessage.GetText + \"Could not write scanline.\")\nend\n\n\ncloseBtn.SetEnabled(True)\nRstWrpEx
t.GetPreferences.Set(\"CanDo\",{False})\n\n' set objects to nil and purge\naDLL = nil\nWriteImage = nil\nav.PurgeObjects\n\n\n"
)

(Script.425
	Name:	"RasterWarp.ZoomExtents"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:13:51 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheName = theView.GetName\n\nr = theView.ReturnExtent\n\nRstWrpExt = Extension.Fin
d(\"ImageWarp\")\nRoamList = RstWrpExt.GetPreferences.Get(\"Together\")\n\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\n\n\n\n\nif (ParentFound = true)\n  then\n    LaCasa = RoamList.Get(ParentPos)\n    for each Person in LaCasa\n      if (r.IsEmpty) then\n        return nil\n      elseif ( r.ReturnSize = (0@0) ) then\n        if (Person.GetName <> theName) then\n          Person
.GetDisplay.PanTo(r.ReturnOrigin)\n        end\n      else\n        if (Person.GetName <> theName) then\n          Person.GetDisplay.SetExtent(r.Scale(1.1))\n          av.GetProject.SetModified(true)\n        end\n      end  \n    end\nend\n\n\nif ((ParentFound = false))\n  then\n    if (r.IsEmpty) then\n        return nil\n      elseif ( r.ReturnSize = (0@0) ) then\n        theView.GetDisplay.PanTo(r.ReturnOrigin)\n      else\n        theView.GetDisplay.SetExtent(r.Scale(1.1))\n        av.GetProject.SetModified(true)\n    end\n
end"
)

(Script.426
	Name:	"RasterWarp.ZoomIn"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:14:01 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheName = theView.GetName\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nRoamList = 
RstWrpExt.GetPreferences.Get(\"Together\")\n\n\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\n\n\n\nif (ParentFound = true) then\n  ParentDisp = theView.GetDisplay\n  aRect = ParentDisp.ReturnUserRect\n  aPoint = ParentDisp.ReturnUserPoint\n  Parent = {}\n  Parent = RoamList.Get(ParentPos)\n  for each i in Parent\n    if (i.GetName <> theName) then\n      ChildDisp = i.GetDispl
ay\n      if (aRect.IsNull) then\n        ChildDisp.ZoomIn(125)\n        ChildDisp.PanTo(aPoint)\n      else\n        ChildDisp.ZoomToRect(aRect)\n      end\n    end\n  end\nend\n\n\n\nif ((ParentFound = false) )\n  then\n    theDisp = theView.GetDisplay\n    aRect = theDisp.ReturnUserRect\n    aPoint = theDisp.ReturnUserPoint\n    if (aRect.IsNull)\n      then\n        theDisp.ZoomIn(125)\n        theDisp.PanTo(aPoint)\n      else\n        theDisp.ZoomToRect(aRect)\n    end\nend"
)

(Script.427
	Name:	"RasterWarp.ZoomingIn"
	SourceCode:	"av.GetProject.SetModified(true)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nRoamList = RstWrpExt.GetPreferences.Get(\"Together\")\n\ntheName = theView.GetName\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\nif (ParentFound = false)\n  then\n    theView.GetDisplay.ZoomIn(125)\nend"
)

(Script.428
	Name:	"RasterWarp.ZoomingOut"
	SourceCode:	"av.GetProject.SetModified(true)\ntheView = av.GetActiveDoc\n\n\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nRoamList = RstWrpExt.GetPreferences.Get(\"Together\")\n\ntheName = theView.GetName\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\nif (ParentFound = false)\n  then\n    theView.GetDisplay.ZoomOut(125)\nend"
)

(Script.429
	Name:	"RasterWarp.ZoomOut"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:14:01 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheName = theView.GetName\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nRoamList = 
RstWrpExt.GetPreferences.Get(\"Together\")\n\n\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\n\n\n\nif (ParentFound = true) then\n  ParentDisp = theView.GetDisplay\n  aRect = ParentDisp.ReturnUserRect\n  aPoint = ParentDisp.ReturnUserPoint\n  Parent = {}\n  Parent = RoamList.Get(ParentPos)\n  for each i in Parent\n    if (i.GetName <> theName) then\n      ChildDisp = i.GetDispl
ay\n      if (aRect.IsNull) then\n        ChildDisp.ZoomOut(125)\n        ChildDisp.PanTo(aPoint)\n      else\n        ext = ChildDisp.ReturnExtent\n        ext.Scale(ext.GetWidth/arect.GetWidth)\n        ChildDisp.ZoomToRect(ext)\n      end\n    end\n  end\nend\n\n\nif ((ParentFound = false) )\n  then\n    theDisp = theView.GetDisplay\n    aRect = theDisp.ReturnUserRect\n    aPoint = theDisp.ReturnUserPoint\n    if (aRect.IsNull)\n      then\n        theDisp.ZoomOut(125)\n        theDisp.PanTo(aPoint)\n      else\n        ext = t
heDisp.ReturnExtent\n        ext.Scale(ext.GetWidth/arect.GetWidth)\n        theDisp.ZoomToRect(ext)\n    end\nend"
)

(Script.430
	Name:	"RasterWarp.ZoomSelected"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:14:10 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nav.GetProject.SetModified(true)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\ntheName = theView.GetName\n\nRstWrpExt = Extensi
on.Find(\"ImageWarp\")\nRoamList = RstWrpExt.GetPreferences.Get(\"Together\")\n\n\n\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\n\nif (ParentFound = true)\n  then\n    LaCasa = RoamList.Get(ParentPos)\n    \n    r = Rect.MakeEmpty\n    for each t in theView.GetActiveThemes\n      if (t.CanSelect) then\n        r = r.UnionWith(t.GetSelectedExtent)\n      end\n    end\n    \n    if 
(r.IsEmpty) then\n      return nil\n    elseif ( r.ReturnSize = (0@0) ) then\n      for each Person in LaCasa\n        if (Person.GetName <> theName) then\n          Person.GetDisplay.PanTo(r.ReturnOrigin)\n        end\n      end  \n    else\n      for each Person in LaCasa\n        if (Person.GetName <> theName) then\n          Person.GetDisplay.SetExtent(r.Scale(1.1))\n        end\n      end\n    end\nend\n     \n\n\nif ((ParentFound = False) )\n  then\n    r = Rect.MakeEmpty\n    for each t in theView.GetActiveThemes\n      if
 (t.CanSelect) then\n        r = r.UnionWith(t.GetSelectedExtent)\n      end\n    end\n    if (r.IsEmpty) then\n      return nil\n    elseif ( r.ReturnSize = (0@0) ) then\n      theView.GetDisplay.PanTo(r.ReturnOrigin)\n    else\n      theView.GetDisplay.SetExtent(r.Scale(1.1))\n    end\nend\n"
)

(Script.431
	Name:	"RasterWarp.ZoomTheme"
	SourceCode:	"' Name: \n'\n' Author: Kenneth R. McVay\n' Date: Tue Jul 21 15:14:19 1998\n' Revised by: \n' Revision Date: \n' Revisions: \n' -------------------------------------------------------------------\n' Description: \n' Requires: \n' Runs: \n' Run by: \n' Self: \n' Returns: \n' -------------------------------------------------------------------\n\nDEBUG = true\nDEBUGNOT = false\n\n\n\nav.GetProject.SetModified(true)\ntheView = av.GetActiveDoc\nif (theView.Is(View).Not)\n  then\n    exit\nend\n\ntheName = theView.GetName\ntheThemes = theView
.GetActiveThemes\n\n\nRstWrpExt = Extension.Find(\"ImageWarp\")\nRoamList = RstWrpExt.GetPreferences.Get(\"Together\")\n\n\n\nParentPos = 0\nParentFound = false\n\nfor each Parent in RoamList\n  aName = Parent.Get(0).GetName\n  if(aName = theName) then\n    ParentFound = true\n    Break\n  end\n  ParentPos = ParentPos + 1\nend\n\n\n\nif (ParentFound = true)\n  then\n    LaCasa = RoamList.Get(ParentPos)\n    r = Rect.MakeEmpty\n    for each t in theThemes\n      r = r.UnionWith(t.ReturnExtent)\n    end\n    if (r.IsEmpty) then\n      return 
nil\n    elseif ( r.ReturnSize = (0@0) ) then\n      for each Person in LaCasa\n        if (Person.GetName <> theName) then\n          Person.GetDisplay.PanTo(r.ReturnOrigin)\n        end\n      end\n    else\n      for each Person in LaCasa\n        if (Person.GetName <> theName) then\n          Person.GetDisplay.SetExtent(r.Scale(1.1))\n        end\n      end\n    end\nend\n\n\nif ((ParentFound = False))\n  then\n    r = Rect.MakeEmpty\n    for each t in theThemes\n      r = r.UnionWith(t.ReturnExtent)\n    end\n    if (r.IsEmp
ty) then\n      return nil\n    elseif ( r.ReturnSize = (0@0) ) then\n      theView.GetDisplay.PanTo(r.ReturnOrigin)\n    else\n      theView.GetDisplay.SetExtent(r.Scale(1.1))\n    end\nend\n\n\n\n\n"
)

