Advertisement
alestane

Stateful line limiter

Feb 7th, 2012
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 0.49 KB | None | 0 0
  1.  -- drafter.lua -- stateful approach
  2.  
  3. local drafter = {}
  4.  
  5. drafter.maxLength = 0
  6.  
  7. function drafter.line(startX, startY, endX, endY)
  8.     local deltaX, deltaY = endX - startX, endY - startY
  9.     local requestedLength = math.sqrt(deltaX * deltaX + deltaY * deltaY)
  10.     if requestedLength > drafter.maxLength then
  11.         local ratio = drafter.maxLength / requestedLength
  12.         endX, endY = startX + deltaX * ratio, startY + deltaY * ratio
  13.     end
  14.     display.newLine(startX, startY, endX, endY)
  15. end
  16.  
  17. return drafter
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement