Параметры чертежа
Окно с параметрами чертежа Civil 3D со стороны UI вызывается командой _AeccEditDrawingSettings.
Со стороны API эти настройки доступны через свойство DrawingSettings у оболочки настроек SettingsRoot и описываются классом SettingsDrawing.
Единицы измерения и зона
Доступ к настройкам осуществляется через свойство SettingsDrawing.UnitZoneSettings и описываются классом SettingsUnitZone.
![[Pasted image 20260415160738.png]]
Далее рассмотрим, какие элементы на стороне UI чем на стороне API описаны:
| Элемент в настройках | Чем представлено в API | Чем описывается в API | Write | Примечание |
|---|---|---|---|---|
| Единицы чертежа | Свойство DrawingUnits | Перечисление DrawingUnitType | ✅ | |
| Преобразование британской системы единиц в метрическую | Свойство ImperialToMetricConversion | Перечисление ImperialToMetricConversionType | ✅ | |
| Единицы угловой меры | Свойство AngularUnits | Перечисление AngleUnitType | ✅ | |
| Масштабировать объекты, вставленные из других чертежей | Свойство ScaleObjectsFromOtherDrawings | bool | ✅ | |
| Установить соответствующие переменные AutoCAD | Свойство MatchAutoCADVariables | bool | ✅ | |
| Пользовательский масштаб | Свойство DrawingScale | double | ✅ | К выпадающему списку как в UI доступа нет. Вместо этого редактируйте данное свойство. |
| Категории: Доступные системы координат: Код выбранной системы координат Описание Проекция Референц-Эллипсоид | Свойство CoordinateSystemCode | string | ✅ | Вы можете вызвать статический метод GetAllCodes(), который вернёт коды всех загруженных систем координат.С помощью статического метода GetCoordinateSystemByCode можно получить определение СК по коду. И далее узнать её категорию Category и наименование Description.Описание, проекцию и референц-эллипсоид получить через свойства Description, Projection, Datum соответственно. |
Преобразование
Доступ к настройкам осуществляется через свойство SettingsDrawing.TransformationSettings и описываются классом SettingsTransformation.
| Элемент в настройках | Чем представлено в API | Чем описывается в API | Write | Примечание |
|---|---|---|---|---|
| Применить параметры преобразование | Свойство ApplyTransformSettings | bool | ✅ | Это свойство класса SettingsDrawing! |
| Описание зоны | Свойство CoordinateSystemCode | string | ❌ | Вернитесь к SettingsDrawing.UnitZoneSettings и вызовите через метод GetCoordinateSystemByCode информацию о СК чертежа, оттуда возьмите имя -Description |
| Применить масштабный коэффициент уровня моря | Свойство ApplySeaLevelScaleFactor | bool | ✅ | |
| Отметка (уровня моря) | Свойство SeaLevelScaleElevation | double | ✅ | |
| Радиус эллипсоида вращения | Свойство SpheroidRadius | double | ✅ | |
| Масштабный коэффициент сетки, вычисление (набор перечислений) | Свойство GridScaleFactorComputation | Перечисление GridScaleFactorType | ✅ | |
| Масштабный коэффициент сетки, величина масштабного коэффициент | Свойство GridScaleFactor | double | ||
| Центр поворота (флажок) Указать угол поворота сетки (флажок) | Свойство SpecifyRotationType | Перечисление SpecifyRotationType | ✅ | Для "Центр поворота" = RotationPoint; Для "Указать угол поворота сетки" = GridRotationAngle |
| Указать угол поворота сетки, значение "К северу" | Свойство RotationToGridNorth | double | ✅ | |
| Указать угол поворота сетки, значение "Азимут" | Свойство RotationToGridAzimuth | double | ✅ | |
| Центр поворота, Локальное северное положение Центр поворота, Локальное восточное положение | Свойство LocalRotationPoint | Point2d | ✅ | Компонента X описывает восточное положение; компонента Y описывает северное положение |
| Центр поворота, Северное положение в координатах сетки Центр поворота, Восточное положение в координатах сетки | Свойство GridRotationPoint | Point2d | ✅ | Компонента X описывает восточное положение; компонента Y описывает северное положение |
| Опорная точка, Локальное северное положение Центр поворота, Локальное восточное положение | Свойство LocalReferencePoint | Point2d | ✅ | Компонента X описывает восточное положение; компонента Y описывает северное положение |
| Опорная точка, Северное положение в координатах сетки Центр поворота, Восточное положение в координатах сетки | Свойство GridReferencePoint | Point2d | ✅ | Компонента X описывает восточное положение; компонента Y описывает северное положение |
Слои объекта
Доступ к настройкам осуществляется через свойство SettingsDrawing.ObjectLayerSettings и описываются классом SettingsObjectLayers.
Перечень всех объектов (первая колонка настроек), для которых может иметься некоторый слой, приведен в системном перечислении SettingsObjectLayerType. Для редактирования информации о слое вызовите метод SettingsObjectLayers.GetObjectLayerSetting для заданного типа объекта (перечисления SettingsObjectLayerType).
- Слой: свойство
LayerIdилиLayerName. При редактировании предпочтительно задавать черезLayerId, при чтении можно черезLayerNameсчитывать имя слоя (в альтернативу полученияLayerTableRecordчерезLayerId); - Модификатор: свойство
Modifier(представлено перечислениемObjectLayerModifierType, названия очевидны и в комментировании не нуждаются); - Значение: свойство
ModifierValue(заполняется только, еслиModifier=ObjectLayerModifierType.SuffixилиModifier=ObjectLayerModifierType.Prefix) - какой у слоя будет суффикс или префикс соответственно); - Заблокировано: свойство
Locked;
Перечень сокращений
Доступ к настройкам осуществляется через свойство SettingsDrawing.AbbreviationsSettings и описываются классом SettingsAbbreviation.
Каждое из свойств класса SettingsAbbreviation описывает одну из групп сокращений:
| Имя группы в UI | Свойство в API | Чем описывается | Примечание |
|---|---|---|---|
| Текст общего назначения | GeneralText | SettingsAbbreviationGeneral | |
| Текст для точки геометрии трассы | AlignmentGeoPointText | SettingsAbbreviationAlignment | |
| Данные объекта для точки геометрии трассы | AlignmentGeoPointEntityData | SettingsAbbreviationAlignmentEnhanced | |
| Вираж | Superelevation | SettingsAbbreviationSuperelevation | |
| Возвышение наружного рельса | Cant | SettingsAbbreviationCant | |
| Профиль | Profile | SettingsAbbreviationProfile | |
| Функциональность самих классом похожа. Имеется некоторое перечисление, для которого получаются настройки и задаются настройки (в виде строк). |
Параметры среды
Доступ к настройкам осуществляется через свойство SettingsDrawing.AmbientSettings и описываются классом SettingsAmbient.
Некоторые параметры среды (отдельные свойства) в UI имеют серый цвет и не доступны для редактирования, со стороны API к них также нет доступа для данной группы.
Все остальные свойства, характеризующие параметры среды, в API доступны только для чтения - никакие из них нельзя изменить!
Общие
Группа свойств описывается классом SettingsAmbient.SettingsGeneral и доступна через свойство General.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Тип отображения единиц при печати | Свойство PlottedUnitDisplay | Перечисление PlottedUnitDisplayType | |
| Задание единиц измерения AutoCAD | |||
| Сохранить изменения параметров команды | Свойство SaveCommandChangesToSettings | bool | Описывается PropertyBoolean, но по факту это обычный boolean |
| Отображать средство просмотра событий | Свойство ShowEventViewer | bool | |
| Показать подсказки | Свойство ShowToolTips | bool | |
| Преобразование британской системы единиц в метрическую | |||
| Состояние всплывающей подсказки для нового объекта | Свойство NewEntityToolTipState | bool | |
| Направление движения транспорта | Свойство DrivingDirection | Перечисление DrivingDirectionType | |
| Единица измерения на чертеже | |||
Также имеется свойство IndependentLayerOn - возвращает или задает признак, будет ли отображаться объект в зависимости от видимости его слоя. Согласно официальной справке свойство эквивалентно SettingsObjectLayers.ObjectControlledByLayer. |
Степень кривизны
Группа свойств описывается классом SettingsAmbient.SettingsDegreeOfCurvature и доступна через свойство DegreeOfCurvature.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единицы длины хорды | Свойство UnitChordLength | double | |
| Единица длины дуги | Свойство UnitArcLength | double |
Назначение меток
Группа свойств описывается классом SettingsAmbient.SettingsLabeling и доступна через свойство Labeling.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Метод запроса меток | Свойство PromptMethod | Перечисление LabelingPromptType | Запретить запросы = Suppress Командная строка = CommandLine Диалоговое окно = Dialog |
Время
Группа свойств описывается классом SettingsAmbient.SettingsTime и доступна через свойство Time.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление TimeUnitType | Запретить запросы = Suppress Командная строка = CommandLine Диалоговое окно = Dialog |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | Стандартное округление = Normal Округление вверх = Up Усечение = Truncate |
Безразмерный
Группа свойств описывается классом SettingsAmbient.SettingsUnitless и доступна через свойство Unitless.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Расстояние
Группа свойств описывается классом SettingsAmbient.SettingsDistance и доступна через свойство Distance.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Размер
Группа свойств описывается классом SettingsAmbient.SettingsDimension и доступна через свойство Dimension.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Координата
Группа свойств описывается классом SettingsAmbient.SettingsCoordinate и доступна через свойство Coordinate.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Координата сетки
Группа свойств описывается классом SettingsAmbient.SettingsGridCoordinate и доступна через свойство GridCoordinate.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Отметка
Группа свойств описывается классом SettingsAmbient.SettingsElevation и доступна через свойство Elevation.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Площадь
Группа свойств описывается классом SettingsAmbient.SettingsArea и доступна через свойство Area.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление AreaUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Объём
Группа свойств описывается классом SettingsAmbient.SettingsVolume и доступна через свойство Volume.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление VolumeUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Скорость
Группа свойств описывается классом SettingsAmbient.SettingsSpeed и доступна через свойство Speed.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление SpeedUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Угол
Группа свойств описывается классом SettingsAmbient.SettingsAngle и доступна через свойство Angle.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление SpeedUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType | |
| Отбрасывать дробную часть для целочисленных значений | Свойство DropDecimalForWholeNumbers | Перечисление DropDecimalWholeType | |
| Отбросить начальные нули для градусов | Свойство DropLeadingZerosForDegrees | Перечисление DropLeadingZeroType |
Направление
Группа свойств описывается классом SettingsAmbient.SettingsDirection и доступна через свойство Direction.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление AngleUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Формат | Свойство Format | Перечисление AngleFormatType | |
| Направление | Свойство Direction | Перечисление DirectionDisplayType | |
| Заглавные буквы | Свойство Capitalization | Перечисление DirectionNameDisplayType | |
| Знак | Свойство Sign | Перечисление SignType | |
| Тип измерения | Свойство MeasurementType | Перечисление VectorMeasurementType | |
| Четверть румба | Свойство BearingQuadrant | Перечисление BearingQuadrantType | |
| Отбрасывать дробную часть для целочисленных значений | Свойство DropDecimalForWholeNumbers | Перечисление DropDecimalWholeType | |
| Отбросить начальные нули для градусов | Свойство DropLeadingZerosForDegrees | Перечисление DropLeadingZeroType |
Широта Долгота
Группа свойств описывается классом SettingsAmbient.SettingsLatLong и доступна через свойство LatLong.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление AngleUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Формат | Свойство Format | Перечисление AngleFormatType | |
| Направление | Свойство Direction | Перечисление DirectionDisplayType | |
| Заглавные буквы | Свойство Capitalization | Перечисление DirectionNameDisplayType | |
| Отбрасывать дробную часть для целочисленных значений | Свойство DropDecimalForWholeNumbers | Перечисление DropDecimalWholeType | |
| Отбросить начальные нули для градусов | Свойство DropLeadingZerosForDegrees | Перечисление DropLeadingZeroType |
Уклон
Группа свойств описывается классом SettingsAmbient.SettingsSlope и доступна через свойство Slope.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление SlopeFormatType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Откос
Группа свойств описывается классом SettingsAmbient.SettingsGrade и доступна через свойство Grade.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление GradeFormatType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Уклон/откос
Группа свойств описывается классом SettingsAmbient.SettingsGradeSlope и доступна через свойство GradeSlope.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление GradeSlopeFormatType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Пикет
Группа свойств описывается классом SettingsAmbient.SettingsStation и доступна через свойство Station.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление LinearUnitType | |
| Формат | Свойство Format | Перечисление StationFormatType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType | |
| Символ разделителя пикетов | Свойство StationDelimiterCharacter | Перечисление StationDelimiterCharacterType | |
| Позиция разделителя пикетов | Свойство StationDelimiterPosition | Перечисление StationDelimiterPositionType | |
| Отбрасывать дробную часть для целочисленных значений | Свойство DropDecimalForWholeNumbers | Перечисление DropDecimalWholeType | |
| Отбросить начальные нули для градусов | Свойство DropLeadingZerosForDegrees | Перечисление DropLeadingZeroType | |
| Минимальная ширина отображения | Свойство MinimumDisplayWidth | int |
Ускорение
Группа свойств описывается классом SettingsAmbient.SettingsAcceleration и доступна через свойство Acceleration.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление AccelerationUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Давление
Группа свойств описывается классом SettingsAmbient.SettingsPressure и доступна через свойство Pressure.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Единица | Свойство Unit | Перечисление PressureUnitType | |
| Точность | Свойство Precision | int | |
| Округление | Свойство Rounding | Перечисление RoundingType | |
| Знак | Свойство Sign | Перечисление SignType |
Прозрачные команды
Группа свойств описывается классом SettingsAmbient.SettingsTransparentCommands и доступна через свойство TransparentCommands.
| Имя свойства в UI | Что отвечает в API | Чем описывается | Примечание |
|---|---|---|---|
| Запрос на ввод 3D точек | Свойство PromptFor3DPoints | bool | |
| Запрос на ввод Y до ввода X | Свойство PromptForYBeforeX | bool | |
| Запрос на ввод восточного положения до ввода северного положения | Свойство PromptForEastingThenNorthing | bool | |
| Запрос на ввод долготы до ввода широты | Свойство PromptForLongitudeThenLatitude | bool |