internal void AddImageFrame(RayTracer_552.RTCore rtCore)
        {
            if (null == rtCore)
                return;

            // construct the image frame
            Vector3 tl = rtCore.GetTopLeftPixelPosition();
            Vector3 tr = rtCore.GetTopRightPixelPosition();
            Vector3 bl = rtCore.GetBottomLeftPixelPosition();
            Vector3 br = rtCore.GetBottomRightPixelPosition();
            UWB_PrimitiveLine t, b, l, r;
            t = new UWB_PrimitiveLine();
            b = new UWB_PrimitiveLine();
            l = new UWB_PrimitiveLine();
            r = new UWB_PrimitiveLine();

            t.setStartPoint(tr.X, tr.Y, tr.Z);
            t.setEndPoint(tl.X, tl.Y, tl.Z);
            t.Material.Emissive = Vector4.UnitX;

            l.setStartPoint(tl.X, tl.Y, tl.Z);
            l.setEndPoint(bl.X, bl.Y, bl.Z);
            l.Material.Emissive = Vector4.UnitX;

            b.setStartPoint(br.X, br.Y, br.Z);
            b.setEndPoint(bl.X, bl.Y, bl.Z);
            b.Material.Emissive = Vector4.UnitX;

            r.setStartPoint(tr.X, tr.Y, tr.Z);
            r.setEndPoint(br.X, br.Y, br.Z);
            r.Material.Emissive = Vector4.UnitX;

            mCameraPrimitives.append(t);
            mCameraPrimitives.append(b);
            mCameraPrimitives.append(l);
            mCameraPrimitives.append(r);
        }