Description | Uses | Classes, Interfaces, Objects and Records | Functions and Procedures | Types | Constants | Variables |
The main purpose of ScreenObjectUnit
is to define TScreenObject which extends TScreenObject by adding boundary conditions and the ability to handle PHAST-style interpolation. TScreenObject represents the objects that the user draws on the screen. ScreenObjectUnit
also defines a variety of related classes.
ScreenObjectUnit
also defines TCustomPhastBoundaryCondition and a series of descendants. The descendants represent boundary conditions in GoPhast.
Another class defined here is TMultiValueScreenObject which is used when importing zones from an existing PHAST model.
Finally TScreenObjectItem and TScreenObjectCollection are used to save TScreenObjects to a file or read them from a file.
See TPhastInterpolationValues for an explanation of PHAST-style interpolation.
Name | Description |
---|---|
Class EScreenObjectError |
EScreenObjectError is the class of errors related to TScreenObjects. |
record TEdgePoint |
TEdgePoint represents a point of intersection between a TScreenObject and a grid element or grid cell. |
Class TPointValue |
|
Class TPointValues |
|
Class TPointValuesItem |
|
Class TPointPositionValues |
|
Class TLineSegment |
|
Class TSelectedCells |
|
Class TCellElementSegment |
TCellElementSegment represents the 2D intersection of one segment of a TScreenObject with a cell or element in the grid. |
Class TCellElementLeaf |
|
Class TCellElementLeafList |
|
Class TIntersectEdge |
|
Class TCellElementSegmentList |
TCellElementSegmentList is a list of the TCellElementSegments of a TScreenObject. Each segment is the 2D intersection of one segment of the TScreenObject with an individual cell or element in the grid. |
Class TAssociateList |
|
record TIntersectionLocation |
|
record TIntersection |
|
Class TSubPolygon |
TSubPolygon is used to make determining whether a point is inside a TScreenObject faster and to make finding the nearest point on a line faster. |
Class TCellAssignment |
|
Class TCellAssignmentList |
If any new properties are added, be sure to update Assign too. |
Class TCellListsModelAssociation |
|
Class TCMList |
|
Class TCachedCells |
|
Class TCustomScreenObjectDelegate |
TCustomScreenObjectDelegate is an abstract base class. Descendants are used for assigning properties to TDataArrays from the front and side views. |
Class TDelegateItem |
|
Class TDelegateCollection |
|
Class TCustomPhastBoundaryCollection |
TCustomPhastBoundaryCollection is an abstract base class. Its descendants store a series of TCustomPhastBoundaryConditions. The series define how one aspect of a boundary condition changes with time. |
Class TRealPhastBoundaries |
TRealPhastBoundaries stores a collection of TRealPhastBoundaryConditions. |
Class TIntegerPhastBoundaries |
TIntegerPhastBoundaries stores a collection of // TIntegerPhastBoundaryConditions. |
Class TCustomPhastBoundary |
TCustomPhastBoundary is an abstract base class. Its descendants are used to define all aspects of one type of boundary condition for one TScreenObject including those aspects that vary with time. |
Class TCustomInterpolatedBoundary |
|
Class TCustomOrientedPhastBoundary |
TCustomOrientedPhastBoundary represents a boundary condition that only applies to one TViewDirection. |
Class TFluxBoundary |
TFluxBoundary represents a flux boundary in PHAST for one TScreenObject. |
Class TLeakyBoundary |
TLeakyBoundary represents a leaky boundary in PHAST for one TScreenObject. |
Class TRiverBoundary |
TRiverBoundary represents a river boundary in PHAST for one TScreenObject. |
Class TSpecifiedHeadBoundary |
TSpecifiedHeadBoundary represents a specified head boundary in PHAST for one TScreenObject. |
Class TWellInterval |
TWellInterval an open interval in a well boundary in PHAST. |
Class TWellIntervals |
TWellIntervals represents a series of TWellIntervals. |
Class TWellBoundary |
TWellBoundary represents a well in PHAST for one TScreenObject. |
Class TModflowBoundaries |
TModflowBoundaries is the internal representation of an object on the screen. |
Class TUsedWithModelItem |
|
Class TUsedWithModelCollection |
|
Class TScreenObject |
|
Class TScreenObjectList |
|
Class TCustomDataListItem |
TCustomDataListItem provides functionality used in storing multiple values associated with a single screen object (a TMultiValueScreenObject); It is used as an ancestor of TRealDataListItem and TIntegerDataListItem which actually hold data. |
Class TRealDataListItem |
TRealDataListItem is a TCustomDataListItem specialized for holding real numbers. |
Class TIntegerDataListItem |
TIntegerDataListItem is a TCustomDataListItem specialized for specialized for holding integers. |
Class TDataListCollection |
TDataListCollection is a collection of TCustomDataListItem's. It is used to store data by zones in a TMultiValueScreenObject. |
Class TRealDataListCollection |
TRealDataListCollection is a descendant of TDataListCollection specialized for storing real numbers. |
Class TIntegerDataListCollection |
TIntegerDataListCollection is a descendant of TDataListCollection specialized for storing integers. |
Class TSelectedVertexItem |
TSelectedVertexItem is used to store or read whether a vertex in a TScreenObject is selected or not. |
Class TSelectedVertexCollection |
TSelectedVertexCollection is used to store or read which vertices in a TScreenObject are selected. |
Class TPointItem |
TPointItem is used to store a TPoint2D. |
Class TPointCollection |
TPointCollection is used to store a series of TPoint2Ds. |
Class TScreenObjectItem |
TScreenObjectItem is used in reading a TScreenObject from or writing it to a stream. |
Class TPhastDelegate |
|
Class TModflowDataObject |
|
Class TModflowDelegate |
|
Class TModflowLGRDelegate |
|
Class TModflowNWTDelegate |
|
Class TSutraDelegate |
|
Class TCustomPhastBoundaryCondition |
TCustomPhastBoundaryCondition is and abstract base class. Its descendants, TIntegerPhastBoundaryCondition and TRealPhastBoundaryCondition, are used to define the value of one aspect of a boundary condition for one time period. |
Class TRealPhastBoundaryCondition |
TRealPhastBoundaryCondition is used to define the value of one aspect of a boundary condition for one time period. The aspect of the boundary condition must be a real number. An example is the head in a specified head boundary. |
Class TIntegerPhastBoundaryCondition |
TIntegerPhastBoundaryCondition is used to define the value of one aspect of a boundary condition for one time period. The aspect of the boundary condition must be an integer. An example is the associated solution in a specified head boundary. |
Class TMultiValueScreenObject |
TMultiValueScreenObject is a TScreenObject that can store a series of integer or real number values associated with a data set. TMultiValueScreenObject is used when importing a zone from an existing PHAST model. |
Class TScreenObjectCollection |
TScreenObjectCollection is used for reading a series of TScreenObjects from or writing them to a file or the clipboard. |
Class TScreenObjectClipboard |
procedure ResetScreenObjectFunction(const DataSetIndex: integer; const ScreenObject: TScreenObject; const Compiler: TRbwParser; const DataSetDataType: TRbwDataType; const ErrorMessage: string; const IsBoundary: boolean); |
function XIntersection(const Point1, Point2: TEdgePoint; const Y: real): real; |
function YIntersection(const Point1, Point2: TEdgePoint; const X: real): real; overload; |
function YIntersection(const Point1, Point2: TPoint2D; const X: real): real; overload; |
function ScreenObjectCompare(Item1, Item2: Pointer): Integer; |
procedure GetLayerFromZ(Z: Double; var CellLocation: TCellLocation; Grid: TModflowGrid; Model: TBaseModel); |
procedure SelectAScreenObject(ScreenObject: TScreenObject); |
function FindIntersectionPoints(Poly1, Poly2: TSubPolygon; var Intersections: TIntersectionArray; var Count: integer): boolean; |
procedure GlobalRemoveScreenObjectDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalDummyHandleSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveHigherElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreHigherElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveLowerElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreLowerElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveBoundaryDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreBoundaryDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemovePhastBoundarySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestorePhastBoundarySubscription(Sender: TObject; Subject: TObject; const AName: string); |
function IsValueInside(const First, Middle, Last: real): boolean; |
function PointInConcavePolygon(const Point:TPoint2D; const Polygon:TPolygon2D):Boolean; |
T2DRealPointArray6 = array[0..5] of TPoint2D; |
TWhichElevation = (...); |
TEdgePosition = (...); |
PEdgePoint = ˆTEdgePoint; |
TEdgePointArray = array of TEdgePoint; |
TIntersectionArray = array of TIntersection; |
TAssignmentMethod = (...); |
TCachedCellArray = array[Low(TAssignmentLocation)..High(TAssignmentLocation)]
of TCellAssignmentList; |
TCustomScreenObjectDelegateClass = class of TCustomScreenObjectDelegate; |
TSolutionType = (...); |
TScreenObjectClass = class of TScreenObject; |
TResetProcedure = procedure(Compiler: TRbwParser) of object; |
ObjectPrefix = 'Object'; |
StrInvalidScreenObjec = 'Invalid screen object vertex index.'; |
StrParentModel = 'Parent Model'; |
procedure ResetScreenObjectFunction(const DataSetIndex: integer; const ScreenObject: TScreenObject; const Compiler: TRbwParser; const DataSetDataType: TRbwDataType; const ErrorMessage: string; const IsBoundary: boolean); |
If the formula for a TDataArray in a TScreenObject is incorrect, |
function XIntersection(const Point1, Point2: TEdgePoint; const Y: real): real; |
Point1 and Point2 define a non-horizontal line. Given Y, |
function YIntersection(const Point1, Point2: TEdgePoint; const X: real): real; overload; |
Point1 and Point2 define a non-vertical line. Given X, |
function YIntersection(const Point1, Point2: TPoint2D; const X: real): real; overload; |
function ScreenObjectCompare(Item1, Item2: Pointer): Integer; |
|
procedure GetLayerFromZ(Z: Double; var CellLocation: TCellLocation; Grid: TModflowGrid; Model: TBaseModel); |
result.Column and result.Row must have already been set when |
procedure SelectAScreenObject(ScreenObject: TScreenObject); |
function FindIntersectionPoints(Poly1, Poly2: TSubPolygon; var Intersections: TIntersectionArray; var Count: integer): boolean; |
procedure GlobalRemoveScreenObjectDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalDummyHandleSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveHigherElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreHigherElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveLowerElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreLowerElevationSubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemoveBoundaryDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestoreBoundaryDataArraySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRemovePhastBoundarySubscription(Sender: TObject; Subject: TObject; const AName: string); |
procedure GlobalRestorePhastBoundarySubscription(Sender: TObject; Subject: TObject; const AName: string); |
function IsValueInside(const First, Middle, Last: real): boolean; |
function PointInConcavePolygon(const Point:TPoint2D; const Polygon:TPolygon2D):Boolean; |
T2DRealPointArray6 = array[0..5] of TPoint2D; |
Windows is included to allow AnsiCompareText to be inlined. defines TBitmap32. |
TWhichElevation = (...); |
Values
|
TEdgePosition = (...); |
See TEdgePoint and TCellElementSegment. Values
|
PEdgePoint = ˆTEdgePoint; |
|
TEdgePointArray = array of TEdgePoint; |
|
TIntersectionArray = array of TIntersection; |
TAssignmentMethod = (...); |
Values
|
TCachedCellArray = array[Low(TAssignmentLocation)..High(TAssignmentLocation)]
of TCellAssignmentList; |
TCustomScreenObjectDelegateClass = class of TCustomScreenObjectDelegate; |
TScreenObjectClass = class of TScreenObject; |
|
TResetProcedure = procedure(Compiler: TRbwParser) of object; |
ObjectPrefix = 'Object'; |
StrInvalidScreenObjec = 'Invalid screen object vertex index.'; |
StrParentModel = 'Parent Model'; |