
Public Member Functions | |
| Point () | |
| Point (const bool initialize) | |
| Point (const Tensor< 1, dim, Number > &) | |
| Point (const Number x) | |
| Point (const Number x, const Number y) | |
| Point (const Number x, const Number y, const Number z) | |
| Number | operator() (const unsigned int index) const |
| Number & | operator() (const unsigned int index) |
| Point< dim, Number > | operator+ (const Tensor< 1, dim, Number > &) const |
| Point< dim, Number > | operator- (const Tensor< 1, dim, Number > &) const |
| Point< dim, Number > | operator- () const |
| Point< dim, Number > | operator* (const Number) const |
| Number | operator* (const Tensor< 1, dim, Number > &) const |
| Point< dim, Number > | operator/ (const Number) const |
| Number | square () const |
| Number | distance (const Point< dim, Number > &p) const |
| template<class Archive > | |
| void | serialize (Archive &ar, const unsigned int version) |
Static Public Member Functions | |
| static Point< dim, Number > | unit_vector (const unsigned int i) |
Related Functions | |
(Note that these are not member functions.) | |
| template<int dim, typename Number > | |
| Point< dim, Number > | operator* (const Number factor, const Point< dim, Number > &p) |
| template<int dim> | |
| Point< dim, double > | operator* (const double factor, const Point< dim, double > &p) |
| template<int dim, typename Number > | |
| std::ostream & | operator<< (std::ostream &out, const Point< dim, Number > &p) |
| template<int dim, typename Number > | |
| std::istream & | operator>> (std::istream &in, Point< dim, Number > &p) |
The Point class provides for a point or vector in a space with arbitrary dimension dim.
It is the preferred object to be passed to functions which operate on points in spaces of a priori unknown dimension: rather than using functions like double f(double x) and double f(double x, double y), you use double f(Point<dim> &p).
Point also serves as a starting point for the implementation of the geometrical primitives like cells, edges, or faces.
Within deal.II, we use the Point class mainly to denote the points that make up geometric objects. As such, they have a small number of additional operations over general tensors of rank 1 for which we use the Tensor<1,dim> class. In particular, there is a distance() function to compute the Euclidian distance between two points in space.
The Point class is really only used where the coordinates of an object can be thought to possess the dimension of a length. For all other uses, such as the gradient of a scalar function (which is a tensor of rank 1, or vector, with as many elements as a point object, but with different physical units), we use the Tensor<1,dim> class.
Definition at line 51 of file point.h.
Standard constructor. Creates an origin.
Constructor. Initialize all entries to zero if initialize==true.
Convert a tensor to a point. Since no additional data is inside a point, this is ok.
Constructor for one dimensional points. This function is only implemented for dim==1 since the usage is considered unsafe for points with dim!=1.
Constructor for two dimensional points. This function is only implemented for dim==2 since the usage is considered unsafe for points with dim!=2.
| Point< dim, Number >::Point | ( | const Number | x, |
| const Number | y, | ||
| const Number | z | ||
| ) |
Constructor for three dimensional points. This function is only implemented for dim==3 since the usage is considered unsafe for points with dim!=3.
| static Point<dim,Number> Point< dim, Number >::unit_vector | ( | const unsigned int | i ) | [static] |
Return a unit vector in coordinate direction i.
| Number Point< dim, Number >::operator() | ( | const unsigned int | index ) | const |
Read access to the indexth coordinate.
| Number& Point< dim, Number >::operator() | ( | const unsigned int | index ) |
Read and write access to the indexth coordinate.
| Point<dim,Number> Point< dim, Number >::operator+ | ( | const Tensor< 1, dim, Number > & | ) | const |
Add two point vectors. If possible, use operator += instead since this does not need to copy a point at least once.
Reimplemented from Tensor< 1, dim, Number >.
| Point<dim,Number> Point< dim, Number >::operator- | ( | const Tensor< 1, dim, Number > & | ) | const |
Subtract two point vectors. If possible, use operator += instead since this does not need to copy a point at least once.
Reimplemented from Tensor< 1, dim, Number >.
The opposite vector.
Reimplemented from Tensor< 1, dim, Number >.
| Point<dim,Number> Point< dim, Number >::operator* | ( | const | Number ) | const |
Multiply by a factor. If possible, use operator *= instead since this does not need to copy a point at least once.
There is a commutative complement to this function also
| Number Point< dim, Number >::operator* | ( | const Tensor< 1, dim, Number > & | ) | const |
Returns the scalar product of two vectors.
Reimplemented from Tensor< 1, dim, Number >.
| Point<dim,Number> Point< dim, Number >::operator/ | ( | const | Number ) | const |
Divide by a factor. If possible, use operator /= instead since this does not need to copy a point at least once.
| Number Point< dim, Number >::square | ( | ) | const |
Returns the scalar product of this point vector with itself, i.e. the square, or the square of the norm.
| Number Point< dim, Number >::distance | ( | const Point< dim, Number > & | p ) | const |
Returns the Euclidian distance of this point to the point p, i.e. the l_2 norm of the difference between the vectors representing the two points.
| void Point< dim, Number >::serialize | ( | Archive & | ar, |
| const unsigned int | version | ||
| ) |
Read or write the data of this object to or from a stream for the purpose of serialization
Reimplemented from Tensor< 1, dim, Number >.
| Point< dim, Number > operator* | ( | const Number | factor, |
| const Point< dim, Number > & | p | ||
| ) | [related] |
Global operator scaling a point vector by a scalar.
Definition at line 403 of file point.h.
Referenced by TriaRawIterator< Accessor >::operator->().
| std::ostream & operator<< | ( | std::ostream & | out, |
| const Point< dim, Number > & | p | ||
| ) | [related] |
| std::istream & operator>> | ( | std::istream & | in, |
| Point< dim, Number > & | p | ||
| ) | [related] |
documentation generated on Fri Feb 3 2012 06:04:10 by
doxygen
1.7.2