surface.DrawLine

From Garry's Mod
Jump to: navigation, search
 surface.DrawLine( )

Contents

Description

Draws a line from one point to another.

NOTE

This is a rendering function that requires a 2D rendering context.
This means that it will only work in hooks with a 2D rendering context.

Arguments

number startX

The start x integer coordinate.

Arguments

number startY

The start y integer coordinate.

Arguments

number endX

The end x integer coordinate.

Arguments

number endY

The end y integer coordinate.

Examples

Example

This example will draw a pixel perfect circle in the middle of your screen.

hook.Add( "HUDPaint", "Circle", function()
	local center = Vector( ScrW() / 2, ScrH() / 2, 0 )
	local scale = Vector( 100, 100, 0 )
	local segmentdist = 360 / ( 2 * math.pi * math.max( scale.x, scale.y ) / 2 )
	surface.SetDrawColor( 255, 0, 0, 255 )
 
	for a = 0, 360 - segmentdist, segmentdist do
		surface.DrawLine( center.x + math.cos( math.rad( a ) ) * scale.x, center.y - math.sin( math.rad( a ) ) * scale.y, center.x + math.cos( math.rad( a + segmentdist ) ) * scale.x, center.y - math.sin( math.rad( a + segmentdist ) ) * scale.y )
	end
end )


Personal tools
Navigation