none
WPF: Есть ли к-л визуальный редактор GeometryDrawing? Каков формат строки Geometry? RRS feed

  • Вопрос

  • Добрый день! 

    Разбираю чужой проект. В качестве Fill для ряда окон и канвасов используется DrawingBrush, в нём DrawingGroup, а в нём - GeometryDrawing.

    И вот имею, скажем, такой блок:

                  
     <DrawingBrush x:Key="runOrderSetupBackground">
            <DrawingBrush.Drawing>
              <DrawingGroup>
                  <GeometryDrawing Geometry="F1 M 1.6025390625,860.3935546875 C 323.01513671875,684.9365234375 233.6298828125,451.3486328125 399.83642578125,503.08984375 C 568.17724609375,555.4931640625 551.41455078125,578.9892578125 615.69775390625,578.9892578125 C 679.98193359375,578.9892578125 630,834.763671875 630,834.763671875 C 609.22021484375,834.763671875 1.6025390625,860.3935546875 1.6025390625,860.3935546875 Z">
                    <GeometryDrawing.Brush>
                      <SolidColorBrush Color="#FFFFFFFF" Opacity="0.159999996423721" />
                    </GeometryDrawing.Brush>
                  </GeometryDrawing>
    ......

    Вопрос - что означают все эти F1, М, C, Z и разные циферки в свойстве Geometry, можно ли увидеть результат этого рисования до привязки DrawingBrush к конкретному элементу и чем это вообще редактировать? Судя по цифрам, предшественники их не вычисляли, а просто водили мышкой до достижения красивого рисунка (в данном случае - поднимающаяся двойная волна). Как они это делали, в чём? В хелпе и инете ответа не нашел.

    Заранее большое спасибо за ответ.




    • Изменено SvarogichRed 29 августа 2016 г. 8:12
    29 августа 2016 г. 8:11

Ответы

  • Вопрос - что означают все эти F1, М, C, Z и разные циферки в свойстве Geometry

    Эти буковки называются синтаксис разметки пути. В статье по ссылке дано подробное описание каждого элемента и примеры построения фигур.

    Но как вы правильно заметили ваш код создан не в ручную, а с помощью какого либо инструмента. На самом деле вариантов создать такое не мало. Раньше у MS была такая штука как Microsoft Expression Studio и в ее состав входила программа Design, которая по сути была обычным векторным редактором и имела прямую возможно экспорта в XAML. Те кто делал ваш код могли использовать и другой подход. К самым популярным векторным редакторам Illustrator и CorelDraw в сети можно найти конвертеры, которые конвертируют файл или часть файла в XAML. Искать их можно по запросу "ai to XAML" или "cdr to XAML".

    Что касается просмотра, то я просмотрщиков не знаю, но написать собственный просмотрщик как по мне минутное дело.


    VB.Net - WPF, UWP

    • Помечено в качестве ответа SvarogichRed 29 августа 2016 г. 9:17
    29 августа 2016 г. 9:13
    Отвечающий

Все ответы

  • Вопрос - что означают все эти F1, М, C, Z и разные циферки в свойстве Geometry

    Эти буковки называются синтаксис разметки пути. В статье по ссылке дано подробное описание каждого элемента и примеры построения фигур.

    Но как вы правильно заметили ваш код создан не в ручную, а с помощью какого либо инструмента. На самом деле вариантов создать такое не мало. Раньше у MS была такая штука как Microsoft Expression Studio и в ее состав входила программа Design, которая по сути была обычным векторным редактором и имела прямую возможно экспорта в XAML. Те кто делал ваш код могли использовать и другой подход. К самым популярным векторным редакторам Illustrator и CorelDraw в сети можно найти конвертеры, которые конвертируют файл или часть файла в XAML. Искать их можно по запросу "ai to XAML" или "cdr to XAML".

    Что касается просмотра, то я просмотрщиков не знаю, но написать собственный просмотрщик как по мне минутное дело.


    VB.Net - WPF, UWP

    • Помечено в качестве ответа SvarogichRed 29 августа 2016 г. 9:17
    29 августа 2016 г. 9:13
    Отвечающий
  • Спасибо за развернутый ответ!
    29 августа 2016 г. 9:17