当前位置: 首页 > news >正文

用什么软件做网站最简单设计网站模板

用什么软件做网站最简单,设计网站模板,淘宝开店,汽车网站的建设方向阻抗圆图,或者叫史密斯图,是无线电设计方面用的; 基本的阻抗圆图如下, 下面尝试用C#能不能画一下; 先在网上找一个画坐标的C#类,它的效果如下; 自己再增加一个函数,可以绘制中心在…

阻抗圆图,或者叫史密斯图,是无线电设计方面用的;

基本的阻抗圆图如下,

下面尝试用C#能不能画一下;

先在网上找一个画坐标的C#类,它的效果如下;

自己再增加一个函数,可以绘制中心在画布中心的坐标系;

看一下基本的阻抗圆图,它有4个圆;先把4个圆画一下如下,

那几条曲线不知道怎么画,不知道是什么曲线,用什么函数描述; 有时间继续;

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Drawing;
using System.Drawing.Drawing2D;namespace commengineer
{public static class XYlinesFactory{#region   画出X轴与Y轴/// <summary>  /// 在任意的panel里画一个坐标,坐标所在的四边形距离panel边50像素  /// </summary>  /// <param name="pan"></param>  public static void DrawXY(Panel pan){Graphics g = pan.CreateGraphics();//整体内缩move像素  float move = 50f;float newX = pan.Width - move;float newY = pan.Height - move;//绘制X轴,  PointF px1 = new PointF(move, newY);PointF px2 = new PointF(newX, newY);g.DrawLine(new Pen(Brushes.Black, 2), px1, px2);//绘制Y轴  PointF py1 = new PointF(move, move);PointF py2 = new PointF(move, newY);g.DrawLine(new Pen(Brushes.Black, 2), py1, py2);}#endregionpublic static void DrawCXY(Panel pan){Graphics g = pan.CreateGraphics();//整体内缩move像素  float move = 50f;float newX = pan.Width - move;float newY = pan.Height - move;float x1 = move / 2;float x2 = move / 2 + newX;float y1 = newY / 2 + move/2;PointF p1 = new PointF(x1, y1);PointF p2 = new PointF(x2, y1);PointF p3 = new PointF(move/2 + newX/2, move/2);PointF p4 = new PointF(move / 2 + newX / 2, pan.Height - move/2);g.DrawLine(new Pen(Brushes.Black, 1), p1, p2);g.DrawLine(new Pen(Brushes.Black, 1), p3, p4);}public static void DrawSmithCircle(Panel pan){Graphics g = pan.CreateGraphics();float bound = 50f;float centerX = pan.Width / 2;float centery = pan.Height / 2;float scr1 = ((pan.Width - bound) /2) * 0.8f;float scr2 = (scr1 + scr1 / 2) / 2;float scr3 = scr1 / 2;float scr4 = scr3 / 2;//float r1 = ((pan.Width - 50f) / 2) * 0.8f;//GraphicsPath circlePath = new GraphicsPath();//circlePath.AddEllipse(pan.Width/2, pan.Height/2, r1, r1);// 设置画笔和填充色//Brush brush = Brushes.Blue;// 绘制圆g.DrawEllipse(new Pen(Brushes.Black, 1), centerX - scr1, centery - scr1, scr1*2, scr1*2);g.DrawEllipse(new Pen(Brushes.Black, 1), centerX - scr1/2, centery - scr2, scr2 * 2, scr2 * 2);g.DrawEllipse(new Pen(Brushes.Black, 1), centerX, centery - scr3, scr3 * 2, scr3 * 2);g.DrawEllipse(new Pen(Brushes.Black, 1), centerX+scr3, centery - scr4, scr4 * 2, scr4 * 2);//g.FillPath(brush, circlePath);}/// <summary>  /// 画出Y轴上的分值线,从零开始  /// </summary>  /// <param name="pan"></param>  /// <param name="maxY"></param>  /// <param name="len"></param>  #region   画出Y轴上的分值线,从零开始public static void DrawYLine(Panel pan, float maxY, int len){float move = 50f;float LenX = pan.Width - 2 * move;float LenY = pan.Height - 2 * move;Graphics g = pan.CreateGraphics();for (int i = 0; i <= len; i++)    //len等份Y轴  {PointF px1 = new PointF(move, LenY * i / len + move);PointF px2 = new PointF(move + 4, LenY * i / len + move);string sx = (maxY - maxY * i / len).ToString();g.DrawLine(new Pen(Brushes.Black, 2), px1, px2);StringFormat drawFormat = new StringFormat();drawFormat.Alignment = StringAlignment.Far;drawFormat.LineAlignment = StringAlignment.Center;g.DrawString(sx, new Font("宋体", 8f), Brushes.Black, new PointF(move / 1.2f, LenY * i / len + move * 1.1f), drawFormat);}Pen pen = new Pen(Color.Black, 1);g.DrawString("Y轴", new Font("宋体 ", 10f), Brushes.Black, new PointF(move / 3, move / 2f));}#endregion/// <summary>  /// 画出Y轴上的分值线,从任意值开始  /// </summary>  /// <param name="pan"></param>  /// <param name="minY"></param>  /// <param name="maxY"></param>  /// <param name="len"></param>  #region   画出Y轴上的分值线,从任意值开始public static void DrawYLine(Panel pan, float minY, float maxY, int len){float move = 50f;float LenX = pan.Width - 2 * move;float LenY = pan.Height - 2 * move;Graphics g = pan.CreateGraphics();for (int i = 0; i <= len; i++)    //len等份Y轴  {PointF px1 = new PointF(move, LenY * i / len + move);PointF px2 = new PointF(move + 4, LenY * i / len + move);string sx = (maxY - (maxY - minY) * i / len).ToString();g.DrawLine(new Pen(Brushes.Black, 2), px1, px2);StringFormat drawFormat = new StringFormat();drawFormat.Alignment = StringAlignment.Far;drawFormat.LineAlignment = StringAlignment.Center;g.DrawString(sx, new Font("宋体", 8f), Brushes.Black, new PointF(move / 1.2f, LenY * i / len + move * 1.1f), drawFormat);}Pen pen = new Pen(Color.Black, 1);g.DrawString("Y轴", new Font("宋体 ", 10f), Brushes.Black, new PointF(move / 3, move / 2f));}#endregion/// <summary>  /// 画出X轴上的分值线,从零开始  /// </summary>  /// <param name="pan"></param>  /// <param name="maxX"></param>  /// <param name="len"></param>  #region   画出X轴上的分值线,从零开始public static void DrawXLine(Panel pan, float maxX, int len){float move = 50f;float LenX = pan.Width - 2 * move;float LenY = pan.Height - 2 * move;Graphics g = pan.CreateGraphics();for (int i = 1; i <= len; i++){PointF py1 = new PointF(LenX * i / len + move, pan.Height - move - 4);PointF py2 = new PointF(LenX * i / len + move, pan.Height - move);string sy = (maxX * i / len).ToString();g.DrawLine(new Pen(Brushes.Black, 2), py1, py2);g.DrawString(sy, new Font("宋体", 8f), Brushes.Black, new PointF(LenX * i / len + move, pan.Height - move / 1.1f));}Pen pen = new Pen(Color.Black, 1);g.DrawString("X轴", new Font("宋体 ", 10f), Brushes.Black, new PointF(pan.Width - move / 1.5f, pan.Height - move / 1.5f));}#endregion#region   画出X轴上的分值线,从任意值开始/// <summary>  /// 画出X轴上的分值线,从任意值开始  /// </summary>  /// <param name="pan"></param>  /// <param name="minX"></param>  /// <param name="maxX"></param>  /// <param name="len"></param>  public static void DrawXLine(Panel pan, float minX, float maxX, int len){float move = 50f;float LenX = pan.Width - 2 * move;float LenY = pan.Height - 2 * move;Graphics g = pan.CreateGraphics();for (int i = 0; i <= len; i++){PointF py1 = new PointF(LenX * i / len + move, pan.Height - move - 4);PointF py2 = new PointF(LenX * i / len + move, pan.Height - move);string sy = ((maxX - minX) * i / len + minX).ToString();g.DrawLine(new Pen(Brushes.Black, 2), py1, py2);g.DrawString(sy, new Font("宋体", 8f), Brushes.Black, new PointF(LenX * i / len + move, pan.Height - move / 1.1f));}Pen pen = new Pen(Color.Black, 1);g.DrawString("X轴", new Font("宋体 ", 10f), Brushes.Black, new PointF(pan.Width - move / 1.5f, pan.Height - move / 1.5f));}#endregion  }
}

调用代码;

        private void toolStripMenuItem2_Click(object sender, EventArgs e){//XYlinesFactory.DrawXY(panel1);//XYlinesFactory.DrawXLine(panel1, 100.00f, 12);//XYlinesFactory.DrawYLine(panel1, 100.00f, 12);XYlinesFactory.DrawCXY(panel1);XYlinesFactory.DrawSmithCircle(panel1);}private void Form8_Load(object sender, EventArgs e){panel1.Width = 600;panel1.Height = 600;}

看了一点资料,这图上都是圆;曲线的那几根是圆弧,是圆的一部分;

把圆在脑子里想出来,按照C#画弧的方式,只画出圆的一部分;加上如下四句画弧的代码,

            g.DrawArc(new Pen(Brushes.Black, 1), centerX,centery-scr1*2, scr1*2,scr1*2,  90, 90);g.DrawArc(new Pen(Brushes.Black, 1), centerX, centery, scr1 * 2, scr1 * 2, 180, 90);g.DrawArc(new Pen(Brushes.Black, 1), centerX-scr1/2, centery-scr2*3, scr2 * 3, scr2 * 3, 90, 78);g.DrawArc(new Pen(Brushes.Black, 1), centerX - scr1 / 2, centery, scr2 * 3, scr2 * 3, 192, 78);

效果如下,

还没完全理解它的规律;

所取的画弧的正方形的边长分别是scr1 * 2,   scr2*3,转78的角度也是大致试出来的;

scr1是最大圆的半径,scr2是第二大圆的半径;

g.DrawArc()的第一个参数是画笔,接下来2个参数是画弧参照正方形的左上角x和y坐标,再接下来2个参数是正方形的长和宽,然后是画弧的起始角度,最后一个参数是需要画多大的角度;

http://www.tj-hxxt.cn/news/94594.html

相关文章:

  • 企业网站源码wap优化的近义词
  • 网络运维工程师自学seo外包公司怎么样
  • 台州网站设计盘多多百度网盘搜索引擎
  • 深圳市建设工程交易服务网站百度指数在线查询工具
  • 手机网站建设价位淘宝指数转换
  • 外贸做网站公司广东网络推广运营
  • 网站代备案需要多少钱沧州搜索引擎优化
  • 做php网站会员开店代码如何编写南宁网站推广排名
  • 北京网站设计多少钱网站建设技术托管
  • 全屏滚动企业网站模板seo常用工具网站
  • 炫酷的企业网站外贸推广平台
  • 怎么建设一个电影资源网站解析线上引流的八种推广方式
  • 高校工会网站建设苏州搜索引擎排名优化商家
  • 做网站需要哪些技术人才如何做百度竞价推广
  • 如何建设网站济南兴田德润o简介电话站长工具中文精品
  • 企业网站手机网站建设如何搭建公司网站
  • b2c网站建设需要多少钱免费换友情链接
  • 德阳做网站的互联网公司今天最新的新闻头条
  • muse网站设计解决方案视频教程什么是淘宝搜索关键词
  • 模板网站与定制网站区别开发一个app需要多少钱
  • 移动端企业网站模板网站推广系统
  • 南平抖音搜索排名seo软件seo排名软件价格
  • 深圳最好的区排名系统优化的意义
  • 美女做爰直播在线网站58黄页网推广公司
  • 外贸公司网站如何做网上推广数据推广公司
  • 南昌it制作电商网站的公司今日热搜榜官网
  • jsq项目做网站国内搜索网站排名
  • 网站手机端首页用什么软件做以图搜图
  • 响应式网站 做搜索推广缺点湖南网站seo
  • 武汉光谷职业学院谷歌官方seo入门指南