| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Возможность перепроецирования

Возможность перепроецирования

Ответ
Поиск в этой теме
Непрочитано 09.04.2013, 14:22 #1
Возможность перепроецирования
firefox0013
 
Регистрация: 05.04.2013
Сообщений: 8

Существует ли возможность производить перепроецирование средствами AutoCAD Civil 3D из одной системы координат в другую и возможность их использования при программирование на C#?
Просмотров: 3674
 
Непрочитано 09.04.2013, 16:07
#2
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Вы не забывайте что пишите в разделе "Программирование", и возможно не все понимают, что вы имеете в виду под словом "перепроецирование" (я например). Распишите Вашу задачу, спросите какой момент в ней не получается реализовать програмно - пост сразу оживет.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 09.04.2013, 17:03
#3
trir


 
Регистрация: 18.12.2010
Сообщений: 5,057


Imports OSGeo.MapGuide

http://wikihelp.autodesk.com/AutoCAD...060-Coordina60
Код:
[Выделить все]
 MgCoordinateSystem LL72Cs = csDict.GetCoordinateSystem("LL72");
 MgCoordinateSystem LL84Cs = csDict.GetCoordinateSystem("LL84");
 MgCoordinateSystem utm10n72Cs = csDict.GetCoordinateSystem("WGS72.UTM-10N");
 MgCoordinateSystem utm10n84Cs = csDict.GetCoordinateSystem("UTM84-10N");
 // geographic to geographic MgCoordinateSystemTransform LL72ToLL84 = coordSysFactory.GetTransform(LL72Cs, LL84Cs); 
// LL72ToLL84Coord is (-124.749846111111, 39.7500328381061) MgCoordinate LL72ToLL84Coord = LL72ToLL84.Transform(-124.75, 39.75); 
// geographic to projected MgCoordinateSystemTransform LL72ToUtm10n84 = coordSysFactory.GetTransform(LL72Cs, utm10n84Cs); 
// the transform result LL72ToUtm10n84Coord is in meters (350086.148700075, 4401477.98122743) 
MgCoordinate LL72ToUtm10n84Coord = LL72ToUtm10n84.Transform(-124.75, 39.75); 
// convert the result to degrees (-124.749846111114, 39.7500328381018) 
MgCoordinate utm10n84LonLatCoord = utm10n84Cs.ConvertToLonLat(350086.148700075, 4401477.98122743); 
// projected to projected MgCoordinateSystemTransform utm10n72ToUtm10n84 = coordSysFactory.GetTransform(utm10n72Cs, utm10n84Cs);
 // convert (-124.75, 39.75) to "WGS72.UTM-10N" system units (meters)
 // which is (350072.941601698, 4401473.42938798) 
MgCoordinate utm10n72XYCoord = utm10n72Cs.ConvertFromLonLat(-124.75, 39.75); 
// the result is (350086.148699852, 4401477.98122696) 
MgCoordinate utm10n72ToUtm10n84Coord = utm10n72ToUtm10n84.Transform(350072.941601698, 4401473.42938798);
trir вне форума  
 
Автор темы   Непрочитано 10.04.2013, 07:19
#4
firefox0013


 
Регистрация: 05.04.2013
Сообщений: 8


Цитата:
Сообщение от Дима_ Посмотреть сообщение
Вы не забывайте что пишите в разделе "Программирование", и возможно не все понимают, что вы имеете в виду под словом "перепроецирование" (я например). Распишите Вашу задачу, спросите какой момент в ней не получается реализовать програмно - пост сразу оживет.
Задачу точно описать не могу. Задаче звучала как "оценить возможность перепроецирования силами AutoCAD" сейчас оно выполняется через ArcGis Geometry service.
Перепроецирование - перевод из одной системы координат в другую.

Цитата:
Сообщение от trir Посмотреть сообщение
Imports OSGeo.MapGuide
Хорошая идея. OSGeo.MapGuide есть не только в Map 3D но и в Civil.
firefox0013 вне форума  
 
Непрочитано 10.04.2013, 10:58
#5
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,840


Цитата:
Сообщение от firefox0013 Посмотреть сообщение
Задачу точно описать не могу. Задаче звучала как "оценить возможность перепроецирования силами AutoCAD"
Мне не подобрать слов, чтоб описать восторг полученный от прочтения этих предложений.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 10.04.2013, 11:11
#6
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381


Дима_, это "перепроецирование" техническим языком называется трансформация систем координат. "Проецирование" тут потому, что кроме систем координат, участвуют ещё и проекции (т.е. способ отображения земного эллипсоида на плоскость экрана или чертежа).

Обычно в ГИС-системах заложены описания систем координат и проекций ("ключи") и "перепроецирование" можно выполнить "кнопками" или с помощью встроенных средств программирования - просто применить функции. Если же ключей нет, то трансформация может выполняться афинными преобразованиями.

Вот тут возможно и написание своей программы, хотя как правило для конкретной ГИС эти программы давно "изобретены".
ShaggyDoc вне форума  
 
Непрочитано 10.04.2013, 17:59
#7
trir


 
Регистрация: 18.12.2010
Сообщений: 5,057


Цитата:
или с помощью встроенных средств программирования - просто применить функции
Вот тут собака и зарыта, Civil как бы не ГИС, но сделан на базе Map, который типа ГИС. Поэтому в справке Civil'а про это ни гугу, а искать надо в справке Map'а, а об этом ещё догадаться надо... особенности...
А когда залезаешь в справку Map по dotNet'у - то оказывается, что большинство ГИС функционала реализовано на Open Source, отсюда: http://mapguide.osgeo.org/
Что несколько поразительно, но понятно - если знать историю
trir вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Возможность перепроецирования

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Есть ли возможность добавить динамические блоки в панель (в виде кнопок) alevtina07 Динамические блоки 8 01.06.2010 10:07
Обновление авто - развод или реальная возможность? Regby Разное 97 31.03.2010 17:50
Возможность облицовки стеновых (фасадных) плит БМЗ металлокасетами, другими навесными системами? Shigeru Архитектура 2 09.07.2009 14:34
возможность спрямления криволинейных объектов antonio_k AutoCAD 11 15.04.2009 17:55
ищу СНиПы, регулирующие возможность перепланировки Юлия_ 79 Поиск литературы, чертежей, моделей и прочих материалов 7 05.04.2008 23:43