Programming Reference for VirtualLab Fusion  2025.1
Loading...
Searching...
No Matches
Region2D Class Referenceabstract

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class that describes a 2D region. More...

Inheritance diagram for Region2D:
IRegion1D2D IDocument ComposedRegion2D ElementaryRegion2D SampledRegion2D EllipticRegion RectangularRegion SimplePolygon

Public Member Functions

void CalculateAxisAlignedBoundingBox ()
 Method for (re)calculating the axis aligned bounding box.
 
override object Clone ()
 Clones the current object.
 
override bool Equals (object obj, EqualityIntent equalityIntent)
 Equality operation.
 
InsideOutside GetInOutRelation (VectorD point, ExtrapolationInfo extrapolation2use=null)
 Method which checks whether or not a point lies inside or outside the 2D region or on its boundary.
 
override FormDocument GetNewDocumentWindow (Form formMain, string fileName)
 Gets a new document window containing this document.
Parameters
formMainReference to the main form (= MDI parent). Can be null if this form will not be shown (e.g. if it is generated just to get the view settings.
fileNameFile name from which the document was opened for inserting into window caption. If this string is empty, the default document name is used.
Returns
A FormDocument containing this document.

 
bool IsInside (double pointX, double pointY)
 Method which checks whether or not a point is inside the 2D region.
 
bool IsInside (VectorD point)
 Method which checks whether or not a point is inside the 2D region.
 
void MayBeNonzeroOutside (out bool maybeNonZeroLeft, out bool maybeNonZeroRight, out bool maybeNonZeroBottom, out bool maybeNonZeroTop)
 Method which determines whether or not the region can provide "inside" state outside of its boundary interval. This is not the case for extrapolation mode 'ConstantZero', of course.
 
 Region2D (bool boundariesAreInside, PhysicalProperty propertyOfCoordinatesX=PhysicalProperty.Length, PhysicalProperty propertyOfCoordinatesY=PhysicalProperty.Length)
 Constructor which gets the _boundariesAreInside flag. To be called from derived classes constructors.
 
 Region2D (Region2D region2bCopied)
 Copy constructor.
 
 Region2D (SerializationInfo info, StreamingContext context)
 Deserialization constructor. See the ISerializable interface for more details.
 
virtual void UpdatePropertyOfCoordinates ()
 Method for handling update after change of the physical property of the coordinate.
 

Static Public Member Functions

static Region2D InvertRegion (Region2D region2Invert)
 Creates a new region with inverted in / out regions compared to this.
 
static Region2D Load (string fileName)
 Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings.
 
static bool operator!= (Region2D o1, Region2D o2)
 Unequals operator.
 
static bool operator== (Region2D o1, Region2D o2)
 Equals operator.
 

Static Public Attributes

const string DefaultDocumentName
 The default document name (= type description) for an Order Collection.
 
static readonly string FileDialogFilterString
 The filter string used in "Open File" dialogs.
 
const string FileExtensionString
 The file extension for an Order Collection.
 

Properties

RectanglePhysical AxisAlignedBoundingBox [get]
 Gets the bounding box for the 2D region. Its sides are parallel to the x- and y-axis resp.
 
bool BoundariesAreInside [get, set]
 Gets or sets whether or not the boundaries of the region belong to the inner region.
 
string CommentOfCoordinates_X [get, set]
 Gets and sets the comment for the x-coordinates.
 
string CommentOfCoordinates_Y [get, set]
 Gets and sets the comment for the y-coordinates.
 
ExtrapolationInfo ExtrapolationHandling [get, set]
 The extrapolation mode for this region. See ITN.064 for more information on the mode 'border continuation'.
 
bool IsOneD [get]
 Gets whether this IRegion1D2D is 1D or 2D.
 
string Name [get, set]
 The name which can be given to the region by the user.
 
PhysicalProperty PropertyOfCoordinatesX [get, set]
 Physical property of the x-coordinates of the region.
 
PhysicalProperty PropertyOfCoordinatesY [get, set]
 Physical property of the y-coordinates of the region.
 
Region2DType RegionType [get]
 Gets the type of the region.
 
SamplingParameters SamplingForUsageWithComplexFields [get, set]
 Sampling parameters which will be used for a coordinate rescaling in case of using the region with a complex field.
 
- Properties inherited from IRegion1D2D
- Properties inherited from IDocument
VirtualLabSession Session [get, set]
 every documents need to be handled in a session ==> default is the VirtualLab Mainsession
 
NodeVLExplorer TreeStructure [get]
 every document should have a node (maybe with subnodes) in the VirtualLab Explorer
 
DocumentType TypeOfDocument [get]
 Gets an enum entry specifying the type of the document.
 

Detailed Description

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class that describes a 2D region.

Constructor & Destructor Documentation

◆ Region2D() [1/3]

Region2D ( bool  boundariesAreInside,
PhysicalProperty  propertyOfCoordinatesX = PhysicalProperty::Length,
PhysicalProperty  propertyOfCoordinatesY = PhysicalProperty::Length 
)

Constructor which gets the _boundariesAreInside flag. To be called from derived classes constructors.

Parameters
boundariesAreInsideFlag which says whether or not the boundary is part of the inner region or not.
propertyOfCoordinatesXPhysical property of the x-coordinate.
propertyOfCoordinatesYPhysical property of the y-coordinate.

◆ Region2D() [2/3]

Region2D ( Region2D  region2bCopied)

Copy constructor.

Parameters
region2bCopiedThe region to be copied.

◆ Region2D() [3/3]

Region2D ( SerializationInfo  info,
StreamingContext  context 
)

Deserialization constructor. See the ISerializable interface for more details.

Parameters
infoSerializationInfo
contextStreamingContext

Member Function Documentation

◆ Clone()

override object Clone ( )

Clones the current object.

Returns
Deep copy of this object.

◆ Equals()

override bool Equals ( object  obj,
EqualityIntent  equalityIntent 
)

Equality operation.

Parameters
obj
equalityIntentDefines what kind of equality you want to check when comparing two objects, for example all values or physical equality.
Returns

◆ GetInOutRelation()

InsideOutside GetInOutRelation ( VectorD  point,
ExtrapolationInfo  extrapolation2use = null 
)
abstract

Method which checks whether or not a point lies inside or outside the 2D region or on its boundary.

Parameters
pointThe point to be checked whether it lies inside.
extrapolation2useExtrapolation info actually to be used.
Returns
Information where the point lies in relation to the region.

◆ InvertRegion()

static Region2D InvertRegion ( Region2D  region2Invert)
static

Creates a new region with inverted in / out regions compared to this.

Parameters
region2InvertRegion to be inverted.
Returns
A new region with inverted in / out regions compared to this.

◆ IsInside() [1/2]

bool IsInside ( double  pointX,
double  pointY 
)

Method which checks whether or not a point is inside the 2D region.

Parameters
pointXThe x-coordinate of the point to be checked whether it lies inside.
pointYThe y-coordinate of the point to be checked whether it lies inside.
Returns
true if point lies inside the 2D region.

◆ IsInside() [2/2]

bool IsInside ( VectorD  point)

Method which checks whether or not a point is inside the 2D region.

Parameters
pointThe point to be checked whether it lies inside.
Returns
true if point lies inside the 2D region.

◆ Load()

static Region2D Load ( string  fileName)
static

Loads the specified file name. Works independently from whether the document has been saved without view settings (as prior to VL 6.0) or with view settings.

Parameters
fileNameName of the file.
Returns
The specified document.

◆ MayBeNonzeroOutside()

void MayBeNonzeroOutside ( out bool  maybeNonZeroLeft,
out bool  maybeNonZeroRight,
out bool  maybeNonZeroBottom,
out bool  maybeNonZeroTop 
)
abstract

Method which determines whether or not the region can provide "inside" state outside of its boundary interval. This is not the case for extrapolation mode 'ConstantZero', of course.

Parameters
maybeNonZeroLeftTrue, if there may be nonzero values left of the bounding box.
maybeNonZeroRightTrue, if there may be nonzero values right of the bounding box.
maybeNonZeroBottomTrue, if there may be nonzero values below the bottom of the bounding box.
maybeNonZeroTopTrue, if there may be nonzero values above the top of the bounding box.

◆ operator!=()

static bool operator!= ( Region2D  o1,
Region2D  o2 
)
static

Unequals operator.

Parameters
o1
o2
Returns

◆ operator==()

static bool operator== ( Region2D  o1,
Region2D  o2 
)
static

Equals operator.

Parameters
o1
o2
Returns