CoastalME (Coastal Modelling Environment)
Simulates the long-term behaviour of complex coastlines
|
Geometry class used to represent coast profile objects. More...
#include <profile.h>
Inherits CGeomMultiLine.
Public Member Functions | |
CGeomProfile (int const, int const, int const, CGeom2DIPoint const *, CGeom2DIPoint const *, bool const) | |
In external CRS, the coords of cells 'under' this profile (has the same length as m_VCellInProfile) | |
~CGeomProfile (void) override | |
Destructor. | |
int | nGetCoast (void) const |
Returns this profile's coast. | |
int | nGetProfileID (void) const |
Returns the profile's this-coast ID. | |
int | nGetProfileCoastID (void) const |
int | nGetCoastPoint (void) const |
Returns the coast point at which the profile starts. | |
CGeom2DIPoint * | pPtiGetStartPoint (void) |
Returns a pointer to the location of the cell (grid CRS) on which the profile starts. | |
void | SetEndPoint (CGeom2DIPoint const *) |
Sets the the location of the cell (grid CRS) on which the profile ends. | |
CGeom2DIPoint * | pPtiGetEndPoint (void) |
Returns a pointer to the location of the cell (grid CRS) on which the profile ends. | |
void | SetStartOfCoast (bool const) |
Sets a switch to indicate whether this is a start-of-coast profile. | |
bool | bStartOfCoast (void) const |
Returns the switch to indicate whether this is a start-of-coast profile. | |
void | SetEndOfCoast (bool const) |
Sets a switch to indicate whether this is an end-of-coast profile. | |
bool | bEndOfCoast (void) const |
Returns the switch to indicate whether this is an end-of-coast profile. | |
void | SetCShoreProblem (bool const) |
Sets a switch to indicate whether this profile has a CShore problem. | |
bool | bCShoreProblem (void) const |
Returns the switch which indicates whether this profile has a CShore problem. | |
void | SetHitLand (bool const) |
Sets a switch which indicates whether this profile has hit land. | |
bool | bHitLand (void) const |
Returns the switch which indicates whether this profile has hit land. | |
void | SetHitIntervention (bool const) |
Sets a switch which indicates whether this profile has hit an intervention. | |
bool | bHitIntervention (void) const |
Returns the switch which indicates whether this profile has hit an intervention. | |
void | SetHitCoast (bool const) |
Sets a switch which indicates whether this profile has hit a coast. | |
bool | bHitCoast (void) const |
Returns the switch which indicates whether this profile has hit a coast. | |
void | SetTooShort (bool const) |
Sets a switch which indicates whether this profile is too short to be useful. | |
bool | bTooShort (void) const |
Returns the switch which indicates whether this profile is too short to be useful. | |
void | SetTruncatedSameCoast (bool const) |
Sets a switch which indicates whether this profile is truncated, due to hitting another profile from the same coast. | |
bool | bTruncatedSameCoast (void) const |
Returns the switch which indicates whether this profile has been truncated, due to hitting another profile from the same coast. | |
void | SetTruncatedDifferentCoast (bool const) |
Sets a switch which indicates whether this profile is truncated, due to hitting another profile from a different coast. | |
bool | bTruncatedDifferentCoast (void) const |
Returns the switch which indicates whether this profile has been truncated, due to hitting another profile from a different coast. | |
void | SetHitAnotherProfile (bool const) |
Sets a switch which indicates whether this profile hits another profile badly. | |
bool | bHitAnotherProfile (void) const |
Returns the switch which indicates whether this profile hits another profile badly. | |
bool | bProfileOK (void) const |
Returns true if this is a problem-free profile, and is not a start-of-coast and is not an end-of-coast profile. | |
bool | bProfileOKIncTruncated (void) const |
Returns true if this is a problem-free profile, and is not a start-of-coast and is not an end-of-coast profile. But it can be a truncated profile due to hitting another profile from this coast or from a different coast. | |
bool | bOKIncStartAndEndOfCoast (void) const |
Returns true if this is a problem-free profile (however it could be a start-of-coast or an end-of-coast profile, or could be truncated due to hitting a different coast) | |
void | SetPointsInProfile (vector< CGeom2DPoint > const *) |
Sets points (external CRS) in the profile. Note that only two points, the start and end point, are initially stored each profile. | |
void | SetPointInProfile (int const, double const, double const) |
Sets a single point (external CRS) in the profile. | |
void | AppendPointInProfile (double const, double const) |
Appends a point (external CRS) to the profile. | |
void | AppendPointInProfile (CGeom2DPoint const *) |
Appends a point (external CRS) to the profile (overloaded version) | |
void | TruncateProfile (int const) |
Truncates the profile's CGeomLine (external CRS points) | |
bool | bInsertIntersection (double const, double const, int const) |
Inserts an intersection (at a point specified in external CRS, with a line segment) into the profile. | |
int | nGetProfileSize (void) const |
Returns the number of external CRS points in the profile (only two, initally; and always just two for grid-edge profiles) | |
CGeom2DPoint * | pPtGetPointInProfile (int const) |
Returns a single point (external CRS) from the profile. | |
CGeom2DIPoint * | pPtiGetLastCellInProfile (void) |
Returns the last cell (grid CRS) in the profile. | |
vector< CGeom2DPoint > | PtVGetThisPointAndAllAfter (int const) |
Returns a given external CRS point from the profile, and all points after this. | |
bool | bIsPointInProfile (double const, double const) |
Removes a line segment from the profile. | |
bool | bIsPointInProfile (double const, double const, int &) |
Queries the profile: is the given point (external CRS) a profile point? If so, then it also returns the number of the point in the profile. | |
void | SetUpCoastAdjacentProfile (CGeomProfile *) |
Sets the up-coast adjacent profile. | |
CGeomProfile * | pGetUpCoastAdjacentProfile (void) const |
Returns the up-coast adjacent profile, returns NULL if there is no up-coast adjacent profile. | |
void | SetDownCoastAdjacentProfile (CGeomProfile *) |
Sets the down-coast adjacent profile. | |
CGeomProfile * | pGetDownCoastAdjacentProfile (void) const |
Returns the down-coast adjacent profile, returns NULL if there is no down-coast adjacent profile. | |
void | AppendCellInProfile (CGeom2DIPoint const *) |
Appends a cell (grid CRS) to the profile. | |
void | AppendCellInProfile (int const, int const) |
Appends a cell (grid CRS) to the profile (overloaded version) | |
void | SetCellsInProfile (vector< CGeom2DIPoint > *) |
Sets the profile's vector of cells (grid CRS) | |
vector< CGeom2DIPoint > * | pPtiVGetCellsInProfile (void) |
Returns all cells (grid CRS) in the profile. | |
CGeom2DIPoint * | pPtiGetCellInProfile (int const) |
Returns a single cell (grid CRS) in the profile. | |
int | nGetNumCellsInProfile (void) const |
Returns the number of cells in the profile. | |
int | nGetIndexOfCellInProfile (int const, int const) |
Returns the index of a given cell in the vector of profile cells; returns INT_NODATA if not found. | |
int | nGetCellGivenDepth (CGeomRasterGrid const *, double const) |
Returns the index of the cell on this profile which has a sea depth which is just less than a given depth. If every cell on the profile has a sea depth which is less than the given depth it returns INT_NODATA. | |
void | SetProfileDeepWaterWaveHeight (double const) |
Sets the deep-water wave height for this profile. | |
double | dGetProfileDeepWaterWaveHeight (void) const |
Returns the deep-water wave height for this profile. | |
void | SetProfileDeepWaterWaveAngle (double const) |
Sets the deep-water wave orientation for this profile. | |
double | dGetProfileDeepWaterWaveAngle (void) const |
Returns the deep-water wave orientation for this profile. | |
void | SetProfileDeepWaterWavePeriod (double const) |
Sets the deep-water wave period for this profile. | |
double | dGetProfileDeepWaterWavePeriod (void) const |
Returns the deep-water wave period for this profile. | |
bool | bIsIntervention (void) const |
Returns true if this is an intervention profile. | |
![]() | |
CGeomMultiLine (void) | |
Constructor, no parameters. | |
~CGeomMultiLine (void) override | |
Destructor. | |
vector< CGeom2DPoint > & | pGetPoints (void) |
Returns a pointer to the points of the CGeomLine. | |
void | SetPoints (vector< CGeom2DPoint > &) |
Replaces the points of the CGeomLine. | |
void | AppendLineSegment (void) |
Appends a new empty line segment. | |
void | AppendLineSegment (vector< pair< int, int > > *) |
Appends a line segment which is supplied as a parameter. | |
int | nGetNumLineSegments (void) const |
Appends a line segment which then inherits from the preceding line segments. | |
void | TruncateLineSegments (int const) |
Cuts short the number of line segments. | |
void | InsertLineSegment (int const) |
Inserts a line segment, inheriting from preceding line segments. | |
vector< vector< pair< int, int > > > | prVVGetAllLineSegAfter (int const) |
Returns a vector of the line segments which succeed the specified line segment number. | |
void | RemoveLineSegment (int const) |
Removes a line segment. | |
void | AppendCoincidentProfileToLineSegments (pair< int, int > const) |
Appends a coincident profile pair to the CGeomMultiLine object's final line segment. | |
void | AddCoincidentProfileToExistingLineSegment (int const, int const, int const) |
Adds a coincident profile to a pre-existing line segment of the CGeomMultiLine object. | |
vector< pair< int, int > > * | pprVGetPairedCoincidentProfilesForLineSegment (int const) |
Returns a vector of pairs (a line segment) | |
int | nGetCoincidentProfileForLineSegment (int const, int const) const |
Returns the numbers of coincident profiles. | |
int | nGetNumCoincidentProfilesInLineSegment (int const) |
Returns the count of coincident profiles in a specified line segment, or -1 if the line segment does not exist. | |
bool | bFindProfileInCoincidentProfilesOfLastLineSegment (int const) |
Returns true if the given profile number is amongst the coincident profiles of the CGeomMultiLine object's final line segment. | |
bool | bFindProfileInCoincidentProfiles (int const) |
Returns true if the given profile number is one of the coincident profiles of the a specified line segment. | |
void | GetMostCoastwardSharedLineSegment (int const, int &, int &) |
Finds the number of the most coastward line segment for which the two profiles are coincident, or -1 if they are not coincident. If they are coincident, also finds the line segment of the other profile. | |
int | nGetProf (int const, int const) const |
Returns the profile number, given a line segment and the index of the co-incident profile for that line segment. | |
int | nGetProfsLineSeg (int const, int const) const |
Returns the profile's own line segment, given a line segment and the index of the co-incident profile for that line segment. | |
void | SetProfsLineSeg (int const, int const, int const) |
Sets a profile's own line segment number, given a line segment and the index of the co-incident profile for that line segment. | |
![]() | |
CGeomLine (void) | |
Constructor. | |
CGeomLine (CGeom2DPoint const *, CGeom2DPoint const *) | |
Overloaded constructor with two points as parameters. | |
CGeomLine (int const) | |
Overloaded constructor with one parameter, this creates a given number of uninitialized points. | |
~CGeomLine (void) override | |
Destructor. | |
double | dGetXAt (int const) |
Returns the X value at a given place in the line. | |
double | dGetYAt (int const) |
Returns the Y value at a given place in the line. | |
CGeom2DPoint * | pPtGetAt (int const) |
Returns the point at a given place in the line. | |
![]() | |
void | Reverse (void) |
Reverses the sequence of points in the vector which represents this 2D polygon. | |
int | nGetSize (void) const |
void | Resize (int const) |
Resizes the vector which represents this 2D shape. | |
void | Append (CGeom2DPoint const *) |
Appends a point to this 2D shape. | |
void | Append (double const, double const) |
Appends a point to this 2D shape. | |
void | AppendIfNotAlready (double const, double const) |
Appends a point to this 2D shape only if it isn't already in the shape vector. | |
CGeom2DPoint * | pPtBack (void) |
Returns the last element of this 2D shape. | |
CGeom2DPoint & | operator[] (int const) |
Operator to return one point of this 2D shape. | |
vector< CGeom2DPoint > * | pPtVGetPoints (void) |
Returns the address of the vector which represents this 2D shape. | |
Private Attributes | |
bool | m_bStartOfCoast |
Is this a start-of-coast profile? | |
bool | m_bEndOfCoast |
Is this an end-of-coast profile? | |
bool | m_bCShoreProblem |
Has this profile encountered a CShore problem? | |
bool | m_bHitLand |
Has this profile hit land? | |
bool | m_bHitIntervention |
Has this profile hit an intervention? | |
bool | m_bHitCoast |
Has this profile hit a coastline? | |
bool | m_bTooShort |
Is this profile too short? | |
bool | m_bTruncatedSameCoast |
Has this profile been truncated by hitting another profile from the same coast? | |
bool | m_bTruncatedDifferentCoast |
Has this profile been truncated by hitting another profile from a different coast? | |
bool | m_bHitAnotherProfile |
Has this profile hit another profile? | |
bool | m_bIntervention |
Is this an intervention profile? | |
int | m_nCoast |
The coast from which this profile projects. | |
int | m_nCoastPoint |
The coastline point at which this profile hits the coast (not necessarily coincident wih the profile start cell) | |
int | m_nProfileID |
The this-coast ID of the profile (note that a profile in a different coast may have the same ID as this profile) | |
double | m_dDeepWaterWaveHeight |
The wave height at the end of the profile. | |
double | m_dDeepWaterWaveAngle |
The wave orientation at the end of the profile. | |
double | m_dDeepWaterWavePeriod |
The wave period at the end of the profile. | |
CGeom2DIPoint | PtiStart |
The on-coast start point of the profile in grid CRS. | |
CGeom2DIPoint | PtiEnd |
The seaward end point of the profile in grid CRS. | |
CGeomProfile * | m_pUpCoastAdjacentProfile |
Pointer to the adjacent up-coast profile (may be an invalid profile) | |
CGeomProfile * | m_pDownCoastAdjacentProfile |
Pointer to the adjacent down-coast profile (may be an invalid profile) | |
vector< CGeom2DIPoint > | m_VCellInProfile |
In the grid CRS, the integer coordinates of the cells 'under' this profile, point zero is the same as 'cell marked as coastline' in coast object. | |
Additional Inherited Members | |
![]() | |
void | Display (void) override |
Instantiates the pure virtual function in the abstract parent class, so that CGeomLine is not an abstract class. | |
![]() | |
CA2DShape (void) | |
Constructor. | |
virtual | ~CA2DShape (void) |
Destructor. | |
void | Clear (void) |
Clears this 2D shape. | |
![]() | |
vector< CGeom2DPoint > | m_VPoints |
The points which comprise the float-coordinate 2D shape. | |
Geometry class used to represent coast profile objects.
TODO 001 This is a more detailed description of the CGeomProfile class.
|
explicit |
In external CRS, the coords of cells 'under' this profile (has the same length as m_VCellInProfile)
Constructor with initialization list, requires one parameter (the coast point at which the profile starts)
Definition at line 44 of file profile.cpp.
Referenced by nGetProfileCoastID(), pGetDownCoastAdjacentProfile(), pGetUpCoastAdjacentProfile(), SetDownCoastAdjacentProfile(), and SetUpCoastAdjacentProfile().
|
override |
Destructor.
Definition at line 69 of file profile.cpp.
void CGeomProfile::AppendCellInProfile | ( | CGeom2DIPoint const * | pPti | ) |
Appends a cell (grid CRS) to the profile.
Definition at line 497 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::AppendCellInProfile | ( | int const | nX, |
int const | nY ) |
Appends a cell (grid CRS) to the profile (overloaded version)
Definition at line 503 of file profile.cpp.
void CGeomProfile::AppendPointInProfile | ( | CGeom2DPoint const * | pPt | ) |
Appends a point (external CRS) to the profile (overloaded version)
Definition at line 316 of file profile.cpp.
void CGeomProfile::AppendPointInProfile | ( | double const | dNewX, |
double const | dNewY ) |
Appends a point (external CRS) to the profile.
Definition at line 310 of file profile.cpp.
Referenced by CSimulation::MergeProfilesAtFinalLineSegments(), CSimulation::nLocateAndCreateGridEdgeProfile(), and CSimulation::TruncateProfileAndAppendNew().
bool CGeomProfile::bCShoreProblem | ( | void | ) | const |
Returns the switch which indicates whether this profile has a CShore problem.
Definition at line 140 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bEndOfCoast | ( | void | ) | const |
Returns the switch to indicate whether this is an end-of-coast profile.
Definition at line 128 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile(), CSimulation::CreateRasterizedProfile(), CSimulation::InterpolateWavePropertiesBetweenProfiles(), CSimulation::MarkProfilesOnGrid(), CSimulation::nCreateAllPolygons(), CSimulation::nDoAllPropagateWaves(), CSimulation::nDoMultipleCoastlines(), CSimulation::nTruncateProfilesDifferentCoasts(), and CRWCoast::pGetDownCoastProfileNotIncLastProfile().
bool CGeomProfile::bHitAnotherProfile | ( | void | ) | const |
Returns the switch which indicates whether this profile hits another profile badly.
Definition at line 224 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bHitCoast | ( | void | ) | const |
Returns the switch which indicates whether this profile has hit a coast.
Definition at line 176 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bHitIntervention | ( | void | ) | const |
Returns the switch which indicates whether this profile has hit an intervention.
Definition at line 164 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bHitLand | ( | void | ) | const |
Returns the switch which indicates whether this profile has hit land.
Definition at line 152 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bInsertIntersection | ( | double const | dX, |
double const | dY, | ||
int const | nSeg ) |
Inserts an intersection (at a point specified in external CRS, with a line segment) into the profile.
Definition at line 322 of file profile.cpp.
Referenced by CSimulation::nInsertPointIntoProfilesIfNeededThenUpdate().
bool CGeomProfile::bIsIntervention | ( | void | ) | const |
Returns true if this is an intervention profile.
Definition at line 603 of file profile.cpp.
Referenced by CSimulation::CheckForIntersectingProfiles(), and CSimulation::nCreateProfile().
bool CGeomProfile::bIsPointInProfile | ( | double const | dX, |
double const | dY ) |
Removes a line segment from the profile.
Queries the profile: is the given point (external CRS) a profile point?
Definition at line 386 of file profile.cpp.
Referenced by CSimulation::CheckForIntersectingProfiles().
bool CGeomProfile::bIsPointInProfile | ( | double const | dX, |
double const | dY, | ||
int & | nPoint ) |
Queries the profile: is the given point (external CRS) a profile point? If so, then it also returns the number of the point in the profile.
Definition at line 398 of file profile.cpp.
bool CGeomProfile::bOKIncStartAndEndOfCoast | ( | void | ) | const |
Returns true if this is a problem-free profile (however it could be a start-of-coast or an end-of-coast profile, or could be truncated due to hitting a different coast)
Definition at line 265 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile(), CSimulation::InterpolateWavePropertiesBetweenProfiles(), CSimulation::ModifyBreakingWavePropertiesWithinShadowZoneToCoastline(), CSimulation::nCalcPotentialPlatformErosionBetweenProfiles(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCalcWavePropertiesOnProfile(), and CSimulation::nCreateAllPolygons().
bool CGeomProfile::bProfileOK | ( | void | ) | const |
Returns true if this is a problem-free profile, and is not a start-of-coast and is not an end-of-coast profile.
Definition at line 230 of file profile.cpp.
Referenced by CSimulation::nCheckAndMarkAllProfiles(), and CSimulation::nDoPolygonSharedBoundaries().
bool CGeomProfile::bProfileOKIncTruncated | ( | void | ) | const |
Returns true if this is a problem-free profile, and is not a start-of-coast and is not an end-of-coast profile. But it can be a truncated profile due to hitting another profile from this coast or from a different coast.
Definition at line 248 of file profile.cpp.
Referenced by CSimulation::CheckForIntersectingProfiles().
bool CGeomProfile::bStartOfCoast | ( | void | ) | const |
Returns the switch to indicate whether this is a start-of-coast profile.
Definition at line 116 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile(), CSimulation::CreateRasterizedProfile(), CSimulation::MarkProfilesOnGrid(), CSimulation::nCreateAllPolygons(), CSimulation::nDoAllPropagateWaves(), CSimulation::nDoMultipleCoastlines(), and CSimulation::nTruncateProfilesDifferentCoasts().
bool CGeomProfile::bTooShort | ( | void | ) | const |
Returns the switch which indicates whether this profile is too short to be useful.
Definition at line 188 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bTruncatedDifferentCoast | ( | void | ) | const |
Returns the switch which indicates whether this profile has been truncated, due to hitting another profile from a different coast.
Definition at line 212 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
bool CGeomProfile::bTruncatedSameCoast | ( | void | ) | const |
Returns the switch which indicates whether this profile has been truncated, due to hitting another profile from the same coast.
Definition at line 200 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
double CGeomProfile::dGetProfileDeepWaterWaveAngle | ( | void | ) | const |
Returns the deep-water wave orientation for this profile.
Definition at line 585 of file profile.cpp.
Referenced by CSimulation::nCalcWavePropertiesOnProfile(), and CSimulation::nSetAllCoastpointDeepWaterWaveValues().
double CGeomProfile::dGetProfileDeepWaterWaveHeight | ( | void | ) | const |
Returns the deep-water wave height for this profile.
Definition at line 573 of file profile.cpp.
Referenced by CSimulation::nCalcWavePropertiesOnProfile(), and CSimulation::nSetAllCoastpointDeepWaterWaveValues().
double CGeomProfile::dGetProfileDeepWaterWavePeriod | ( | void | ) | const |
Returns the deep-water wave period for this profile.
Definition at line 597 of file profile.cpp.
Referenced by CSimulation::nCalcWavePropertiesOnProfile(), and CSimulation::nSetAllCoastpointDeepWaterWaveValues().
int CGeomProfile::nGetCellGivenDepth | ( | CGeomRasterGrid const * | pGrid, |
double const | dDepthIn ) |
Returns the index of the cell on this profile which has a sea depth which is just less than a given depth. If every cell on the profile has a sea depth which is less than the given depth it returns INT_NODATA.
Definition at line 541 of file profile.cpp.
Referenced by CSimulation::nDoUnconsDepositionOnPolygon(), and CSimulation::nDoUnconsErosionOnPolygon().
int CGeomProfile::nGetCoast | ( | void | ) | const |
Returns this profile's coast.
Definition at line 74 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile().
int CGeomProfile::nGetCoastPoint | ( | void | ) | const |
Returns the coast point at which the profile starts.
Definition at line 86 of file profile.cpp.
Referenced by CSimulation::InterpolateWavePropertiesBetweenProfiles(), CSimulation::ModifyBreakingWavePropertiesWithinShadowZoneToCoastline(), CSimulation::nCalcPotentialPlatformErosionBetweenProfiles(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCalcWavePropertiesOnProfile(), CSimulation::nCreateAllPolygons(), CSimulation::nDoUnconsDepositionOnPolygon(), CSimulation::nDoUnconsErosionOnPolygon(), and CSimulation::nSetAllCoastpointDeepWaterWaveValues().
int CGeomProfile::nGetIndexOfCellInProfile | ( | int const | nX, |
int const | nY ) |
Returns the index of a given cell in the vector of profile cells; returns INT_NODATA if not found.
Definition at line 609 of file profile.cpp.
Referenced by CSimulation::nTruncateProfilesDifferentCoasts().
int CGeomProfile::nGetNumCellsInProfile | ( | void | ) | const |
Returns the number of cells in the profile.
Definition at line 535 of file profile.cpp.
Referenced by CSimulation::ModifyBreakingWavePropertiesWithinShadowZoneToCoastline(), CSimulation::nCalcPotentialPlatformErosionBetweenProfiles(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCalcWavePropertiesOnProfile(), CSimulation::nCreateAllPolygons(), CSimulation::nDoMultipleCoastlines(), CSimulation::nDoUnconsDepositionOnPolygon(), CSimulation::nDoUnconsErosionOnPolygon(), and CSimulation::nTruncateProfileHitDifferentCoast().
int CGeomProfile::nGetProfileCoastID | ( | void | ) | const |
int CGeomProfile::nGetProfileID | ( | void | ) | const |
Returns the profile's this-coast ID.
Definition at line 80 of file profile.cpp.
Referenced by CSimulation::bWriteProfileData(), CSimulation::CheckForIntersectingProfiles(), CSimulation::CreateRasterizedProfile(), CSimulation::MarkProfilesOnGrid(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCalcWavePropertiesOnProfile(), CSimulation::nCheckAndMarkAllProfiles(), CSimulation::nCreateAllPolygons(), CSimulation::nCreateProfile(), CSimulation::nDoMultipleCoastlines(), CSimulation::nGetThisProfileElevationsForCShore(), CSimulation::nInsertPointIntoProfilesIfNeededThenUpdate(), CSimulation::nLocateAndCreateGridEdgeProfile(), CSimulation::nSaveParProfile(), and CSimulation::nSaveProfile().
int CGeomProfile::nGetProfileSize | ( | void | ) | const |
Returns the number of external CRS points in the profile (only two, initally; and always just two for grid-edge profiles)
Definition at line 361 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile(), CSimulation::MarkProfilesOnGrid(), CSimulation::MergeProfilesAtFinalLineSegments(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCheckAndMarkAllProfiles(), and CSimulation::nCreateAllPolygons().
CGeomProfile * CGeomProfile::pGetDownCoastAdjacentProfile | ( | void | ) | const |
Returns the down-coast adjacent profile, returns NULL if there is no down-coast adjacent profile.
Definition at line 491 of file profile.cpp.
Referenced by CSimulation::InterpolateWavePropertiesBetweenProfiles(), CSimulation::nCreateAllPolygons(), CSimulation::nSetAllCoastpointDeepWaterWaveValues(), CSimulation::nTruncateProfileHitDifferentCoast(), CRWCoast::pGetDownCoastProfile(), and CRWCoast::pGetDownCoastProfileNotIncLastProfile().
CGeomProfile * CGeomProfile::pGetUpCoastAdjacentProfile | ( | void | ) | const |
Returns the up-coast adjacent profile, returns NULL if there is no up-coast adjacent profile.
Definition at line 479 of file profile.cpp.
Referenced by CSimulation::nTruncateProfileHitDifferentCoast(), and CRWCoast::pGetUpCoastProfile().
CGeom2DPoint * CGeomProfile::pPtGetPointInProfile | ( | int const | n | ) |
Returns a single point (external CRS) from the profile.
Definition at line 367 of file profile.cpp.
Referenced by CSimulation::bWriteVectorGISFile(), CSimulation::CreateRasterizedProfile(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nCheckAndMarkAllProfiles(), CSimulation::nCreateAllPolygons(), and CSimulation::nDoPolygonSharedBoundaries().
CGeom2DIPoint * CGeomProfile::pPtiGetCellInProfile | ( | int const | n | ) |
Returns a single cell (grid CRS) in the profile.
Definition at line 521 of file profile.cpp.
Referenced by CSimulation::ModifyBreakingWavePropertiesWithinShadowZoneToCoastline(), CSimulation::nCalcWavePropertiesOnProfile(), CSimulation::nCreateAllPolygons(), CSimulation::nDoMultipleCoastlines(), CSimulation::nDoUnconsDepositionOnPolygon(), and CSimulation::nDoUnconsErosionOnPolygon().
CGeom2DIPoint * CGeomProfile::pPtiGetEndPoint | ( | void | ) |
Returns a pointer to the location of the cell (grid CRS) on which the profile ends.
Definition at line 104 of file profile.cpp.
Referenced by CSimulation::nCreateAllPolygons().
CGeom2DIPoint * CGeomProfile::pPtiGetLastCellInProfile | ( | void | ) |
Returns the last cell (grid CRS) in the profile.
Definition at line 528 of file profile.cpp.
CGeom2DIPoint * CGeomProfile::pPtiGetStartPoint | ( | void | ) |
Returns a pointer to the location of the cell (grid CRS) on which the profile starts.
Definition at line 92 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile(), CSimulation::nCreateAllPolygons(), and CSimulation::nTruncateProfilesDifferentCoasts().
vector< CGeom2DIPoint > * CGeomProfile::pPtiVGetCellsInProfile | ( | void | ) |
Returns all cells (grid CRS) in the profile.
Definition at line 515 of file profile.cpp.
Referenced by CSimulation::nCalcPotentialPlatformErosionBetweenProfiles(), CSimulation::nCalcPotentialPlatformErosionOnProfile(), CSimulation::nGetThisProfileElevationsForCShore(), CSimulation::nTruncateProfileHitDifferentCoast(), and CSimulation::nTruncateProfilesDifferentCoasts().
vector< CGeom2DPoint > CGeomProfile::PtVGetThisPointAndAllAfter | ( | int const | nStart | ) |
Returns a given external CRS point from the profile, and all points after this.
Definition at line 373 of file profile.cpp.
Referenced by CSimulation::TruncateOneProfileRetainOtherProfile().
void CGeomProfile::SetCellsInProfile | ( | vector< CGeom2DIPoint > * | VNewPoints | ) |
Sets the profile's vector of cells (grid CRS)
Definition at line 509 of file profile.cpp.
Referenced by CSimulation::nTruncateProfileHitDifferentCoast(), and CSimulation::nTruncateProfilesDifferentCoasts().
void CGeomProfile::SetCShoreProblem | ( | bool const | bFlag | ) |
Sets a switch to indicate whether this profile has a CShore problem.
Definition at line 134 of file profile.cpp.
Referenced by CSimulation::nDoAllPropagateWaves().
void CGeomProfile::SetDownCoastAdjacentProfile | ( | CGeomProfile * | pProfile | ) |
Sets the down-coast adjacent profile.
Definition at line 485 of file profile.cpp.
Referenced by CSimulation::nCreateAllProfiles().
void CGeomProfile::SetEndOfCoast | ( | bool const | bFlag | ) |
Sets a switch to indicate whether this is an end-of-coast profile.
Definition at line 122 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::SetEndPoint | ( | CGeom2DIPoint const * | pPtiEnd | ) |
Sets the the location of the cell (grid CRS) on which the profile ends.
Definition at line 98 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile(), CSimulation::nTruncateProfileHitDifferentCoast(), and CSimulation::nTruncateProfilesDifferentCoasts().
void CGeomProfile::SetHitAnotherProfile | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile hits another profile badly.
Definition at line 218 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetHitCoast | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile has hit a coast.
Definition at line 170 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetHitIntervention | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile has hit an intervention.
Definition at line 158 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetHitLand | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile has hit land.
Definition at line 146 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetPointInProfile | ( | int const | nPoint, |
double const | dNewX, | ||
double const | dNewY ) |
Sets a single point (external CRS) in the profile.
Definition at line 303 of file profile.cpp.
Referenced by CSimulation::MergeProfilesAtFinalLineSegments().
void CGeomProfile::SetPointsInProfile | ( | vector< CGeom2DPoint > const * | VNewPoints | ) |
Sets points (external CRS) in the profile. Note that only two points, the start and end point, are initially stored each profile.
Definition at line 297 of file profile.cpp.
Referenced by CSimulation::nCreateProfile().
void CGeomProfile::SetProfileDeepWaterWaveAngle | ( | double const | dWaveAngle | ) |
Sets the deep-water wave orientation for this profile.
Definition at line 579 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::SetProfileDeepWaterWaveHeight | ( | double const | dWaveHeight | ) |
Sets the deep-water wave height for this profile.
Definition at line 567 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::SetProfileDeepWaterWavePeriod | ( | double const | dWavePeriod | ) |
Sets the deep-water wave period for this profile.
Definition at line 591 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::SetStartOfCoast | ( | bool const | bFlag | ) |
Sets a switch to indicate whether this is a start-of-coast profile.
Definition at line 110 of file profile.cpp.
Referenced by CSimulation::nLocateAndCreateGridEdgeProfile().
void CGeomProfile::SetTooShort | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile is too short to be useful.
Definition at line 182 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetTruncatedDifferentCoast | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile is truncated, due to hitting another profile from a different coast.
Definition at line 206 of file profile.cpp.
Referenced by CSimulation::nTruncateProfileHitDifferentCoast(), and CSimulation::nTruncateProfilesDifferentCoasts().
void CGeomProfile::SetTruncatedSameCoast | ( | bool const | bFlag | ) |
Sets a switch which indicates whether this profile is truncated, due to hitting another profile from the same coast.
Definition at line 194 of file profile.cpp.
Referenced by CSimulation::CreateRasterizedProfile().
void CGeomProfile::SetUpCoastAdjacentProfile | ( | CGeomProfile * | pProfile | ) |
Sets the up-coast adjacent profile.
Definition at line 473 of file profile.cpp.
Referenced by CSimulation::nCreateAllProfiles().
void CGeomProfile::TruncateProfile | ( | int const | nSize | ) |
Truncates the profile's CGeomLine (external CRS points)
Definition at line 341 of file profile.cpp.
Referenced by CSimulation::nTruncateProfileMultiLineDifferentCoasts(), and CSimulation::TruncateProfileAndAppendNew().
|
private |
Has this profile encountered a CShore problem?
Definition at line 46 of file profile.h.
Referenced by bCShoreProblem(), bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetCShoreProblem().
|
private |
Is this an end-of-coast profile?
Definition at line 43 of file profile.h.
Referenced by bEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetEndOfCoast().
|
private |
Has this profile hit another profile?
Definition at line 67 of file profile.h.
Referenced by bHitAnotherProfile(), bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetHitAnotherProfile().
|
private |
Has this profile hit a coastline?
Definition at line 55 of file profile.h.
Referenced by bHitCoast(), bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetHitCoast().
|
private |
Has this profile hit an intervention?
Definition at line 52 of file profile.h.
Referenced by bHitIntervention(), bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetHitIntervention().
|
private |
Has this profile hit land?
Definition at line 49 of file profile.h.
Referenced by bHitLand(), bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), CGeomProfile(), and SetHitLand().
|
private |
Is this an intervention profile?
Definition at line 70 of file profile.h.
Referenced by bIsIntervention(), and CGeomProfile().
|
private |
Is this a start-of-coast profile?
Definition at line 40 of file profile.h.
Referenced by bProfileOK(), bProfileOKIncTruncated(), bStartOfCoast(), CGeomProfile(), and SetStartOfCoast().
|
private |
Is this profile too short?
Definition at line 58 of file profile.h.
Referenced by bOKIncStartAndEndOfCoast(), bProfileOK(), bProfileOKIncTruncated(), bTooShort(), CGeomProfile(), and SetTooShort().
|
private |
Has this profile been truncated by hitting another profile from a different coast?
Definition at line 64 of file profile.h.
Referenced by bTruncatedDifferentCoast(), and SetTruncatedDifferentCoast().
|
private |
Has this profile been truncated by hitting another profile from the same coast?
Definition at line 61 of file profile.h.
Referenced by bOKIncStartAndEndOfCoast(), bProfileOK(), bTruncatedSameCoast(), CGeomProfile(), and SetTruncatedSameCoast().
|
private |
The wave orientation at the end of the profile.
Definition at line 85 of file profile.h.
Referenced by CGeomProfile(), dGetProfileDeepWaterWaveAngle(), and SetProfileDeepWaterWaveAngle().
|
private |
The wave height at the end of the profile.
Definition at line 82 of file profile.h.
Referenced by CGeomProfile(), dGetProfileDeepWaterWaveHeight(), and SetProfileDeepWaterWaveHeight().
|
private |
The wave period at the end of the profile.
Definition at line 88 of file profile.h.
Referenced by CGeomProfile(), dGetProfileDeepWaterWavePeriod(), and SetProfileDeepWaterWavePeriod().
|
private |
The coast from which this profile projects.
Definition at line 73 of file profile.h.
Referenced by CGeomProfile(), and nGetCoast().
|
private |
The coastline point at which this profile hits the coast (not necessarily coincident wih the profile start cell)
Definition at line 76 of file profile.h.
Referenced by CGeomProfile(), and nGetCoastPoint().
|
private |
The this-coast ID of the profile (note that a profile in a different coast may have the same ID as this profile)
Definition at line 79 of file profile.h.
Referenced by CGeomProfile(), and nGetProfileID().
|
private |
Pointer to the adjacent down-coast profile (may be an invalid profile)
Definition at line 100 of file profile.h.
Referenced by CGeomProfile(), pGetDownCoastAdjacentProfile(), and SetDownCoastAdjacentProfile().
|
private |
Pointer to the adjacent up-coast profile (may be an invalid profile)
Definition at line 97 of file profile.h.
Referenced by CGeomProfile(), pGetUpCoastAdjacentProfile(), and SetUpCoastAdjacentProfile().
|
private |
In the grid CRS, the integer coordinates of the cells 'under' this profile, point zero is the same as 'cell marked as coastline' in coast object.
Definition at line 103 of file profile.h.
Referenced by AppendCellInProfile(), AppendCellInProfile(), nGetCellGivenDepth(), nGetIndexOfCellInProfile(), nGetNumCellsInProfile(), pPtiGetCellInProfile(), pPtiGetLastCellInProfile(), pPtiVGetCellsInProfile(), and SetCellsInProfile().
|
private |
The seaward end point of the profile in grid CRS.
Definition at line 94 of file profile.h.
Referenced by CGeomProfile(), pPtiGetEndPoint(), and SetEndPoint().
|
private |
The on-coast start point of the profile in grid CRS.
Definition at line 91 of file profile.h.
Referenced by CGeomProfile(), and pPtiGetStartPoint().