Yes thank you, I am using a similar method to what you speak: Runtime listener of plotting points as the user drags a finger around. My points are little rectangles. The problem is when the user swipes their finger very fast across the screen the Runtime listener will not catch the points in time and they will be spread out. You can see how it looks when you run the physics(hybrid) on it. I’m befuddled how “Where’s my Cheese” accomplished this as I have tried to make it not work on their game using super fast swipes, and it worked fine.
Perhaps you can alter this code (plug-and-play), try drawing a fast line and see how the dots spread out when looking at the physics(hybrid)
Thank you
[lua]–(Copy paste friendly)
– Try swiping mouse over simulator to produce random colored lines
– Starts physics
local physics = require (“physics”)
physics.start(true)
physics.setGravity(10, 0)
physics.setDrawMode(‘hybrid’)
– Ball rolls on Line
local ball = display.newCircle( 0, 0, 25)
ball:setFillColor(0, 255, 0)
ball.x = display.contentHeight/12
ball.y = display.contentWidth/4
physics.addBody(ball, {bounce=0.3, radius = 25, friction=0.5})
– Draw a line
local i = 1
local tempLine
local ractgangle_hit = {}
local prevX , prevY
local function runTouch(event)
if(event.phase==“began”) then
if(tempLine==nil) then
tempLine=display.newLine(event.x, event.y, event.x, event.y)
– Random Colors for line
r = math.random (0, 255)
g = math.random ( 0, 255)
b = math.random (0, 255 )
tempLine:setColor(r,g, b)
prevX = event.x
prevY = event.y
end
elseif(event.phase==“moved”) then
tempLine:append(event.x,event.y-2)
tempLine.width=tempLine.width+0.9
ractgangle_hit[i] = display.newLine(prevX, prevY, event.x, event.y)
ractgangle_hit[i]:setColor(r,g, b)
ractgangle_hit[i].width = 5
– Creates physic joints for line (Turn on draw mode to see the effects)
local Width = ractgangle_hit[i].width * 0.6
local Height = ractgangle_hit[i].height * 0.2
– Physic body for the line shape
local lineShape = {-Width,-Height,Width,-Height,Width,Height,-Width,Height}
physics.addBody(ractgangle_hit[i], “static”, { bounce = -1, density=0.3, friction=0.7, shape = lineShape})
prevX = event.x
prevY = event.y
i = i + 1
elseif(event.phase==“ended”) then
tempLine.parent.remove(tempLine)
tempLine=nil
end
end
Runtime:addEventListener(“touch”, runTouch)
[import]uid: 75779 topic_id: 32281 reply_id: 128447[/import]