Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как установить метрическую систему в С#? подобно MM_xxMETRIC в С++ 
:(
    Опции темы
Гость_кот
Дата 1.2.2005, 02:25 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











как перейти в метрическую систему, С#?
  Вверх
Domestic Cat
Дата 1.2.2005, 05:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 9
Всего: 172



А поточнее?


--------------------

PM   Вверх
Guest
Дата 1.2.2005, 06:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











для отрисовки графики в метрической системе координат (в долях mm, а не в пикселах, долях дюймов и т.п.) в С++ я устанавливаю значение, например SetMapMode( MM_LOMETRIC );
операция более чем стандартная, но пока в С# аналога не нашел.
  Вверх
Domestic Cat
Дата 1.2.2005, 07:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 9
Всего: 172



Задаещь PageScale и указываешь
GraphicsUnit.Pixel
GraphicsUnit.Inch
GraphicsUnit.Millimeter
GraphicsUnit.Document == 1/300 inch
GraphicsUnit.Display == 1/72 inch
GraphicsUnit.World


--------------------

PM   Вверх
Guest
Дата 1.2.2005, 09:33 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











что-то опять не то делаю:
Код
Graphics dcLeft  = panelLeft.CreateGraphics();          // рисую в panel
dcLeft.PageScale = (float)GraphicsUnit.Millimeter/1000; // устанавливаю масштаб = 1/1000 mm
dcLeft.PageUnit  = GraphicsUnit.Millimeter;             // выбираю систему измерения (mm)
dcLeft.TranslateTransform(1000, 2000);                  // начало координат
dcLeft.DrawLine(pen,0, 0, 20000, 0 );                   //  x = около 123mm?!



  Вверх
Domestic Cat
Дата 1.2.2005, 09:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5452
Регистрация: 3.5.2004
Где: Dallas, US

Репутация: 9
Всего: 172



Попробуй убрать PageScale и работать только с PageUnit .
Да и зарегистрировался бы, а то неясно с кем вообще говорю...



--------------------

PM   Вверх
-ser-
Дата 1.2.2005, 10:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 1.2.2005

Репутация: 5
Всего: 13



извини, зарегистрировался.
убрал PageScale, уже ближе, но вместо 80 рисует 83 мм, вместо 100 -> 104 мм. это не критически, но подозрительно, проверял разными линейками.
Еще пришлось соответственно толщину Рen-а делить на 10 ибо 1 в конструкторе в этом случае дает толщину около 2мм. И последнее, теперь во всех функциях отрисовки придется параметры делить на 1000 (у меня четкость 1/1000 mm). уверен, что есть метод, устанавливающий graphics в определенную шкалу. С этим разберемся. За то что есть, спасибо.


--------------------
"Тонкая, однако, работа." 
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0426 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.