C#画百分比水平球图形

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Drawing.Drawing2D;

namespace ReNamefolder
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private int percentNum = 0;
private void Form1_Paint(object sender, PaintEventArgs e)
{
PaintPercent(e.Graphics, percentNum);
}

public void PaintPercent(Graphics g, double valueY)
{
double temlX = doSomething(50, valueY); //开方获取x方向的距离
double myRadians = Math.Atan2(valueY, temlX);
// 把弧度单位转化为角度单位
double myDegrees = myRadians * 180 / Math.PI;

double starX = temlX;
double starY = -valueY;

double rotationNum = 180;
rotationNum += myDegrees * 2;

double startAngle = -myDegrees;

SolidBrush redBrush123 = new SolidBrush(Color.Beige);
g.FillEllipse(redBrush123, new Rectangle(0, 0, 100, 100));

GraphicsPath path = new GraphicsPath();

path.AddArc(0, 0, 100, 100, (float)startAngle, (float)rotationNum);
SolidBrush redBrush = new SolidBrush(Color.Red);

g.FillPath(redBrush, path);

}

private double doSomething(double rV, double hV)
{
return Math.Sqrt(Math.Pow(rV, 2) - Math.Pow(hV, 2));

}

private void trackBar1_Scroll(object sender, EventArgs e)
{
textBox1.Text = trackBar1.Value.ToString();

percentNum = trackBar1.Value - 50;

this.Refresh();
}
}
}

时间: 2024-10-16 00:21:34

C#画百分比水平球图形的相关文章

canvas画波浪进度球

波浪进度球是一种非常常见的进度展示方式,常用于加载页. 首先来个例子 再来个过程 下面我们来学习一下如何画一个波浪进度球 首先我们分析一下进度球的组成部分有:一个圆,波纹,波纹的填充色,百分比文字 我们可以根据这几个组成部分来制作动画. 画一个圆 var drawCircle = function(){ ctx.beginPath(); ctx.strokeStyle = '#1080d0'; ctx.arc(r, r, cR+1, 0, 2 * Math.PI); ctx.stroke();

WPF画图の利用Path画扇形(仅图形)

一.画弧 Path继承自Sharp,以System.Windows.Shapes.Shape为基类,它是一个具有各种方法的控件. 我们先看一段xaml代码: <Path Stroke="Red"> <Path.Data> <PathGeometry> <PathFigure StartPoint="100,0"> <ArcSegment Point="200,100" Size="1

iOS:quartz2D绘图(画一些简单的图形,如直线、三角形、圆、矩形、文字等)

前一篇几乎已经详细介绍了Quartz2D的所有知识,这一篇以及后面就不废话了,主要是用具体的实例来演示绘图效果. 这里我们先来绘制一些简单的图形(如直线.三角形.圆.矩形.文字.图像),它有两种方式可以绘制,一种是通过上下文绘制,另一种是通过路径绘制.下面对绘制三角形做了一个两种方式绘制的演示. 绘制基本的图形,需要在操作的视图类中重写- (void)drawRect:(CGRect)rect方法,并在在该方法中绘制图形.绘制图像既可以重写该方法绘制,也可以不用重写该方法,它有封装好的方法.这里

Quartz2d 画饼状图 图形上下文栈 矩阵操作 裁剪圆角图片

画饼状图 - (void)drawRect:(CGRect)rect { // Drawing code // 需求:根据sections的数据,绘制多个扇形 // 1.获取上下文(Layer Graphics Context) CGContextRef ctx = UIGraphicsGetCurrentContext(); // 2.根据sections的个数,计算扇形的起始和结束位置来画扇形 NSInteger count = self.sections.count; // 如果没有数据,

Qt Creator中如何在QLabel上画矩形框并且保存画完后的图形

问题描述: 在QLabel上显示一张图片,然后在该图片上画一个矩形框  最后保存一张带矩形框的图片 第一步: 在图片上画矩形框   网上教程很多  代码如下: 头文件 #ifndef MYQLABEL #define MYQLABEL #include <QLabel> #include <QMouseEvent> #include <QString> class MyQLabel : public QLabel{ // Q_OBJECT public: // expl

wpf 在不同DPI下如何在DrawingVisual中画出清晰的图形

环境Win10 VS2017 .Net Framework4.7.1 本文仅讨论在DrawingVisual中进行的画图. WPF单位,系统DPI,显示器DPI三者的定义及关系 WPF单位:一种与设备无关的单位,以1/96逻辑英寸为一个单位,也就是说如果将一个对象的长度设为96,那么在任何设备上WPF都会试图将其显示为1逻辑英寸长. 系统DPI:将多少个显示器的像素点定义为1逻辑英寸,默认是96个点 在win10中,图中所设置的 100%即为96DPI; 125%即为120DPI; 150%即为

css画百分比圆环

html: 1 <div class="circle"> 2 <div class="percent-circle percent-circle-left"> 3 <div class="left-content"></div> 4 </div> 5 <div class="percent-circle percent-circle-right"> 6 &

关于如何使用VC6.0+Graphics图形库画出二维图形全教程

首先是安装VC6.0,网上各种版本很多,参差不齐,在这里给出一个非常好用的VC6.0(提取码:1bn9) 不支持win10,8,如果非得使用,请用虚拟机或者重装win7系统 按照提示安装就好了,不行就多装几遍(c盘不行就装载d盘),没什么需要特殊配置的 然后就是关于Graphics图形库了,这个更简单,也是有脚本软件,可以直接安装使用,记得安装完VC6.0之后重启一下 可执行软件是:EasyX(提取码:9v9w) 安装完成直接打开后会有提示,可以点击自动添加Graphics图形库,如果不行就手动

用CSS画出好玩的图形

1.上三角 #triangle-up { width: 0; height: 0; border-left: 50px solid transparent; border-right: 50px solid transparent; border-bottom: 100px solid red; } 2.平行四边形 #parallelogram { width: 150px; height: 100px; margin-left:20px; -webkit-transform: skew(20d