Enhanced C#
Language of your choice: library documentation

Contains math code and data types for processing geometry (points, lines, polygons, etc.). Basic geometry stuff is in Loyc.Essentials.dll, while more advanced algorithms are found in Loyc.Utilities.dll. More...
Classes  
class  BoundingBox< T > 
Holds a mutable 2D bounding rectangle. More...  
class  BoundingBoxExt 
Extension methods for BoundingBox{T}. More...  
class  BoundingBoxMath 
Math and extension methods for BoundingBox{T}. More...  
interface  INewPoint3< Point, T > 
This interface exists to work around a limitation of C#; see IPoint{T} and IPoint3{T}. More...  
interface  INewPoint< Point, T > 
This interface exists to work around a limitation of C#; see IPoint{T}. More...  
interface  INewRectangle3< Rect, T > 
This interface exists to work around a limitation of C#; see IRectangle3{T}. More...  
interface  INewRectangle< Rect, T > 
This interface exists to work around a limitation of C#; see IRectangle{T}. More...  
interface  IPoint3< T > 
A mutable 3D point with X, Y, and Z coordinates. More...  
interface  IPoint3Base< T > 
This interface exists to work around a limitation of C#; use IPoint{T} instead. More...  
interface  IPoint3Reader< T > 
Interface for reading the coordinates of a 3D point. More...  
interface  IPoint< T > 
A mutable 2D point with X and Y coordinates. More...  
interface  IPointBase< T > 
This interface exists to work around a limitation of C#; use IPoint{T} instead. More...  
interface  IPointReader< T > 
Interface for reading the coordinates of a 2D point. More...  
interface  IRectangle3< T > 
Represents a mutable 3D rectangle. More...  
interface  IRectangle3Base< T > 
Represents a mutable 3D rectangular prism. More...  
interface  IRectangle3Reader< T > 
Represents a readonly 3D rectangular prism. More...  
interface  IRectangle< T > 
Represents a mutable 2D rectangle. More...  
interface  IRectangleBase< T > 
Represents a mutable 2D rectangle. More...  
interface  IRectangleReader< T > 
Represents a readonly 2D rectangle. More...  
interface  ISize3Reader< T > 
Interface for reading the size of a 3D object. More...  
interface  ISizeReader< T > 
Interface for reading the size of a 2D object. More...  
class  LineMath 
Contains algorithms that operate on lines. More...  
struct  LineSegment3< T > 
Holds a 3D line segment. More...  
struct  LineSegment< T > 
Holds a 2D line segment. More...  
struct  Point3< T > 
A 3D point (XYZ triplet) structure. More...  
struct  Point< T > 
A 2D point (XY pair) structure. More...  
class  PointExt 
Contains methods for manipulating points in generic code. More...  
class  PointMath 
Math and extension methods for Point{T}. More...  
class  PolygonMath 
Contains useful basic polygon algorithms: hit testing, area calculation, orientation detection. More...  
class  Rectangle3Ext 
Contains methods to manipulate rectangles. More...  
class  RectangleExt 
Contains methods to manipulate rectangles. More...  
struct  Vector3< T > 
Represents a threedimensional vector, i.e. a magnitude and direction or the difference between two points, stored as X, Y and Z components. More...  
struct  Vector3Math< T > 
Implementation of IAdditionGroup{T} for Vector{T}. More...  
struct  Vector< T > 
Represents a twodimensional vector, i.e. a magnitude and direction or the difference between two points, stored as X and Y components. More...  
class  VectorExt 
Extension methods for vectors. TODO: reconsider distribution of methods between this class and PointMath in Loyc.Utilities. More...  
struct  VectorMath< T > 
An implementation of IAdditionGroup{T} for Vector{T}. More...  
Enumerations  
enum  LineType { Segment, Ray, Infinite } 
Indicates how a LineSegment{T} should be treated in a math algorithm: as a segment (the default), as a ray originating at A (extending B infinitely), or as an line that is infinite in both directions. More...  
Contains math code and data types for processing geometry (points, lines, polygons, etc.). Basic geometry stuff is in Loyc.Essentials.dll, while more advanced algorithms are found in Loyc.Utilities.dll.
Indicates how a LineSegment{T} should be treated in a math algorithm: as a segment (the default), as a ray originating at A (extending B infinitely), or as an line that is infinite in both directions.