二维绘图引擎:圆、半圆、弧线绘制

二维画图引擎-画圆、半圆、弧线

//
//  QHCircle.m
//  绘图
//

#import "QHCircle.h"

@implementation QHCircle

// Only override drawRect: if you perform custom drawing.
// An empty implementation adversely affects performance during animation.
/**
 *  当View第一次显示的时候调用
 *
 *  @param rect
 */

- (void)drawRect:(CGRect)rect {
    // Drawing code

    //仅仅会调一次

    CGContextRef ctx = UIGraphicsGetCurrentContext();

    //2.画1/4圆

    CGContextMoveToPoint(ctx, 100, 100);

    CGContextAddLineToPoint(ctx, 100, 150);

    CGContextAddArc(ctx, 100, 100, 50, -M_PI_2, M_PI, 1);

    CGContextClosePath(ctx);

    [[UIColor redColor]set];

    CGContextFillPath(ctx);

    drawArc();
    drawCircle();

}

void drawArc()
{
    CGContextRef ctx = UIGraphicsGetCurrentContext();
    // 2.画圆弧
    // x\y : 圆心
    // radius : 半径
    // startAngle : 開始角度
    // endAngle : 结束角度
    // clockwise : 圆弧的伸展方向(0:顺时针, 1:逆时针)
    CGContextAddArc(ctx, 100, 100, 50, M_PI_2, M_PI, 0);

    CGContextFillPath(ctx);
}

void drawCircle()
{
    CGContextRef ctx = UIGraphicsGetCurrentContext();

    //画圆
    CGContextAddEllipseInRect(ctx, CGRectMake(50, 10, 100, 100));

    CGContextSetLineWidth(ctx, 10);

    CGContextStrokePath(ctx);
}
@end
时间: 2024-10-15 23:38:58

二维绘图引擎:圆、半圆、弧线绘制的相关文章

MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息

MATLAB二维绘图(二)向图中添加标题,坐标轴,图标和文字信息 1.添加标题.图例.x轴信息和y轴信息,示例: %% 添加标题 clear; clc; close all; x = 0:0.1:2*pi; y1 = sin(x); y2 = exp(-x); plot(x, y1, '--*', x, y2, ':o'); xlabel('t = 0 to 2\pi'); % 添加x轴信息 ylabel('values of sin(t) and e^{-x}') % 添加y轴信息 e^{-x

WPF的二维绘图(二)——几何图形Geometry

在WPF的DrawingContext对象中,提供了基本的绘制椭圆和矩形的API:DrawEllipse和DrawRectangle.但是,这些是远远不够用的,我们在日常应用中,更多的是使用DrawGeometry函数,它可以绘制更多复杂的几何图形,并且提供了许多强大而易用的函数,在大多数场景下,甚至可以取代DrawEllipse和DrawRectangle函数. 在WPF图形体系中,Geometry类表示几何图形的基类,使用的时候是实例化它的一些子类,具体的有: 基本几何图形 线段:LineG

ios二维绘图之颜色渐变

颜色空间 cmyk印刷行业 RGB 渐变颜色:线性渐变,环状渐变 线性渐变:渐变的区域是当前context,垂直于startPoint <-> endPoint线段,并且于这条线段相交的直线 环状渐变: corefoundation(c) -- foundation(oc)转换 强制转换:__bridge id(类型) /****/自动引用计数 将绘制图片保存起来 创建image context -- 获取画布 -- -- -- 获取图片 -- 保存图片 -- 结束绘制 压缩成图片: png(

开源)嗨,Java,你可以生成金山词霸的二维码分享海报吗?

As long as you can still grab a breath, you fight.只要一息尚存,就不得不战. 有那么一段时间,我特别迷恋金山词霸的每日一句分享海报.因为不仅海报上的图片美,文字也特别美,美得让我感觉生活都有了诗意.就像文章开头的那句中英文对照,中文和英文都妙极了. 最近,又有很多人迷恋上了流利说的小程序分享海报(朋友圈比比皆是).但不管是金山词霸还是流利说,分享的海报都不是自己的二维码,这对于个人品牌的缔造者来说,实在是一件出力不讨好的事. 当然了,这种事难不倒

Java生成二维码分享海报

这一篇文章我们就用 Java 来生成一下仿金山词霸的海报. As long as you can still grab a breath, you fight.只要一息尚存,就不得不战. 有那么一段时间,我特别迷恋金山词霸的每日一句分享海报.因为不仅海报上的图片美,文字也特别美,美得让我感觉生活都有了诗意.就像文章开头的那句中英文对照,中文和英文都妙极了. 最近,又有很多人迷恋上了流利说的小程序分享海报(朋友圈比比皆是).但不管是金山词霸还是流利说,分享的海报都不是自己的二维码,这对于个人品牌的

H5JS二维动画制作!two.js的基本操作class1

今天介绍一个网络上并不常用的插件two.js,刚开始学习的过程中,发现网上并没有合适的教程,在此发表基本操作 two.js是一款网页二维绘图软件,可以在指定区域内产生自设的各种动画效果 下载网址如下: https://two.js.org/#download class1: 一:如何使用: 首先在页面中引入js文件: <script src="js/two.js" type="text/javascript" charset="utf-8"

二维CAD完成不了的九件事

这些年来,您很满意您现在正在使用的二维设计工具,您已经可以非常熟练的使用这些工具了,那么为什么我们还要过渡到三维CAD设计工具呢?过渡到三维CAD可能需要一个长时间的学习曲线,甚至造成很长时间停止工作来学习三维CAD工具,这样做真的值得吗?毕竟我们普遍认为,"如果它没有变坏,就没有必要去改变它!"(意思是说,如果使用二维CAD能够应付日常的设计工作,就没有必要升级到三维CAD),这种想法是对的吗? 但是现实的情况是,您可以比目前的设计做的更好,更快.而且从长远的角度来看,使用三维CAD

如何在条码标签打印软件中导入数据库并做出彩色二维码

我们现在看到的二维码大部分都是黑白相间的,但是二维码也是有彩色的,那么彩色二维码是怎么做出来的呢,如果有txt的数据文件,如何实现导入数据库生成可变的彩色二维码,接下来我们就在我们的中琅条码标签软件中为大家演示一下.1.新建标签打开条码标签打印软件,出现一个文档设置文本框,点击新建,我们可以在这里设置纸张上要打印的标签的行数和列数,以及标签尺寸.2.导入数据库在中琅条码打印软件左上角,选择"文件-数据库设置",弹出的数据库设置窗口中,点击添加-选择TXT文本数据源,出现一个文本数据源管

Matlab二维曲线绘图

matlab 二维曲线绘图常用方法,自己留着用 语法 plot(Y) plot(X1,Y1,...) plot(X1,Y1,LineSpec,...) plot(...,'PropertyName',PropertyValue,...) plot(axes_handle,...) h = plot(...) hlines = plot('v6',...) 描述 plot(Y)如果Y是m×n的数组,以1:m为X横坐标,Y中的每一列元素为Y坐标,绘制n条曲线:如果Y是n×1或者1×n的向量,则以1: