//AUX. FCN. // public void saveMaskZone(EraserMask.MaskedZone mz,BinaryWriter buf,bool isGomme) // { // buf.Write(mz.m_pixels.Count); // // if(isGomme) // { // buf.Write(mz.m_images.Length); // foreach(bool b in mz.m_images) // { // buf.Write(b); // } // // foreach(MaskPix mp in mz.m_pixels) // { // buf.Write(mp.m_x); // buf.Write(mp.m_y); // buf.Write(mp.m_alpha); // } // } // else // { // foreach(MaskPixRGB mp in mz.m_pixels) // { // buf.Write(mp.m_x); // buf.Write(mp.m_y); // buf.Write(mp.m_r); // buf.Write(mp.m_g); // buf.Write(mp.m_b); // buf.Write(mp.m_alpha); // } // } // } public void LoadMask(BinaryReader buf,bool isGomme) { bool[] images; List<MaskPix> pixs = new List<MaskPix>(); int pixCount = buf.ReadInt32(); if(isGomme) { int imgCount = buf.ReadInt32(); images = new bool[imgCount]; for(int i=0;i<imgCount;i++) { images[i] = buf.ReadBoolean(); } for(int p=0;p<pixCount;p++) { MaskPix mp = new MaskPix(buf.ReadInt32(),buf.ReadInt32(),buf.ReadSingle()); pixs.Add(mp); } } else { images = null; for(int p=0;p<pixCount;p++) { MaskPixRGB mp = new MaskPixRGB(buf.ReadInt32(),buf.ReadInt32(), buf.ReadSingle(),buf.ReadSingle(),buf.ReadSingle(),buf.ReadSingle()); pixs.Add(mp); } } // EraserMask.MaskedZone mz = new EraserMask.MaskedZone(pixs,images); // return mz; }
public MaskPixRGB(MaskPixRGB model) : this(model.m_x, model.m_y, model.m_r, model.m_g, model.m_b, model.m_alpha) { }