CrossStitchCreator.ImagingTool.UpdateColourMapFromImage C# (CSharp) Method

UpdateColourMapFromImage() public method

Resets ColourInfo.Frequency fields, and removes colour not present in Colourmap. If Image has N pixels, and ColourMap has M colours, total time = 3M + Nlog(M) ~= N
public UpdateColourMapFromImage ( ) : void
return void
        public void UpdateColourMapFromImage()
        {
            if (mOutput == null || ColourMap == null) return;
            UpdateColourMapFrequency();
            IColourInfo[] temp = ColourMap.ToArray();
            foreach (IColourInfo col in temp)
            {
                if (col.Frequency < 1 && !col.IsChecked)
                {
                    ColourMap.RemoveColour(col.Colour);
                }
            }
        }

Usage Example

Example #1
0
 private void UpdateColourMap()
 {
     if (mRecolouredImage != null && ColourMap != null)
     {
         ImagingTool tool = new ImagingTool(mRecolouredImage, ColourMap);
         tool.UpdateColourMapFromImage();
         mSettings.MaxColours = ColourMap.Count;
         updateFormFromSettings();
         if (mColourViewer != null)
         {
             mColourViewer.UpdateColourMap(ColourMap);
         }
     }
 }
All Usage Examples Of CrossStitchCreator.ImagingTool::UpdateColourMapFromImage