private void handleQuadMessage(ref LEAP_TRACKED_QUAD_EVENT quad_evt) { TrackedQuad quad = frameFactory.makeQuad(ref quad_evt); _quads.Put(quad); this.LeapTrackedQuad.Dispatch <TrackedQuadEventArgs>(this, new TrackedQuadEventArgs(quad)); }
public TrackedQuad makeQuad(ref LEAP_TRACKED_QUAD_EVENT quadMsg) { TrackedQuad quad = new TrackedQuad(quadMsg.width, quadMsg.height, quadMsg.resolutionX, quadMsg.resolutionY, quadMsg.visible, quadMsg.position.ToLeapVector(), quadMsg.orientation.ToLeapMatrix(), quadMsg.info.frame_id); return(quad); }
private TrackedQuad findTrackQuadForFrame(long frameId) { TrackedQuad quad = null; for (int q = 0; q < _quads.Count; q++) { quad = _quads.Get(q); if (quad.Id == frameId) { return(quad); } if (quad.Id < frameId) { break; } } return(quad); //null }