`
jsntghf
  • 浏览: 2542723 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

画直线

    博客分类:
  • iOS
阅读更多

头文件:

 

#import <Foundation/Foundation.h>

@interface DrawLine : UIView {

}

@end

 

实现文件:

 

#import "DrawLine.h"

@implementation DrawLine

- (id)initWithFrame:(CGRect)frame {
	if (self = [super initWithFrame:frame]) {
		self.backgroundColor = [UIColor orangeColor];
	}
	return self;
}

- (void)drawRect:(CGRect)rect {
	[super drawRect:rect];
	CGContextRef context = UIGraphicsGetCurrentContext();
	CGContextSetRGBStrokeColor(context, 0.05, 0.25, 0.5, 1.0);
	CGContextSetLineWidth(context, 1.0);
	int i = 0;
	while(i < 101){
		CGContextMoveToPoint(context, 0, i);
		CGContextAddLineToPoint(context, 320, i);
		CGContextStrokePath(context);
		i += 20;
	}
}

@end

 

示例:

 

#import "LineViewController.h"

@implementation LineViewController

- (void)viewDidLoad {
	[super viewDidLoad];
	DrawLine *lineView = [[DrawLine alloc] initWithFrame:CGRectMake(0, 0, 320, 100)];
	[self.view addSubview:lineView];
	[lineView release];
}

- (void)dealloc {
	[super dealloc];
}

@end

 

示例图:


分享到:
评论

相关推荐

    计算机图形学DDA画直线,中点画直线,Bresenham画直线java程序

    在二维图形绘制中,画直线是一项基础且重要的任务。本文将深入探讨三种经典的直线绘制算法:DDA(Digital Differential Analyzer),中点画直线算法以及Bresenham算法,并结合Java编程语言来解释其实现原理。 1. ...

    易语言源码动画框画直线.rar

    在易语言中,画直线通常涉及到几个关键函数,如“画线”命令。这个命令接受两个坐标参数,分别表示直线的起点和终点,可以设置线的颜色、线型和线宽。在动画框中,我们可以通过定时器事件或者响应特定事件(如鼠标...

    汇编语言画直线.rar

    在汇编语言编程中,画直线是一个挑战性的任务,因为它涉及到计算、循环和条件判断等基本操作。这个名为"汇编语言画直线.rar"的压缩包包含了一个汇编语言程序,用于实现画直线的功能,但具体实现细节需要我们自行理解...

    C#中winform画直线

    在WinForms中,我们可以利用图形用户界面(GUI)组件和GDI+图形库来实现画直线的功能。下面将详细介绍如何在C#的WinForms应用中实现这个功能。 首先,我们需要创建一个WinForms应用程序。在Visual Studio中,选择...

    c++ 画直线程序

    在C++编程中,画直线是一项基本的任务,尤其在图形用户界面(GUI)开发或计算机图形学领域。这里我们将深入探讨如何使用C++来实现这个功能,主要关注经典的直线算法——Bresenham算法。 首先,我们要理解C++本身并...

    用C语言实现DDA算法画直线

    DDA(Digital Differential Analyzer)算法是一种简单且直观的画直线的方法,主要用于计算机图形学中。在C语言中实现DDA算法可以帮助我们理解计算机如何在屏幕上绘制直线。下面将详细介绍DDA算法及其C语言实现。 ...

    MFC画直线事例

    在本文中,我们将深入探讨如何在MFC(Microsoft Foundation Classes)框架中实现画直线的功能,这对于初学者来说是一个很好的起点。MFC是微软提供的一种C++库,它封装了Windows API,使得开发者能够更容易地创建...

    C#实现在控件上画直线

    有时我们需要在应用程序的界面中进行图形绘制,比如画直线,这在创建自定义控件或实现特定视觉效果时非常有用。本文将深入探讨如何使用C#实现在WinForm控件上画直线,并介绍相关的绘图API和技术。 首先,我们需要...

    MFC反走样算法画直线

    在提供的压缩包文件"DrawLine2(另一算法画直线)"中,可能是另一种实现反走样算法画直线的方法。可能包含更优化的算法或不同的色彩混合策略。你可以对比这两种方法,了解它们的异同,进一步优化你的代码。 总之,...

    MFC动态画直线 WM_MOUSEMOVE

    在MFC(Microsoft Foundation Classes)框架中,动态画直线通常涉及到Windows消息处理和GDI(Graphics Device Interface)图形绘制技术。本篇将深入探讨如何在MFC应用中响应`WM_MOUSEMOVE`消息来实现实时的直线绘制...

    完整Bresenham算法画直线

    Bresenham算法画直线 Bresenham算法是计算机图形学中的一种常用算法,用来绘制直线和圆弧。该算法是由 Jack E. Bresenham 于1962年提出,主要用于计算机图形学和计算机辅助设计领域。 Bresenham算法画直线的完整...

    vc++ 鼠标画直线源程序

    在VC++环境中,实现鼠标画直线的功能涉及到图形用户界面(GUI)编程和Windows消息处理机制。这个源程序可能包括一个窗口应用,通过捕获鼠标的WM_LBUTTONDOWN、WM_MOUSEMOVE和WM_LBUTTONUP消息来实现实时画直线的效果...

    DDA、Bresenham、Midpoint算法画直线

    在计算机图形学中,画直线是一项基础且重要的任务。本文将深入探讨三种经典的算法:DDA(Digital Differential Analyzer)、Bresenham算法以及Midpoint算法,它们都是为了解决在像素化平面上高效准确地绘制直线的...

    c#用鼠标画直线的简单实现

    本教程将详细解释如何利用GDI+在Windows Forms应用程序中的PictureBox控件上通过鼠标点击事件实现画直线的功能。 首先,我们需要创建一个新的Windows Forms项目,并在设计界面中添加一个PictureBox控件。PictureBox...

    vc mfc画直线小例子

    在计算机图形学中,画直线是一项基础且重要的任务。在这个小案例中,我们将探讨如何使用MFC(Microsoft Foundation Classes)库结合Bresenham算法来实现这个功能。MFC是微软提供的一套C++类库,它使得Windows应用...

    DDA算法画直线

    DDA(Digital Differential Analyzer)算法,也称为差分分析器,是计算机图形学中的一个基本概念,用于在屏幕上画直线。这个算法简单易懂,适用于简单的二维图形渲染。以下是对DDA算法及其应用的详细解释。 DDA算法...

    openGL 画直线 代码

    在这个场景中,我们要讨论的是如何在OpenGL中用C语言来实现画直线的方法。 在OpenGL中,画直线的基础在于顶点的概念。直线是由两个或多个点(顶点)定义的。在OpenGL中,我们通常会使用`glBegin()`和`glEnd()`函数...

    MFC画直线、椭圆、矩形

    1. **画直线**: 使用CDC类的成员函数MoveTo和LineTo可以画出直线。MoveTo函数用于设定起点,LineTo函数则用于画线到指定的终点。例如: ```cpp void CMyView::OnDraw(CDC* pDC) { // 设置画笔颜色 CPen pen...

    易语言动画框画直线

    为了实现动画效果,我们需要在某个循环中反复调用“子程序_画直线”,每次调用时改变直线的起始或结束点,使得直线的位置发生变化。这可以通过调整坐标参数或者使用定时器组件来实现。例如,可以设定一个定时器,每...

    MFC画直线、圆和椭圆

    MFC提供了一套面向对象的API,使得开发者能够更方便地使用Windows API来实现各种图形功能,如画直线、圆和椭圆。本篇文章将详细探讨如何使用MFC来实现这些基本的图形绘制。 首先,我们要了解MFC中的CDC(Device ...

Global site tag (gtag.js) - Google Analytics