A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ns3::Rectangle Class Reference

a 2d rectangle More...

#include <rectangle.h>

Public Types

enum  Side { RIGHT, LEFT, TOP, BOTTOM }
 

Public Member Functions

 Rectangle (double _xMin, double _xMax, double _yMin, double _yMax)
 
 Rectangle ()
 
Vector CalculateIntersection (const Vector &current, const Vector &speed) const
 
Side GetClosestSide (const Vector &position) const
 
bool IsInside (const Vector &position) const
 

Public Attributes

double xMax
 
double xMin
 
double yMax
 
double yMin
 

Detailed Description

a 2d rectangle

Definition at line 33 of file rectangle.h.

Constructor & Destructor Documentation

ns3::Rectangle::Rectangle ( double  _xMin,
double  _xMax,
double  _yMin,
double  _yMax 
)
Parameters
_xMinx coordinates of left boundary.
_xMaxx coordinates of right boundary.
_yMiny coordinates of bottom boundary.
_yMaxy coordinates of top boundary.

Create a rectangle.

Definition at line 30 of file rectangle.cc.

ns3::Rectangle::Rectangle ( )

Create a zero-sized rectangle located at coordinates (0.0,0.0)

Definition at line 39 of file rectangle.cc.

Member Function Documentation

Vector ns3::Rectangle::CalculateIntersection ( const Vector current,
const Vector speed 
) const
Parameters
currentthe current position
speedthe current speed
Returns
the intersection point between the rectangle and the current+speed vector.

This method assumes that the current position is located inside the rectangle and checks for this with an assert. This method compares only the x and y coordinates of the input position and speed. It ignores the z coordinate.

Definition at line 89 of file rectangle.cc.

References IsInside(), NS_ASSERT, ns3::Vector3D::x, and ns3::Vector3D::y.

Rectangle::Side ns3::Rectangle::GetClosestSide ( const Vector position) const
Parameters
positionthe position to test.
Returns
the side of the rectangle the input position is closest to.

This method compares only the x and y coordinates of the input position. It ignores the z coordinate.

Definition at line 56 of file rectangle.cc.

References ns3::Vector3D::x, and ns3::Vector3D::y.

bool ns3::Rectangle::IsInside ( const Vector position) const
Parameters
positionthe position to test.
Returns
true if the input position is located within the rectangle, false otherwise.

This method compares only the x and y coordinates of the input position. It ignores the z coordinate.

Definition at line 48 of file rectangle.cc.

References ns3::Vector3D::x, and ns3::Vector3D::y.

Referenced by CalculateIntersection(), and ns3::RandomWalk2dMobilityModel::DoSetPosition().


The documentation for this class was generated from the following files: