小工具      在线工具  汉语词典  css  js  c++  java

首先是效果图


上面三角形的代码

- (void)ljTestView
{
    CGPoint piont1;
    piont1.x = 170;
    piont1.y = 100;
    
    CGPoint piont2;
    piont2.x = 50;
    piont2.y = 200;
    
    CGPoint piont3;
    piont3.x = 220;
    piont3.y = 200;

    ljDrawRect *_ljView = [[ljDrawRect alloc]initStartPoint:piont1 middlePoint:piont2 endPoint:piont3 color:[UIColor redColor]];
    _ljView.frame = CGRectMake(0, 64, kDEVICEWIDTH, kDEVICEHEIGHT - 64);
    _ljView.backgroundColor = [UIColor yellowColor];
    [self.view addSubview:_ljView];
}


画三角形的类

#import "ljDrawRect.h"

@interface ljDrawRect ()
{
    CGPoint _startPoint;
    CGPoint _middlePoint;
    CGPoint _endPoint;
    UIColor  *_color;
}
@end

@implementation ljDrawRect

#pragma mark -
#pragma mark - method
- (instancetype)initStartPoint:(CGPoint)startPoint
                   middlePoint:(CGPoint)middlePoint
                      endPoint:(CGPoint)endPoint
                         color:(UIColor*)color
{
    self = [super init];
    
    if (self)
    {
        _startPoint = startPoint;
        _middlePoint = middlePoint;
        _endPoint = endPoint;
        _color = color;
        self.backgroundColor = [UIColor clearColor];
    }
    return self;
}

- (void)drawRect:(CGRect)rect
{
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextBeginPath(context);//标记
    CGContextMoveToPoint(context, _startPoint.x, _startPoint.y);
    CGContextAddLineToPoint(context,_middlePoint.x, _middlePoint.y);
    CGContextAddLineToPoint(context,_endPoint.x, _endPoint.y);
    CGContextClosePath(context);//路径结束标志,不写默认封闭
    [_color setFill]; //设置填充色
   [_color setStroke];//边框也设置为_color,否则为默认的黑色
    CGContextDrawPath(context, kCGPathFillStroke);//绘制路径path
}

@end



. . .

相关推荐

额外说明

mybatis 异常 Mapper 方法尝试从具有原始 re 的方法返回 null

org.apache.ibatis.binding.BindingException: Mapper method  attempted to return null from a method with a primitive return type

额外说明

【无标题】idea中JFormDesigner插件的下载

在eclipse中想要将控制台内容用窗口的形式显示常用的是Window Builder,而idea里没有所以就需要用到另外一个插件:JFormDesigner。 今天我们就来讲一下JFormDesigner的下载 首先打开idea然后点File -->S

额外说明

【Python】读取配置文件

前言: 在python操作mysql的数据库中,想要把mysql的连接参数都抽取出来,方便以后的修改。 文件结构: Code: import configparser # configparser是用来读取配置文件的包 cf = configparse

额外说明

Linux基于Bind9搭建dns服务器

Bind9简介 Bind是Berkeley Internet Name Domain Service的简写,它是一款实现DNS服务器的开放源码软件。Bind已经成为世界上使用最为广泛的DNS服务器软件,目前Internet上半数以上的DNS服务器都是用B

额外说明

概念三 python_类的魔法方法

1. 类的魔法方法命名规则: 在Python中,所有以双下划线__包起来的方法,统称为Magic Method(魔术方法),它是一种的特殊方法,普通方法需要调用,而魔术方法不需要调用就可以自动执行. 类的魔法方法总是被双下划线所包围,一般格式为:“__

额外说明

Git从本地库撤销已经添加的文件或目录

场景 在提交时, 误将一个目录添加到了暂存区, 而且commit 了本地库,同批次commit 的还有其他需要提交的文件。 commit 之后发现这个目录下所有的文件都不需要提交, 现在需要撤销这个提交, 使这个目录不被push到远端库。 这里以远端服务

额外说明

webpack5 打包报错:Module parse failed: Unexpected token

无法解析 vue 文件中的 css stylus。修改配置文件 webpack.config.js 文件。第 4 行,加上 vue 即可。 module: { rules: [ { test: /\.(

额外说明

Silverlight 2应用程序的部署

 http://silverlight.cn/node/520

额外说明

Java线程中的wait、notify和notifyAll解析

文章目录 等待唤醒案例:线程间的通信 代码实现 扩展:Object类中wait带参方法和notifyAll方法 Java中的线程有六种状态,具体可以查看我之前的文章: Java中线程的6种状态详解(NEW、RUNNABLE、BLOCKED、WAITING

额外说明

【Jmeter】元件实战:“CSV 数据文件设置” 参数化请求中出现带有空格的参数值

目录 一、csv 参数化文件格式填写 二、CSV 数据文件设置 三、HTTP 请求配置带有空格的参数勾选 “编码”

ads via 小工具