本文整理汇总了C#中OxyPlot.OxyColor.IsInvisible方法的典型用法代码示例。如果您正苦于以下问题:C# OxyColor.IsInvisible方法的具体用法?C# OxyColor.IsInvisible怎么用?C# OxyColor.IsInvisible使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OxyPlot.OxyColor
的用法示例。
在下文中一共展示了OxyColor.IsInvisible方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Create
/// <summary>
/// Creates the specified pen.
/// </summary>
/// <param name="color">The color.</param>
/// <param name="thickness">The thickness.</param>
/// <param name="lineStyle">The line style.</param>
/// <param name="lineJoin">The line join.</param>
/// <returns>A pen.</returns>
public static OxyPen Create(
OxyColor color,
double thickness,
LineStyle lineStyle = LineStyle.Solid,
LineJoin lineJoin = LineJoin.Miter)
{
if (color.IsInvisible() || lineStyle == LineStyle.None || Math.Abs(thickness) < double.Epsilon)
{
return null;
}
return new OxyPen(color, thickness, lineStyle, lineJoin);
}
示例2: DrawRectangle
/// <summary>
/// Draws the rectangle.
/// </summary>
/// <param name="rect">The rectangle.</param>
/// <param name="fill">The fill color.</param>
/// <param name="stroke">The stroke color.</param>
/// <param name="thickness">The stroke thickness.</param>
public override void DrawRectangle(OxyRect rect, OxyColor fill, OxyColor stroke, double thickness)
{
if (fill.IsVisible())
{
this.g.FillRectangle(
fill.ToBrush(), (float)rect.Left, (float)rect.Top, (float)rect.Width, (float)rect.Height);
}
if (stroke.IsInvisible() || thickness <= 0)
{
return;
}
using (var pen = this.CreatePen(stroke, thickness))
{
this.g.DrawRectangle(pen, (float)rect.Left, (float)rect.Top, (float)rect.Width, (float)rect.Height);
}
}
示例3: DrawLine
/// <summary>
/// Draws the polyline from the specified points.
/// </summary>
/// <param name="points">The points.</param>
/// <param name="stroke">The stroke color.</param>
/// <param name="thickness">The stroke thickness.</param>
/// <param name="dashArray">The dash array.</param>
/// <param name="lineJoin">The line join type.</param>
/// <param name="aliased">if set to <c>true</c> the shape will be aliased.</param>
public override void DrawLine(
IList<ScreenPoint> points,
OxyColor stroke,
double thickness,
double[] dashArray,
OxyPlot.LineJoin lineJoin,
bool aliased)
{
if (stroke.IsInvisible() || thickness <= 0 || points.Count < 2)
{
return;
}
this.g.SmoothingMode = aliased ? SmoothingMode.None : SmoothingMode.HighQuality;
using (var pen = this.CreatePen(stroke, thickness, dashArray, lineJoin))
{
this.g.DrawLines(pen, this.ToPoints(points));
}
}
示例4: DrawPolygon
/// <summary>
/// Draws the polygon from the specified points. The polygon can have stroke and/or fill.
/// </summary>
/// <param name="points">The points.</param>
/// <param name="fill">The fill color.</param>
/// <param name="stroke">The stroke color.</param>
/// <param name="thickness">The stroke thickness.</param>
/// <param name="dashArray">The dash array.</param>
/// <param name="lineJoin">The line join type.</param>
/// <param name="aliased">if set to <c>true</c> the shape will be aliased.</param>
public override void DrawPolygon(
IList<ScreenPoint> points,
OxyColor fill,
OxyColor stroke,
double thickness,
double[] dashArray,
OxyPlot.LineJoin lineJoin,
bool aliased)
{
if (points.Count < 2)
{
return;
}
this.g.SmoothingMode = aliased ? SmoothingMode.None : SmoothingMode.HighQuality;
var pts = this.ToPoints(points);
if (fill.IsVisible())
{
this.g.FillPolygon(fill.ToBrush(), pts);
}
if (stroke.IsInvisible() || thickness <= 0)
{
return;
}
using (var pen = this.CreatePen(stroke, thickness))
{
if (dashArray != null)
{
pen.DashPattern = this.ToFloatArray(dashArray);
}
switch (lineJoin)
{
case OxyPlot.LineJoin.Round:
pen.LineJoin = System.Drawing.Drawing2D.LineJoin.Round;
break;
case OxyPlot.LineJoin.Bevel:
pen.LineJoin = System.Drawing.Drawing2D.LineJoin.Bevel;
break;
// The default LineJoin is Miter
}
this.g.DrawPolygon(pen, pts);
}
}
示例5: CreateStyle
/// <summary>
/// Creates a style.
/// </summary>
/// <param name="fill">The fill color.</param>
/// <param name="stroke">The stroke color.</param>
/// <param name="thickness">The stroke thickness (in user units).</param>
/// <param name="dashArray">The line dash array.</param>
/// <param name="lineJoin">The line join type.</param>
/// <returns>A style string.</returns>
public string CreateStyle(
OxyColor fill,
OxyColor stroke,
double thickness,
double[] dashArray = null,
OxyPenLineJoin lineJoin = OxyPenLineJoin.Miter)
{
// http://oreilly.com/catalog/svgess/chapter/ch03.html
var style = new StringBuilder();
if (fill.IsInvisible())
{
style.AppendFormat("fill:none;");
}
else
{
style.AppendFormat("fill:{0};", this.ColorToString(fill));
if (fill.A != 0xFF)
{
style.AppendFormat(CultureInfo.InvariantCulture, "fill-opacity:{0};", fill.A / 255.0);
}
}
if (stroke.IsInvisible())
{
style.AppendFormat("stroke:none;");
}
else
{
string formatString = "stroke:{0};stroke-width:{1:" + this.NumberFormat + "}";
style.AppendFormat(CultureInfo.InvariantCulture, formatString, this.ColorToString(stroke), thickness);
switch (lineJoin)
{
case OxyPenLineJoin.Round:
style.AppendFormat(";stroke-linejoin:round");
break;
case OxyPenLineJoin.Bevel:
style.AppendFormat(";stroke-linejoin:bevel");
break;
}
if (stroke.A != 0xFF)
{
style.AppendFormat(CultureInfo.InvariantCulture, ";stroke-opacity:{0}", stroke.A / 255.0);
}
if (dashArray != null && dashArray.Length > 0)
{
style.Append(";stroke-dasharray:");
for (int i = 0; i < dashArray.Length; i++)
{
style.AppendFormat(
CultureInfo.InvariantCulture, "{0}{1}", i > 0 ? "," : string.Empty, dashArray[i]);
}
}
}
return style.ToString();
}