iphone - saber - como conectar apple pencil
Cómo dibujar un triángulo programáticamente (3)
Tengo un solucionador de triángulos, quiero una forma de usar los valores que obtengo de la respuesta para dibujar un triángulo en la pantalla que coincida.
Si subclasifica una UIView puede implementar algo como esto en drawRect para dibujar un triángulo:
-(void)drawRect:(CGRect)rect
{
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextBeginPath(ctx);
CGContextMoveToPoint (ctx, CGRectGetMinX(rect), CGRectGetMinY(rect)); // top left
CGContextAddLineToPoint(ctx, CGRectGetMaxX(rect), CGRectGetMidY(rect)); // mid right
CGContextAddLineToPoint(ctx, CGRectGetMinX(rect), CGRectGetMaxY(rect)); // bottom left
CGContextClosePath(ctx);
CGContextSetRGBFillColor(ctx, 1, 1, 0, 1);
CGContextFillPath(ctx);
}
Swift 3 equivalente para la respuesta de progrmr
:
override func draw(_ rect: CGRect) {
guard let context = UIGraphicsGetCurrentContext() else { return }
context.beginPath()
context.move(to: CGPoint(x: rect.minX, y: rect.minY))
context.addLine(to: CGPoint(x: rect.maxX, y: rect.midY))
context.addLine(to: CGPoint(x: (rect.minX), y: rect.maxY))
context.closePath()
context.setFillColor(red: 1.0, green: 1.0, blue: 1.0, alpha: 1.0)
context.fillPath()
}
- (void)drawRect:(CGRect)rect {
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextClearRect(ctx, rect);
// Draw a triangle
CGContextSetRGBFillColor(ctx, 255, 160, 122, 1);
CGContextBeginPath(ctx);
CGContextMoveToPoint (ctx, 290, 35); // top
CGContextAddLineToPoint(ctx, 350, 165); // right
CGContextAddLineToPoint(ctx, 230,165); // left
CGContextClosePath(ctx);
CGContextSetRGBFillColor(ctx, 1, 1, 1, 1);
CGContextFillPath(ctx);
}