Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
M_RECTANGLE(3)	       FreeBSD Library Functions Manual		M_RECTANGLE(3)

NAME
     M_Rectangle -- Agar-Math rectangle	structure

SYNOPSIS
     #include <agar/math.h>

DESCRIPTION
     The M_Rectangle2 structure	describes a rectangle in R^2 in	terms of four
     points:

     typedef struct m_rectangle2 {
	     M_Vector2 a, b, c,	d;
     } M_Rectangle2;

     Similarly,	M_Rectangle3 describes a rectangle in R^3:

     typedef struct m_rectangle3 {
	     M_Vector3 a, b, c,	d;
     } M_Rectangle3;

INITIALIZATION
     M_Rectangle2 M_RectangleFromLines2(M_Line2	L1, M_Line2 L2)

     M_Rectangle3 M_RectangleFromLines3(M_Line2	L1, M_Line2 L2,	M_Line2	L3)

     M_Rectangle2 M_RectangleFromPts2(M_Vector2	a, M_Vector2 b)

     M_Rectangle3 M_RectangleFromPts3(M_Vector3	a, M_Vector3 b,	M_Vector3 c)

     M_Rectangle2 M_RectangleRead2(AG_DataSource *ds)

     M_Rectangle3 M_RectangleRead3(AG_DataSource *ds)

     void M_RectangleWrite2(AG_DataSource *ds, M_Rectangle2 *R)

     void M_RectangleWrite3(AG_DataSource *ds, M_Rectangle3 *R)

     M_Rectangle2 M_RECTANGLE2_INITIALIZER(M_Vector2 a,	M_Vector2 b, M_Vector2
     c)

     M_Rectangle3 M_RECTANGLE3_INITIALIZER(M_Vector3 a,	M_Vector3 b, M_Vector3
     c)

     The functions M_RectangleFromLines2() and M_RectangleFromLines3() return
     an	M_Rectangle2 or	M_Rectangle3 describing	a rectangle in terms of	two or
     three lines.

     M_RectangleFromPts2() and M_RectangleFromPts3() return a rectangle	in
     terms of two or three points.

     The M_RectangleRead[23]() and M_RectangleWrite[23]() functions read or
     write a rectangle structure from/to an AG_DataSource(3).

     The macros	M_RECTANGLE2_INITIALIZER() and M_RECTANGLE3_INITIALIZER() ex-
     pand to static initializers for M_Rectangle2 and M_Rectangle3, respec-
     tively.

COMPUTATIONS
     int M_PointInRectangle2(M_Rectangle2 R, M_Vector2 p)

     M_Real M_RectangleWidth2(M_Rectangle2 R)

     M_Real M_RectangleWidth2v(const M_Rectangle2 *R)

     M_Real M_RectangleHeight2(M_Rectangle2 R)

     M_Real M_RectangleHeight2v(const M_Rectangle2 *R)

     M_Real M_RectangleWidth3(M_Rectangle3 R)

     M_Real M_RectangleWidth3v(const M_Rectangle3 *R)

     M_Real M_RectangleHeight3(M_Rectangle3 R)

     M_Real M_RectangleHeight3v(const M_Rectangle3 *R)

     The M_PointInRectangle2() routine tests whether point p lies inside the
     rectangle R and returns 1 if it does, otherwise 0.

     The M_RectangleWidth[23]()	and M_RectangleHeight[23]() routines return
     the width and height of the rectangle.

SEE ALSO
     AG_DataSource(3), AG_Intro(3), M_Circle(3), M_Geometry(3),	M_Plane(3),
     M_Polygon(3), M_Rectangle(3), M_Sphere(3),	M_Triangle(3), M_Vector(3)

HISTORY
     The M_Rectangle structure first appeared in Agar 1.3.4.

FreeBSD	13.0			 July 17, 2009			  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | INITIALIZATION | COMPUTATIONS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=M_Rectangle&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help