1. C# / Говнокод #13442

    +125

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    var colorInfoList = new List<ColorInfo>()
                    {
                        new ColorInfo("#000000", "	black", "	Черный"),
                        new ColorInfo("#000080","	navy","	Темно-синий"),
                        new ColorInfo("#00008B","	darkblue","	Темно-голубой"),
                        new ColorInfo("#0000CD","	mediumblue","	Умеренно-голубой"),
                        new ColorInfo("#0000FF","	blue	","Голубой"),
                        new ColorInfo("#006400","	darkgreen","	Темно-зеленый"),
                        new ColorInfo("#008000","	green","	Зеленый"),
                        new ColorInfo("#008080","	teal","	Чайный"),
                        new ColorInfo("#008B8B","	darkcyan","	Темный циан"),
                        new ColorInfo("#00BFFF","	deepskyblue","	Темный небесно-синий"),
                        new ColorInfo("#00CED1","darkturquoise	","Темно-бирюзовый"),
                        new ColorInfo("#00FA9A","	mediumspringgreen","	Умеренный синевато-серый"),
                        new ColorInfo("#00FF00","	lime","	Известковый"),
                        new ColorInfo("#00FFFF","	aqua","	Синий"),
                        new ColorInfo("#2E8B57","	seagreen","	Морской волны"),
                        new ColorInfo("#32CD32","	limegreen","	Зеленовато-известковый"),
                        new ColorInfo("#4B0082","	indigo","	Индиго"),
                        new ColorInfo("#696969","	dimgray","	Тускло-серый"),
                        new ColorInfo("#7CFC00","	lawngreen","	Зеленой травы"),    
                        new ColorInfo("#7FFFD4","	aquamarine","	Аквамарин"),
                        new ColorInfo("#800000","	maroon","	Оранжево-розовый"),
                        new ColorInfo("#808080"," 	gray","	Серый"),
                        new ColorInfo("#8B0000","	darkred","	Темно-красный"),
                        new ColorInfo("#9ACD32","	yellowgreen","	Желто-зеленый"),
                        new ColorInfo("#A52A2A","	brown","	Коричневый")
                    };
    
    
            public ColorInfo ColorCheck(List<ColorInfo> list, string colorHex)
            {
                for (int i = 0; i < list.Count-1; i++)
                {
                    if (String.Compare(list[i].HexInfo, colorHex, StringComparison.Ordinal) <= 0 && String.Compare(list[i + 1].HexInfo, colorHex, StringComparison.Ordinal)>=0)
                        return list[i+1];
                }
                return new ColorInfo();
            }

    Определение названия цвета

    Запостил: iofjuupasli, 17 Июля 2013

    Комментарии (29) RSS

    • "Темно-бирюзовый" выбивается из ряда. Классики есть а мозгов нет.
      Ответить
    • Интересно, зачем автор насувал пробелов внутри строк? Он потом будет их тримать? Или эти пробелы (разные в разных случаях) это важная часть выхлопа проги?
      Ответить
      • Это выравнивание кода! Не очень удачное, но все-таки...
        Ответить
        • Ну так код равнять надо СНАРУЖИ строк... внутри то нахрен?
          Ответить
          • Студия автоформатирует ручную красотулину.
            Ответить
            • Ну и дело, видимо, происходит в HTML, а HTML лишние пробелы всё равно пропустит.
              Ответить
              • > а HTML лишние пробелы всё равно пропустит
                Пропустит, но может дизайн помять немного. <div>хуй</div> и <div> хуй</div> все-таки по-разному выглядят.
                Ответить
    • А вообще, этот код для многих цветов, не перечисленных в таблице, будет выдавать херню. Цветовое пространство не линия. Нельзя тупо взять и сравнить два цвета на < или >… если бы он сравнивал hue, или искал ближайший цвет в таблице по сумме квадратов или модулей rgb компонент, то я бы посчитал жтот код осмысленным...
      Ответить
      • Мне даже в голову такой способ, как у автора, не пришел бы. Да еще со строками )
        Получается, что, например, #000100 - голубой?
        Ответить
        • А разве нет?

          Японцы, как и англичане, уверены, что в радуге шесть цветов. И с радостью вам их назовут: красный, оранжевый, желтый, голубой, синий и фиолетовый. А куда делся зеленый? Никуда, его в японском языке просто нет. Японцы, переписывая китайские иероглифы, иероглиф зеленого цвета потеряли (в китайском он есть). Теперь в Японии зеленого цвета нет, что приводит к забавным казусам. Российский специалист, работающий в Японии, жаловался, как ему один раз пришлось долго искать голубую (аой) папку на столе. На видном месте лежала только зеленая. Которую японцы видят голубой. И не по тому, что они дальтоники, а потому что в их языке нет такого цвета как зеленый. То есть он вроде и есть, но это оттенок голубого, как у нас алый - оттенок красного. Теперь, под внешним влиянием, существует, конечно, и зеленый цвет (мидори) - но это с их точки зрения такой оттенок синего (аой). То есть не основной цвет. Вот и получаются у них голубые огурцы, голубые папки и голубой цвет светофора.

          Читать далее: Сколько цветов пьет радуга?
          Ответить
          • Шерлок, получается наш преступник – японец?
            Ответить
            • А разве это не было ясно с самого начала, Ватсон?
              Ответить
            • показать все, что скрыто
              * g o a t s e x * g o a t s e x * g o a t s e x *
              g                                               g  
              o /     \             \            /    \       o
              a|       |             \          |      |      a
              t|       `.             |         |       :     t
              s`        |             |        \|       |     s
              e \       | /       /  \\\   --__ \\       :    e
              x  \      \/   _--~~          ~--__| \     |    x  
              *   \      \_-~                    ~-_\    |    *
              g    \_     \        _.--------.______\|   |    g
              o      \     \______// _ ___ _ (_(__>  \   |    o
              a       \   .  C ___)  ______ (_(____>  |  /    a
              t       /\ |   C ____)/      \ (_____>  |_/     t
              s      / /\|   C_____)       |  (___>   /  \    s
              e     |   (   _C_____)\______/  // _/ /     \   e
              x     |    \  |__   \\_________// (__/       |  x
              *    | \    \____)   `----   --'             |  *
              g    |  \_          ___\       /_          _/ | g
              o   |              /    |     |  \            | o
              a   |             |    /       \  \           | a
              t   |          / /    |         |  \           |t
              s   |         / /      \__/\___/    |          |s
              e  |           /        |    |       |         |e
              x  |          |         |    |       |         |x
              * g o a t s e x * g o a t s e x * g o a t s e x *
              Ответить
          • В радуге не 6 цветов. И не 7. Их там бесконечно много ;)
            Ответить
            • Мозг (при поддержке глаза (устройство измерения)) среднестатистического человека кластеризует (выделяет/находит соответствия понятиям своего языка) в радуге около 6-7ми цветов. (Я больше 6ти там выделить не могу. Кто также?)
              Ответить
              • Выделить не могу именно на глаз. Какого-то не вижу. Не дальтоник, так как вод.права есть.
                Каждый охотник желает знать где сидит фазан.
                Красный оранжевый желтый зеленый голубой синий фиолетовый.

                PS: Это белый.
                Ответить
          • Интересно как в Японии RGB записывается RBB или RB^2
            Ответить
          • Вот так номер... А я то думал почему парня в зеленой одежде они называют голубым. А я то про него уже такого себе на воображал...
            Ответить
        • Так вот, почему пеинт в режиме 16 цветов сохраняет какую-то херню!
          Ответить
    • У меня так получилось:
      public static class ColorExtension
      {
      	private static readonly Dictionary<KnownColor, String> RuColorNames=new Dictionary<KnownColor, String>()
      	{
      		{ KnownColor.Red,	"Красный" },
      		{ KnownColor.Green,	"Зелёный" },
      		{ KnownColor.Blue,	"Синий" },
      	};
      	public static String GetRuName(this Color color)
      	{
      		String result;
      		return RuColorNames.TryGetValue(color.ToKnownColor(), out result) ? result : null;
      	}
      }
      ...
      Color clr=ColorTranslator.FromHtml("#FF0000");
      lblEngColorName.Text=clr.Name;
      lblRusColorName.Text = clr.GetRuName();

      Хотя правильнее было-бы с локализацией. Т.к. color.Name захардкожен в дебрях System.Drawing (KnownColorTable).
      Ответить
    • navy = военно-морской
      Ответить
    • >Умеренный синевато-серый
      Я что то не могу себе представить... В RGB понятней будет..
      Ответить
      • #E6E6FF
        Ответить
        • Что-то из психологических штучек, нужно вслух в быстром темпе назвать цвет, в который окрашено слово.
          синий белый жёлтый зелёный
          Ответить

    Добавить комментарий