• Как открыть шаблон Word, находящийся в ресурсе проекта (*.resx)?

    @bmforce
    Если вместо библиотеки COM для работы с Word использовать Open XML SDK, то можно использовать метод Open, принимающий поток в качестве аргумента:
    https://msdn.microsoft.com/ru-ru/library/office/cc...

    В противном случае, как уже писали, поможет только сохранение шаблона во временную папку.
    Ответ написан
    Комментировать
  • Как открыть шаблон Word, находящийся в ресурсе проекта (*.resx)?

    @mayorovp
    Поищите альтернативные библиотеки для формирования документов по шаблону, которые не требуют существования шаблона в виде отдельного файла на диске.

    Например, Open XML SDK
    Ответ написан
    2 комментария
  • Как открыть шаблон Word, находящийся в ресурсе проекта (*.resx)?

    @Sumor
    Шаблон из ресурсов нужно сохранить куда-нибудь на диск, например, во временную папку, и указывать временный путь.
    Ответ написан
    1 комментарий
  • Как таблицу из Excel поместить в массив программы?

    effetto
    @effetto
    .Net разработчик
    Эксель предусматривает прямое получение массива средствами языка, например так:
    object[,] arr = activeSheet.get_Range("A1:B300").Value

    Для получения границ диапазона Вы можете использовать свойство End объекта класса Range.
    Ответ написан
    Комментировать
  • 3D триангуляция?

    Mrrl
    @Mrrl
    Заводчик кардиганов
    В общем, делается так.
    Пусть фигура задана набором треугольных граней с известной ориентацией. В каждом ребре сходится чётное число граней (возможна, например, фигура из двух тетраэдров, склеенных по ребру), и при обходе любого ребра ориентации граней, сходящихся в нём, чередуются (например, идут грани ABC, BAD, ABE, BAF). Даже если в исходной модели таких странных рёбер нет, они могут возникнуть на промежуточном этапе.
    Выбираем любые две грани со следующими свойствами:
    - у них есть общее ребро AB;
    - при обходе этого ребра они являются последовательными
    - внутренний угол между этими гранями меньше 180 гр.
    Такие грани найдутся всегда. Пусть это ABC и BAD.
    Рассмотрим тетраэдр ABCD. Проверим, нет ли у него внутри других вершин. Если нет - заменим грани ABC и BAD на CAD и BCD (вырезав, тем самым, ABCD из модели). Если есть - возьмём ту вершину E из них, которая ближе всего к грани ABC, и заменим грань ABC на три грани ABE, AEC, EBC.
    После этого просмотрим грани, и если оказалось, что какая-то грань встречается дважды с противоположными ориентациями (ABC и ACB) - выбрасываем обе копии.
    Процесс повторяем, пока все грани не исчезнут.
    Всё.
    Ответ написан
    4 комментария