Colada en punta
Las clases Point
y PointF
fueron creadas originalmente en IronSoftware.Drawing para igualar las funcionalidades disponibles en otras librerías de dibujo, como System.Drawing, SixLabors.ImageSharp, Maui.Graphics y SkiaSharp. Como resultado, IronSoftware.Drawing
permite el casting implícito para los objetos Point
y PointF
, permitiéndoles ser utilizados a través de librerías y manipulados por los usuarios en el programa.
El fragmento de código anterior muestra cómo se consigue el reparto implícito. En el primer fragmento, un objeto IronSoftware.Drawing.Point
se convierte en un objeto Point
de otra biblioteca, mientras que el segundo fragmento muestra la conversión inversa. Para realizar el casting implícito, basta con asignar el objeto IronSoftware.Drawing.Point
a la variable de la biblioteca deseada.
Es importante tener en cuenta que la fundición implícita no se aplica a todas las bibliotecas. Por ejemplo, convertir System.Drawing.PointF
en IronSoftware.Drawing.PointF
no es posible, ya que no está soportado por System.Drawing
. Sin embargo, es posible transferir IronSoftware.Drawing.Point
y PointF
a otras bibliotecas. Cuando se hace un casting desde un objeto IronSoftware.Drawing.Point
, el tipo de valor de las coordenadas cambia de System.Double
a System.Int32
, mientras que para PointF
, el valor System.Single
se mantiene después del casting. Ejemplo de otras librerías disponibles para casting son Microsoft.Maui.Graphics.Point
y SkiaSharp.SKPointI
.