コード例 #1
0
 internal ARVideoSource(String videoPath, NDKSession session)
 {
     m_ndkSession   = session;
     m_configHandle = session.ConfigHandle;
     m_videoPath    = videoPath;
     m_ndkSession.VideoSourceAdapter.Constructor(m_ndkSession.SessionHandle, m_configHandle, m_videoPath);
 }
コード例 #2
0
        internal ARCameraImageBytes(IntPtr imageHandle, NDKSession session)
        {
            m_ImageHandle = imageHandle;
            m_ndkSession  = session;
            if (m_ImageHandle != IntPtr.Zero)
            {
                int    width, height;
                IntPtr y, u, v;
                int    yRowStride, uvPixelStride, uvRowStride;
                m_ndkSession.ImageAdapter.GetImageBuffer(m_ImageHandle, out width, out height,
                                                         out y, out u, out v, out yRowStride, out uvPixelStride, out uvRowStride);

                IsAvailable   = true;
                Width         = width;
                Height        = height;
                Y             = y;
                U             = u;
                V             = v;
                YRowStride    = yRowStride;
                UVPixelStride = uvPixelStride;
                UVRowStride   = uvRowStride;
            }
            else
            {
                IsAvailable = false;
                Width       = Height = 0;
                Y           = U = V = IntPtr.Zero;
                YRowStride  = UVPixelStride = UVRowStride = 0;
            }
        }
コード例 #3
0
        public ARState GetState()
        {
            ARState state = new ARState
            {
                frameHandle   = 0,
                sessionHandle = 0,
                tracked       = false
            };

 #if HAS_GOOGLE_ARCORE
            if (GetSelectedAR() == ARSDK.ARCORE)
            {
                NativeSession native = LifecycleManager.Instance.NativeSession;
                if (native != null)
                {
                    state = new ARState
                    {
                        frameHandle   = native.FrameHandle.ToInt32(),
                        sessionHandle = native.SessionHandle.ToInt32(),
                        tracked       = LifecycleManager.Instance.SessionStatus == SessionStatus.Tracking
                    };
                }
            }
#endif

#if HAS_HUAWEI_ARENGINE
            if (GetSelectedAR() == ARSDK.ARENGINE)
            {
                NDKSession native = ARSessionManager.Instance.m_ndkSession;
                if (native != null)
                {
                    state = new ARState
                    {
                        frameHandle   = native.FrameHandle.ToInt32(),
                        sessionHandle = native.SessionHandle.ToInt32(),
                        tracked       = ARFrame.GetTrackingState() == ARTrackable.TrackingState.TRACKING
                    };
                }
            }
#endif

            return(state);
        }
コード例 #4
0
 internal ARPlane(IntPtr trackableHandle, NDKSession session) : base(trackableHandle, session)
 {
 }
コード例 #5
0
 internal ARPlaneHitResult(IntPtr planeHitResult, NDKSession session) : base(planeHitResult, session)
 {
 }
コード例 #6
0
 internal ARFaceGeometry(IntPtr handle, NDKSession session)
 {
     m_faceGeometryHandle = handle;
     m_session            = session;
 }
コード例 #7
0
 internal ARHitResult(IntPtr hitResultHandle, NDKSession session)
 {
     m_hitResultHandle = hitResultHandle;
     m_ndkSession      = session;
 }
コード例 #8
0
 internal ARPointCloud(IntPtr pointcloudHandle, NDKSession session)
 {
     m_ndkSession       = session;
     m_pointCloudHandle = pointcloudHandle;
 }
コード例 #9
0
 internal ARAugmentedImage(IntPtr trackableHandle, NDKSession session) : base(trackableHandle, session)
 {
 }
コード例 #10
0
 internal ARCameraConfig(IntPtr cameraConfigHandle, NDKSession session)
 {
     m_cameraConfigHandle = cameraConfigHandle;
     m_ndkSession         = session;
 }
コード例 #11
0
 internal ARPointCloudHitResult(IntPtr hitResultHandle, NDKSession session, ARPointCloud pointCloud)
     : base(hitResultHandle, session)
 {
     PointCloud = pointCloud;
 }
コード例 #12
0
 internal ARCameraMetadata(IntPtr metadataPtr, NDKSession session)
 {
     m_metadataPtr = metadataPtr;
     m_ndkSession  = session;
 }
コード例 #13
0
 internal ARFace(IntPtr faceHandle, NDKSession session) : base(faceHandle, session)
 {
 }
コード例 #14
0
 //this method must be called in ARAnchorMaager
 internal ARAnchor(IntPtr anchorHandle, NDKSession session)
 {
     m_anchorHandle = anchorHandle;
     m_ndkSession   = session;
 }
コード例 #15
0
 internal ARTrackable(IntPtr trackableHandle, NDKSession session)
 {
     m_trackableHandle = trackableHandle;
     m_ndkSession      = session;
 }
コード例 #16
0
 internal ARSceneMesh(IntPtr handle, NDKSession session)
 {
     m_sceneMeshHandle = handle;
     m_session         = session;
 }