База знаний
- Онлайн руководство
- Блог проекта
- Вопросы и ответы
- Нормативы
- Обучающие примеры
- Инструкции
- Презентации
- Видеоролики с YouTube
- Совместимость
Применимо к
Группы вопросов
- Альбомы
- Мастер объектов
- Менеджер объектов
- Настройка
- Объекты
- Оси
- Отметки уровня
- Оформление
- Площади
- Размеры
- Редактор форм
- Таблицы
- Текст
- Универсальный маркер
- Установка
- Форматы
- Штампы
Читать новости в почте
Поиск
Вопросы и ответы
- Как экспортировать библиотеки пользовательских объектов, сохраненные в х32 формат mcd, в х64?
- Есть ли в СПДС GraphiCS аналог функции Excel «ОКРУГЛВВЕРХ»?
- Как сделать пересчет точки вставки текста стандартных деталей при динамическом выборе размеров?
- Как вставить текст в стандартную деталь?
- Как создать диалог сообщения для случая, когда соединяемые пользовательские объекты имеют параметрическую двунаправленную зависимость равенства, но не имеют одинаковых табличных значений?
- Как правильно написать окончание слова при формировании текстовой строки?
Ответы
Как экспортировать библиотеки пользовательских объектов, сохраненные в х32 формат mcd, в х64?
Теперь в базу добавился новый объект.
Есть ли в СПДС GraphiCS аналог функции Excel «ОКРУГЛВВЕРХ»?
Аналог функции Excel «ОКРУГЛВВЕРХ» (округление числа до ближайшего большего по модулю) — функция СПДС «int».
Например://округлит значение H объекта 1 до целого числа вверх
=int(num(Object1.H)+0.5)
// округлит значение до второго знака после запятой
=int(num(Object1.H)*100 + 0.5 )/100
Как сделать пересчет точки вставки текста стандартных деталей при динамическом выборе размеров?
Автоматического распознавания точки вставки текста не предусмотрено.
Для динамического размещения текста необходимо вручную отредактировать описание вида, заменив значение для координат динамическими параметрами.
Для иллюстрирующего примера вертикальное смещение текста при динамическом изменении высоты осуществляется заменой строки
UText(mp+oX*(0.0000)+oY*(100.0000), 0, 5.0000, 0.0000, -10.0000, ""+"Пример" + test+" ")
строкой
UText(mp+oX*(0.0000)+oY*(A), 0, 5.0000, 0.0000, -10.0000, ""+"Пример" + test+" ")
Как вставить текст в стандартную деталь?
Текст в фигурных скобках, распознанный при создании вида, будет считаться текстовым параметром.
Если текст в «кавычках», то он будет считаться статичным текстом.
Как создать диалог сообщения для случая, когда соединяемые пользовательские объекты имеют параметрическую двунаправленную зависимость равенства, но не имеют одинаковых табличных значений?
Нужно ввести функцию для объектов, описав её поведение в скрипте при несовпадении типоразмеров.
Подробное решение с файлами пользовательских библиотек можно посмотреть здесь.
Как правильно написать окончание слова при формировании текстовой строки?
Например, требуется формировать в строке спецификации в зависимости от геометрии: 1 обмотКА, 2 обмотКИ, 5 обмотОК, 21 обмотКА,
Добавляем в скрипт условия формирования строки спецификации.
// Формируем строку спецификации
// str - массив всех возможных вариантов окончаний
// в зависимости от числительного.
str[1] = "обмотка"; // одна
str[2] = "обмотки"; // две
str[3] = "обмоток"; // пять
num = n;
// Количество обмоток (параметр участвующий в отрисовке)
// если число больше 19, оставляем от него только
// старший разряд, потому что дальше окончания повторяются:
// 22 обмотки, 32 обмотки, 122 обмотки, ...
if (num > 19) num = num - 10*int(num/10);
// 1 - обмотка
if (num == 1)
s = str[1];
// 2, 3, 4 - обмотки
else if (num < 5 && num != 0)
s = str[2];
// всё остальное (0, 5-19) - обмоток
else
s = str[3];
sPartName = "Обмотка трансформатора, " + n + " " + s;
Важно: параметр sPartName (или любой другой параметр) должен быть опубликован в момент инициализации скрипта детали.
function ActHeader {
...
sPartName, "Ваше название параметра видимое для пользователя",
...
);
Формирование требуемой строки спецификации реализовано в скрипте параметрической библиотеки «Обмотка трансформатора».