public CloudProcessor(Options options, IWordSource wordSource, IGrammarInfoParser grammarInfoParser, GrammarFormJoiner grammarFormJoiner, IWordFilter[] wordFilters, IFontManager fontManager, ICloudGenerator cloudGenerator, IColorManager colorManager, ICloudRenderer cloudRenderer) { this.wordSource = wordSource; this.grammarInfoParser = grammarInfoParser; this.grammarFormJoiner = grammarFormJoiner; this.wordFilters = wordFilters; wordCount = options.Count; this.fontManager = fontManager; this.cloudGenerator = cloudGenerator; this.colorManager = colorManager; this.cloudRenderer = cloudRenderer; }
public void Arrange(List <Word> words, ICloudRenderer renderer) { if (words == null) { throw new ArgumentNullException("words"); } foreach (Word word in words) { SizeF size = renderer.Measure(word.Text, word.Occurrences); RectangleF freeRectangle; if (TryFindFreeRectangle(size, out freeRectangle)) { word.Rectangle = freeRectangle; word.IsExposed = true; fQuadTree.Insert(word); } } }
public CloudSaver(ICloudRenderer renderer, IOutputSettingsProvider outputSettingsProvider) { this.renderer = renderer; this.outputSettingsProvider = outputSettingsProvider; }