internal static void DisposeList(IntPtr list)
 {
     if (list != IntPtr.Zero)
     {
         NativeConnectedComponent.DisposeList(list);
     }
 }
        internal static IEnumerable <ConnectedComponent> Create(IntPtr list, int length)
        {
            Collection <ConnectedComponent> result = new Collection <ConnectedComponent>();

            if (list == IntPtr.Zero)
            {
                return(result);
            }

            for (int i = 0; i < length; i++)
            {
                IntPtr instance = NativeConnectedComponent.GetInstance(list, i);
                if (instance == IntPtr.Zero)
                {
                    continue;
                }

                if (NativeConnectedComponent.GetArea(instance) < double.Epsilon)
                {
                    continue;
                }

                result.Add(new ConnectedComponent(instance));
            }

            return(result);
        }
 private ConnectedComponent(IntPtr instance)
 {
     Height = NativeConnectedComponent.GetHeight(instance);
     Width  = NativeConnectedComponent.GetWidth(instance);
     X      = NativeConnectedComponent.GetX(instance);
     Y      = NativeConnectedComponent.GetY(instance);
 }
 private ConnectedComponent(IntPtr instance)
 {
     Centroid = PointD.FromPointInfo(NativeConnectedComponent.GetCentroid(instance));
     Color    = NativeConnectedComponent.GetColor(instance);
     Height   = NativeConnectedComponent.GetHeight(instance);
     Id       = NativeConnectedComponent.GetId(instance);
     Width    = NativeConnectedComponent.GetWidth(instance);
     X        = NativeConnectedComponent.GetX(instance);
     Y        = NativeConnectedComponent.GetY(instance);
 }
Exemple #5
0
 private ConnectedComponent(IntPtr instance)
 {
     Area     = NativeConnectedComponent.GetArea(instance);
     Centroid = NativeConnectedComponent.GetCentroid(instance).ToPointD();
     Color    = NativeConnectedComponent.GetColor(instance);
     Height   = NativeConnectedComponent.GetHeight(instance);
     Id       = NativeConnectedComponent.GetId(instance);
     Width    = NativeConnectedComponent.GetWidth(instance);
     X        = NativeConnectedComponent.GetX(instance);
     Y        = NativeConnectedComponent.GetY(instance);
 }