PointH Structure 
Namespace: Accord.Imaging
The PointH type exposes the following members.
Name  Description  

PointH(Double, Double) 
Creates a new point.
 
PointH(Single, Single) 
Creates a new point.
 
PointH(Double, Double, Double) 
Creates a new point.
 
PointH(Single, Single, Single) 
Creates a new point.

Name  Description  

IsAtInfinity 
Gets whether this point is at infinity (w = 0).
 
IsEmpty 
Gets whether this point is at the origin.
 
IsNormalized 
Gets whether this point is normalized (w = 1).
 
W 
The inverse scaling factor for X and Y.
 
X 
The first coordinate.
 
Y 
The second coordinate.

Name  Description  

Add 
Add the values of two points.
 
Ceiling 
Converts to a Integer point by computing the ceiling of the point coordinates.
 
Equals 
Compares two objects for equality.
(Overrides ValueTypeEquals(Object).)  
GetHashCode 
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.)  
GetType  Gets the Type of the current instance. (Inherited from Object.)  
Multiply 
Multiplies the point by a scalar.
 
Normalize 
Normalizes the point to have unit scale.
 
Round 
Converts to a Integer point by rounding the point coordinates.
 
Subtract 
Subtracts the values of two points.
 
ToArray 
Converts the point to a array representation.
 
ToString  Returns the fully qualified type name of this instance. (Inherited from ValueType.)  
Transform 
Transforms a point using a projection matrix.
 
Truncate 
Converts to a Integer point by truncating the point coordinates.

Name  Description  

Addition 
Addition.
 
Equality 
Equality.
 
(PointH to PointF) 
PointF Conversion.
 
Inequality 
Inequality
 
Multiply(Single, PointH) 
Multiplication by scalar.
 
Multiply(PointH, Single) 
Multiplication by scalar.
 
Subtraction 
Subtraction.

Name  Description  

HasMethod 
Checks whether an object implements a method with the given name.
(Defined by ExtensionMethods.)  
IsEqual 
Compares two objects for equality, performing an elementwise
comparison if the elements are vectors or matrices.
(Defined by Matrix.)  
To(Type)  Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.)  
ToT  Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) 
In mathematics, homogeneous coordinates are a system of coordinates used in projective geometry much as Cartesian coordinates are used in Euclidean geometry.
They have the advantage that the coordinates of a point, even those at infinity, can be represented using finite coordinates. Often formulas involving homogeneous coordinates are simpler and more symmetric than their Cartesian counterparts.
Homogeneous coordinates have a range of applications, including computer graphics, where they allow affine transformations and, in general, projective transformations to be easily represented by a matrix.
References: