Перейти к публикации

Всякие Простые Вопросы


GOLF_stream

Рекомендованные сообщения

хотел продолжить старую тему, но не нашёл. А вопросики простенькие.

1. Не нашёл функцию округления числа до целого (типа round). Есть ceil и floor, но это не совсем то, что надо.

Может, она иначе называется? Или её вообще нет?

2. Какой параметр в prodetail управляет количеством отображаемых десятичных знаков? Причём, не только в размерах, но и в параметрах. Надо, чтобы значение параметра в тексте отображалось без лишних нулей после запятой.

Или для параметров отдельные настройки?

Ссылка на сообщение
Поделиться на других сайтах


по первому вопросу

ХЗ :sad:

по второму вопросу

&param_name[.x]

где param_name имя твоего параметра, а x число цыфр после запятой

Ссылка на сообщение
Поделиться на других сайтах

1. Не нашёл функцию округления числа до целого (типа round). Есть ceil и floor, но это не совсем то, что надо.

Может, она иначе называется? Или её вообще нет?

Может это функция itos? :doh: Но она, кроме округления до целого, преобразует числовое значение в текстовое. :g: Изменено пользователем V_B
Ссылка на сообщение
Поделиться на других сайтах

"Не нашёл функцию округления числа до целого (типа round). "

В хэлпе такого нет.

Пробовал создать параметр типа integer? Затем присвоить ему значение размера - но увы, параметр автоматически получает тип real. :wallbash:

Ссылка на сообщение
Поделиться на других сайтах

Specifying the Number of Decimal Places

You can add an optional argument to both the ceil and the floor functions that allows you to specify the number of decimal places for rounding. The syntax for functions with the rounding parameter is as follows:

ceil (parameter_name or number, number_of_dec_places)

floor (parameter_name or number, number_of_dec_places)

where number_of_dec_places is an optional value.

Consider the following information about number_of_dec_places:

It can be represented as a number or as a user-defined parameter. If the parameter value is a real number, it is truncated to an integer value.

It has a maximum value of 8. If this value is exceeded, the number being rounded (the first argument) is not rounded and the initial value is used.

The next examples show how ceil and floor are used without specifying the number of decimal places:

ceil (10.2) evaluates to 11

floor (–10.2) evaluates to –11

The next examples show the use of ceil and floor when specifying the number of decimal places:

ceil (10.255, 2) evaluates to 10.26

ceil (10.255, 0) evaluates to 11 [This is the same as ceil (10.255)]

floor (10.255, 1) evaluates to 10.2

floor (–10.255, 2) evaluates to –10.26

Ссылка на сообщение
Поделиться на других сайтах

А у меня такой вопросик:

в дереве модели объединил фичеры в группы и дал им названия

встала необходимость добавить новый фичер в группу, а как это сделать не удаляя ее ?

Ссылка на сообщение
Поделиться на других сайтах

Можно использовать следующую конструкцию для округления до целого:

if (A - floor(A,0)) >= 0.5

B= ceil (A,0)

else

B = floor(A,0)

endif

Ссылка на сообщение
Поделиться на других сайтах

функция ceil УВЕЛИЧИВАЕТ значение до ближайшего БОЛЬШЕГО целого

функция floor УМЕНЬШАЕТ значение до ближайшего МЕНЬШЕГО целого

ни то, ни другое не являются ОКРУГЛЕНИЕМ в математическом смысле

использовать целую процедуру для таких вещей - это круто! По-программистки.

Похоже, РТС в очередной раз предлагает своим пользователям потрахаться.

Хорошо, что на чертеже можно просто ограничить число десятичных знаков и значение будет именно ОКРУГЛЕНО. Что мне и надо было - именно на чертеже.

Но для параметров вопрос остаётся открытым - только через программирование :)

Ссылка на сообщение
Поделиться на других сайтах

Похоже, РТС в очередной раз предлагает своим пользователям потрахаться.

GOLF_stream

Но ПетяСи сейчас в другой политике, она отвечает на все пожелания официальных ИДи. Я для себя одного не могу купить даже минимум, но могу найти кучу дырок в процессе поиска решения простейшего решения вопроса!

Провайдеры, мы, пользователи ProE - поможем PTC! Админы, подскажите им как - и мы сделаем ProE для НАС!!!

Адрес: Мы, славяне (хотя это - ЕСКД, а, может и нет).

Ссылка на сообщение
Поделиться на других сайтах

Объясню проще, мне легче было подняться на байде из Гомеля в Кленки, чем подняться из Ченок в Гомель!

На всей трасе теплого течения нет!!!! А река узкая!

Ссылка на сообщение
Поделиться на других сайтах

Короче, легче самому допетрить и найти обходной путь, чем ждать пока ПеТроСи к людям повернётся какой-нибудь человеческой частью тела отличной от пятой точки?

Ссылка на сообщение
Поделиться на других сайтах

Вопросы поднимались и решались.

В чертеже:

Для размеров и параметров, не отображает лишние нули (обновить чертеж не забудьте):

lead_trail_zeros std_metric

lead_trail_zeros_scope all

Если нужно определенное количество знаков:

&Имя[.Количество цифр]

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...

Можно ли преобразовать числовое значение в текстовое, но не округляя как делает это функция itos?

и где вообще почитать про функции используемые в relations?

Ссылка на сообщение
Поделиться на других сайтах

Можно ли преобразовать числовое значение в текстовое, но не округляя как делает это функция itos?

и где вообще почитать про функции используемые в relations?

Нет. Воспользуйтесь поиском. Проблема обсуждалась, как и варианты решения.

В справке или документации.

Ссылка на сообщение
Поделиться на других сайтах

Можно ли преобразовать числовое значение в текстовое, но не округляя как делает это функция itos?

и где вообще почитать про функции используемые в relations?

Надо использовать не только функцию itos

Пример передачи десятичного диаметра в string:

a0= (ввести значение с модели)

/****************a1 -Целая часть от диаметра

a1=floor(a0, 0)

/*

/****************a2 -десятичнная часть (целая) от диаметра

a2=(a0-a1)*100

/*

/***************Целая часть от диаметра (символьное значение) c выводом значащего нуля

IF a1==0

CD="0"

ELSE

CD=itos(floor(a0, 0))

ENDIF

/*

/***************Контроль наличия десятичной точки у диаметра

IF (a0-a1)==0

point=""

ELSE

point=","

ENDIF

Diameter=CD+point+itos(a2)

Ссылка на сообщение
Поделиться на других сайтах

то есть напрямую вообще никак? а то бредово как то!

Для какой цели, просто интересно.
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   2 пользователя

    • botrox
    • SAPRonOff



×
×
  • Создать...