Визуальный отладчик для геометрических объектов
При работе с моей библиотекой, представляющей геометрические объекты, отладка в настоящее время выглядит следующим образом:
Здесь я просматриваю локальные переменные в Autos
, Locals
, Watch
а также Immediate
окна.
Поскольку у меня возникают проблемы с представлением формы объекта в моем разуме, я бы предпочел графический компонент для представления этих объектов. Поэтому я начал создавать визуализатор отладчика для рисования объектов. У меня есть это в публичном репо на bitbucket здесь.
Сейчас я не могу заставить его работать вне консольного приложения, которое у меня есть в решении с ним. Что я делаю неправильно?
вот как это выглядит, когда работает:
Кроме того, как я могу сделать это таким образом, чтобы я мог просматривать несколько объектов одновременно. Я понял, что действительно хочу видеть несколько объектов и их взаимодействие, а не только отдельные объекты. (например, искать перекрестки и тому подобное).
PS
Кто-нибудь видел расширение отладчика где-нибудь, как это? или есть предложения, как я могу исправить свой текущий?
Я попытался сделать это в виде расширения Visual Studio, но безуспешно. Смотрите этот вопрос для более подробной информации.
1 ответ
Одним из возможных вариантов для вас будет загрузка скомпилированной DLL из
Графический отладчик Visualizer
и распакуйте их в папку Debugger\Visualizers. Где-то вроде
C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Packages\Debugger\Visualizers\
Затем перезапустите вашу визуальную студию. Как только вы начнете отлаживать, вы увидите знак графического отладчика рядом со значением времени выполнения переменной Graphics, как описано в решении codeproject, о котором я упоминал ранее.
Обновление 1: я также настоятельно рекомендую вам взглянуть на следующий блог, где С.Улла, автор Custom Visual Studio Visualizer, иллюстрирует, как создать визуализатор для графики в памяти:
Пользовательский Visual Studio Visualizer
Раньше был коммерчески доступный продукт под названием Mole, но он больше не доступен для новых покупателей (я не знаю почему)