Перейти к содержанию
1 / 6
2 / 6
3 / 6
4 / 6
5 / 6
6 / 6

Скрипты для Рино и Т-сплайнов


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

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

Очередная редакция панельки "Кривые для Т-сплайнов". Подредактированы кнопки Проецирование, Проецирование через ленточку и Ленточка.
Огромное спасибо Лене Добушанке, с её помощью создана новая кнопка "Рисование кривых на полиповерхностях".
Панелька
post-14388-1363267197.png
Новая кнопка работает следующим образом
На левой клавише сидит аналог интеполяционной кривой на поверхности. Включаете кнопку и начинаете выставлять точки на поверхности. Получающаяся картинка будет выглядеть так
post-14388-1363267489_thumb.jpg
К сожалению не получается у меня сделать как в оригинальной риновской команде, когда кривая "тянется" за точкой. Единственное что смгла сделать -- это соединять прокладываемые точки линиями. Закончили, нажали Enter -- скрипт нарисует кривую интерполяцией по проложенным точкам и притянет результат к поверхности.
post-14388-1363268292_thumb.jpg
Что бы нарисовать замкнутую кривую надо включить привязку End и последнюю точку поставить на первую. Кривая замкнётся, но без привязки не сработает.
На правой кнопке всё то же самое, но проложенные точки будут контрольными точками образованной кривой до притягивания её к поверхности.
Собственно панель
от модератора. Ссылка удалена. Обращайтесь к автору поста.

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

Гаспар, спасибо за тему. Давно уже хотелось создать такую и собрать здесь всех помощников(все скрипты). Если вы не против.

Нельзя объять необъятное, но до чего же хочется.

мой сайт.

Тренинги по 3д конструированию

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

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

Простенький макрос на три строчки, который написался при обсуждении вот такой вот проблемы.
Получилась заплатка вот с такими вот загулявшими границами
post-14388-1363461158_thumb.jpg
Уплотннение сетки нетворка не решало проблему принципиально, то есть становилось лучше, но границы всё равно отклонялись от модельных линий.
После разглядывания внутренностей скрипта заплаток и эксперементов с настройками нетворка, пришло осознание, что границы заплатки портятся в момент притягивания нетворка к манекену и не сильно зависят от настроек самого нетворка.
Так что создался вот такой макросик (микросик), для удобства притягивания границ заплатки к модельной линии

 

! -_tsSelection SelectLoop
_tsPull PullType=SurfacePoints
_-tsEditMode SelectionMode=Edge _Enter

 

Перед нажатием кнопки подсвечивается грань с края который надо подтянуть, нажимается кнопка. После чего подсвечивается кривая к которой подтягивается заплатка, подтверждение и вуаля.
Достаточно подсветить одно ребро, не надо выделять весь край. Так можно подтягивать и внутренние рёбра к кривой -- если есть нужда.

 

Заплатка после обработки краёв
post-14388-1363462156_thumb.jpg

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Переписала скрипт заплатки. Капитально переписала. Сил писать описание и выкладывать пока нет. Но поинтриговать хочется.
Так что пока просто предварительный показ (превью короче).
Все видели, а кто не видел посмотрите постом выше бочок с границами пошедшими волной. Вот этот бочок после нового скрипта
post-14388-1363627123_thumb.jpg
Границы прибиты намертво гвоздями к модельным линиям. Точность прилегания к поверхности цели... Сейчас я вам покажу рукав реглан, что бы можно было оценить и PointDeviation
post-14388-1363627294_thumb.jpg
Как видно все точки хорошие, а под хорошей я обозначила точку, которая ближе чем 1мм к поверхности цели.
Что ещё интересно...
Развёртка. Разворачивается без проблем, но в скрипт я её не встраивала -- он и так получился монстрообразного размера -- более 400 строчек.
post-14388-1363627541.jpg
Я отказалась от вывода окончательного результата скрипта ввиде т-сплайнов -- это сразу сделало конструкцию легче и не смотря на довольно плотную затяжку комп не тормозится.
Ну и ещё.
Скрипт зациклен -- то есть затянув одну заплатку переходит к затяжке второй не выходя из скрипта. Направление нормали определяется теперь автоматом. Раскрашивает скрап поверхности тоже автоматом -- случайным выбором цвета.
Ну и наконец ещё одна фишка. Можно выбраннык кривые : сшивать и разрывать не выходя из скрипта, что позволяет качественно затягивать треугольники и линзы не создавая дополнительных линий.
Ну и тот самый бочок с которого всё и началось
post-14388-1363628378_thumb.jpg
На сем анонс завершаю.
Большое спасибо Наталье Павловне за предоставленное для испытаний сложнючее платье.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Итак новый скрипт для заплаток. Действительно новый. С другим алгоритмом. Предыдущие версии основывались на прижатии нетворка ,натянутого на границы, к манекену с помощью комбинации ретопоснапа и интерполяции. Этот алгоритм работал вполне удовлетворительно, но оказался недостаточным для точной натяжки заплаток на кривые сложных форм. Простое равномерно уплотнение сетки нетворка не решало задачи принципиально. Граничные точки заплаток просто соскакивают с модельных линий. Использование же пулла вместо комбинации ретопоснапа и интерполяции приводит к другой проблеме – заплатка начинает пузыриться. Всё это минимальные эффукты, которые становятся заметны только в отдельных сложных случая, но... хочется уметь создавать точные заплатки для нарезок любой формы.
В этом скрипте заплатка создаётся в несколько этапов. Сначала натягивается первый нетворк на модельные линии, с очень низкой точностью – чтобы сетка получилась достаточно редкая. Снимается сетка с этого нетворка и пуллом прижимается к манекену. Родной риновский пулл здесь не работает, так как кривая прижатая риновским пуллом к полиповерхности режется по швам этой полиповерхности, так что я использовала последний придуманный мною пулл. Я его выложу вмете со следующей редакцией панели «Кривые для т-сплайнов». Первый нетворк уничтожается. На новую сетку натягивается следующий нетворк уже с настоящей точностью. В зависимости от сложности модельных линий мне кажется разумным использовать 0.1 или 0.01. Сетка этого второго нетворка будет уже неравномерной, в отличие от первого. Ну и чтобы уж совсем залакировать результат и прижать заплатку наверняка, я конвертирую её в т-сплайн, окончательно прижимаю её пуллом и конвертирую её обратно в нурбсы. Обработка пуллом увеличивает точность прижатия заплатки к манекену и, поскольку заплатка уже находится очень близко к манекену не приводит к пузырению и заметной деформации сетки нетворка. Возможно по-этому заплатки этой редакции разворачиваются чуть ли не быстрее и легче, чем предыдущей – хотя сетки получаются плотнее.
Это в кратце об алгоритме. Теперь собственно инструкция, как пользоваться.
Во-первых, проверте нет ли запертых, но видимых поверхностей. Если есть -- спрячте их. Они не помешают работе скрипта, но могут затруднить выбор кривых для затяжки.
Второе, проверте направление нормали у манекена. Если нормаль направлена во-вне манекена, я буду называть её правильной. Дело втом, что я обнаружила, что когда я делала манекены я не следила за направлением нормали, а менять его у готового манекена мои т-сплайны отказываются. Так что часть моих манекенов вывернута наизнанку.
Вернёмся к скрипту. Скрипт отрабатывается в режиме диалога.
Нажали кнопку. Первый вопрос в командной строке
«Толерантность «, дефолтное значение 0.01. Это точность с которой заплатка будет натянута на границы. Если вы согласны с дефолтным значением – просто нажмите Enter, нет введите своё и тоже Enter.
Дальше «Подсветите обтягиваемую поверхность» --сответственно подсвечиваете манекен или рукав или... – то что вы обтягиваете заплатками. Это отличие от предыдущих скриптов – там подсвечивание поверхности цели не требовалось. Подтверждать не надо – достаточно хлопнуть на манекен.
Далее
"Направление нормали манекена правильное?" Если у вас манекен «на лицо» – соответственно дефолтное значение «да» -- просто Enter, если нет – соответсвенно «нет» и тоже ”Enter”. С нормалями мы закончили. Теперь скрипт будет сравнивать нормали заплаток с нормалями манекена и выставлять направления нормалей заплаток автоматом, в отличие от предыдущих редакций. После этого скрипт также создаст слой «Заплатки» и сделает его активным – все заплатки будут складываться сюда.
И наконец проступаем к собственно созданию заплаток.
"Выберете кривые, чтобы прекратить работу скрипта нажмите Enter"
Подсвечиваете все кривые которые ограничивают вашу будующую заплатку (если их две -- значит две, три – три, четыре –четыре, пять – ..идея, я думаю понятна – что есть то и подсвечиваем, даже если это замкнутые кривые).
post-14388-1363647736_thumb.jpg
Подсветили, подтвердили. Скрипт спрячет все остальные поверхности и кривые, оставив на экране только подсвеченные кривые. Также эти кривые раскрасятся в случайные цвета – чтобы не спутать кривую с кривой.
post-14388-1363647774_thumb.jpg
Следующий вопрос в диалоге будет
"Редактирование кривых"
Дефолтный ответ «Нет». Мы начали с простого варианта, редактировать эти кривые определённо не надо, так что жмём Enter и ждём, пока комп делает свою работу – это не мгновенно, но и не минуту – секунд 10 –для моего. Появится заплатка
post-14388-1363647814_thumb.jpg
И скрипт задаст вопрос:"Вам нравится результат?". «Да» дефолтный ответ. Рассматриваете заплатку, если нравится соглашаетесь, нет – жмёте «Нет» и заплатка стирается. При любом дтвете мы закончили первый цикл и перешли ко второму. Опять
"Выберете кривые, чтобы прекратить работу скрипта нажмите Enter"
На этот раз выберем три направляющие для трегольника
post-14388-1363647882_thumb.jpg
И ответим «Да» на предложение редактировать кривые.
Следующий вопрос
"Выберете кривую, которую Вы хотите разорвать. Чтобы пропустить нажмите _Enter"
Выбираем кривую
"Выберете точку разрыва"Щёлкаете на выбранное место на кривой. Стрелка привязанна к выбранной кривой.
"Выберете точку разрыва"
Выбираете точку и разрываете кривую. Разорванная кривая раскрасится опять в случайные цвета – чтобы видеть разрез
post-14388-1363647911_thumb.jpg
Скрипт зациклен и соответственно предложит опять
"Выберете кривую, которую Вы хотите разорвать. Чтобы пропустить нажмите _Enter"
Нам больше ничего разрезать не надо, следовательно жмём Enter
"Выберете кривые, которые Вы хотите сшить. Чтобы пропустить нажмите _Enter"
Сшивать тоже нечего – жмём Enter
"Уточнить выбор кривых?"
Дефолтный ответ «Нет». Имеющиеся кривые вполне образуют нетворк – ничего лишнего нет-- жмём Enter.
И ждём пока заплатка сформируется.
post-14388-1363647943_thumb.jpg
Дальше та же рутина – нравится – не нравится. Нажмём «Нет», для примера. Заплатка стёрлась, мы вернулись к предыдущей картинке и нам опять предложили выбрать кривые.
На этот раз подсветим те же три кривые и не будем их редактировать. Заплатка тем не менее сформируется.
post-14388-1363647981_thumb.jpg

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Но такой тругольничек развернётся с крошечными брызгами
post-14388-1363648386_thumb.jpg
И острый уголок у него будет сильнее загнут чем у треугольника на разорванной стороне. Это я к тому, чтотреугольники можно, конечно, затягивать не разрывая стороны, но надёжнее разорвать. Кроме того нетворк уж точно не построится на «линзе» -- на двух кривых или даже на одной замкнутой.
Ну и на последок затянем заплатку используя все опции. Выберем кривые
post-14388-1363648419_thumb.jpg
Здесь заплатка ограничена пятью кривыми. Выберем опцию редактирования и разорвём кривую
post-14388-1363648464_thumb.jpg
Сошьём другую
post-14388-1363648490_thumb.jpg
И уточним выбор, так как у нас появилась лишняя кривулька
post-14388-1363648526_thumb.jpg
Ну и результат
post-14388-1363648554_thumb.jpg
Разглядываем – соглашаемся или нет и переходим к следующёму циклу – пока не закончим затяжку.
post-14388-1363648589_thumb.jpg
Цвет заплатке присваевается случайный.
После каждого цикла набор кривых возвращается к стартовому.

 

Отредактированная версия кнопки включена в панель, выложенную в этом сообщении

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Тамара, огромное спасибо!
Испытала в действии. Это фантастика!
Screenshot___19.03.2013___8_33_02.png
Попробовала развернуть часть полочки, где не было разреза через грудь. Развернулось замечательно, но, как и ожидалось, выпуклость стянулась, края около этой выпуклости растянулись.
Попробовала порезать заплатку по выпуклости (т.е не делала мелкие заплатки, а разрезала большую, образованную нетворком по 4 кромкам).
Так как поверхность заплатки очень качественная, разрезанные кусочки развернулись замечательно.
Думаю, можно делать комбинированный способ на относительно плоских поверхностях, что то затягивать крупными заплатками, потом их резать обычной командой Split и затем разворачивать.
Screenshot___19.03.2013___8_35_41.png

Мой блог

 

3Д лекала дистанционно

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

Гаспар, спасибо Вам огромное ! Вы делаете огромный шаг вперёд в манекено-строении .....с помощью ваших скриптов изучение т-сплайнов просто удовольствие ! Ещё раз, большое спасибо!

Если вы позволите себе быть любопытной,то откроете для себя мир,о котором вы не могли и мечтать. Ханае Мори

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

Самая последняя из последних редакция "Заплаток зацикленных". Огромное спасибо Ryba за неоценимую помощь в тестированнии. Надеюсь, что это всё.
(Но в пяти предыдущих редакциях я тоже надеялась).
На что хотелось бы обратить внимание. При затяжке манекена у меня нмкаких проблем не возникает. Насколько я знаю, Наталья Павловна его тоже опробовала ( вторую, кажется редакцию), и у неё тоже проблем не возникло. Но, как обнаружила Ryba, существуют "проблемные" объекты. Например такая пилюлька
post-14388-1363865018_thumb.jpg
При запуске скрипта и выбора этой пилюльки как объекта затяжки, Рино начинает ругаться нехорошими словами, а именно выскакивает табличка, где написанно:" T-spline was converted to Rhino Object by the SelAll command" ( т-сплайн был конвертированн в рино объект командой выбрать всё). Если такая табличка выскакивает пугаться не надо -- соглашайтесь -- Рино отдублирует сплайн в набор риновских поверхностей, но сам т-сплайн объект сохранит в неприкосновенности. Отъискивать потом в файле эти артефактные поверхности тоже не надо. В скрипте учтена возможность такого осложнения и при завершении работы он всё почистит.

 

Также к заплаткам приложена кнопка "вытачки на геодезической полилинии". Обсуждение возможности и методов создания вытачек на заплатках началось с этого поста т-сплайновской темы и соответственно ниже.
Не много о кнопке. Кнопка создаёт тонкий рез (порядка 0.1-0.2 мм) вдоль полилинии, отрезки которой являются геодезическими разрезаемой поверхности. Если начало или конец вытачки близко к краю -- ближе чем 0.5 см -- прорезает этот край насквозь, если дальше то рез остаётся внутри поверхности. Если полилиния уж больно заковыристая ( например резкий частый зигзаг), то скрипт может не отработать должным образом -- рез не создастся или прорежутся только отдельные отрезки.
Поскольку рез достаточно тонкий, то эту кнопку удобно также использовать просто для "сквозного" разрезания заплатки. Тока у одного края, точка у другого -- и заплатка разрезана по геодезической.
Панель здесь.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Скрип для создания меток вдоль кривой. Ссылка.
Выложенно панелью: Заплатки, вытачки, метки. Две первые кнопки от предыдущей выкладки не отличаются.
Подсвечиваете манекен -- ту поверхность на которой лежит кривая, не заплатку.
Подсвечиваете кривую и хлопаете левой кнопкой в тех точках, гле хочется меток. Скрипт выстреливает в лево/ право от кривой метками по 2 см. Вот и всё. Чтобы выйти как обычно хлопнуть на Enter. Не помню указалая это в диалоговой строке или нет. Если забыла -- добавлю в следующей выкладке.
Результат
post-14388-1363875723_thumb.jpg
Забыла добавить, скрипт создаёт отдельный слой "Метки". Если это кажется излишним, то идём в текст кнопки и удаляем эти строчки
If Rhino.IsLayer("Метки") Then
Rhino.CurrentLayer("Метки")
'RGB(, , ) -- выбор цвета, для смены надо поменять цифры
'Rhino.LayerColor "Метки", RGB(0, 255, 255)
Else
Rhino.AddLayer("Метки")
Rhino.CurrentLayer("Метки")
'RGB(, , ) -- выбор цвета, для смены надо поменять цифры
'Rhino.LayerColor "Метки", RGB(0, 255, 255)
End If
Они на верху скрипта -- искать долго не придётся. Или можно поменять название -- соответственно все метки заменить на новое название. Можно добавить цвет слою -- стереть апостроф перед строчками, которые начинаются Rhino.LayerColor, только поставьте другой цвет, там красный от МодЛинии остался.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

В связи вдруг вспыхнувшим интересом к сетям, выкладываю скрипт для создания лекал как из развёрток поверхности , так и сети. Скрипту без разницы. Создаётся новый слой "Лекала", на который складываются сгруппированные, причёсанные и разорванные по углам контуры развёрток. Все метки сгруппированные с развёрткой будут откопированны на этот слой и сгруппированны между собой и потом с границами. Цвет контуров наследуется по цвету поверхностей, цвета меток, если присвоены специальные -- сохраняется. Все остальные слои закрываются. Не знаю ещё -- возможно это излишество.
Прикреплённый скрипт ввиде эдиторовского файла.
lecala_211_03.zip

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

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

Отредактированная панель "Кривые для т-сплайнов". Там есть новые кнопки. К сожалению, у меня сейчас совсем нет времени писать пояснения, но я постаралась сделать панель понятной. Новые кнопки дублируют аналогичные родные Риновские кнопки, только на полиповерхностях. Если возникнут вопросы и непонятки -- спрашивайте -- я, конечно, отвечу.
И ещё один простенький скриптик, как-то так написался -- может кому полезно будет -- рисование интерполяционной кривой на сети.
______________.zip

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Пока Тамара занята, проанонсирую её новый скрипт.
Построение клиньев-годе
Задаётся высота начала годе, угол разведения, радиус сопряжения, ставятся метки на вертикальных срезах для точного совмещения срезов при пошиве, указывается долевая каждого клина, удаляются лишние линии и метки, оставшиеся от составления пазлов, все оставшиеся линии сгруппированы между собой.
Очень быстро и удобно!
Синий цвет - обводка развёртки, чёрный - клинья годе после работы скрипта.
Screenshot___28.03.2013___11_26_51.png

Изменено пользователем Natamoda

Мой блог

 

3Д лекала дистанционно

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

Анонсированный скрипт.
Построение клиньев-годе
Это был совместный проект с Натальей Павловной. Наталья Павловна написала заметку, как она создаёт клинья годе, ну а я перевела это в скрипт.
Итак у нас есть вот такие заготовки для лекал.
post-14388-1364495855_thumb.jpg
Запускаем скрипт.
Скрипт попросит выбрать длину годе и затем угол отведения. Установле ны дефолтовые значения 37 и 20, но они могут быть любыми, которые вам нужны. Главное, чтобы длина годе не превосходила длину самого короткого бокового среза, из тех, что планируются разводится. По-хорошему, нужен запас 5-10 см, чтобы не срывалось сглаживание уголка в точке отведения.
Скрипт попросит подсветить первый срез разводимый для годе. На этом первом срезе будут выбираться остальные настройки для дальнейшей работы скрипта. Итак, подсветили...
Дальше скрипт попросит выбрать глубину отведения. Что это такое?
Многие хорошо знают скрипт Добушанки для конического разведения. Там происходит разбивание горизонтальных срезов на равные кусочки и равномерное их разведение. Здесь другое построение... Горизонтальный срез – подол разрывается только в одном месте и отводится вместе с боковым срезом и в разрыв вставляется клин.
post-14388-1364495955_thumb.jpg
Вот так вот. Вот расстояние от бокового среза до вершины вставленного клина и есть эта самая глубина отведения. Мне показалось удобным определять количеством частей, на которык делится нижний срез. Соответственно, если вы выбираете дефолт –2--, то скрипт поделет на два длину нижнего среза, запомнит результат и на этом расстоянии от вертикальных срезов будет вставлять клинья для всех остальных деталей. Если выбрать это значение достаточно большим – скажем 10, то результат работы скрипта будет эквивалентен просто приставлению клина к вертикальному срезу.
Дальше на экране скрипт представит первый вариант сопряжения по боковому шву. И споросит:»Нравится «да», «нет»». Если сопряжение вамкажется не достаточно плавным жмёте нет – пока оно вам не начнёт нравится. Обратного хода у этой процедуры нет – так что если промахнулись,-- завершаете работу скрипта, делаете UnDo и запускаете скрипт по новой. Много времени это не занимает – уж заведамо быстрее чем в ручную. После того, как было выбрано сопряжение удовлетворительной гладкости – оно будет использовано для всех остальных вертикальных срезов. После завершения выбора гладкости, скрипт закончит обработку первого среза и выставит метку и также у метки напечатает в см на сколько укоротился обработанный срез. Мне это кажется полезной информацией. Чтобы не загромождать построение цифры будут проставлены только для первого среза – поскольку для остальных они будут те же.
Дальше просто последовательно подсвечиваете вертикальные срезы. Если у одной детали модифицируются оба вертикальных среза, скрипт проставит для этой детали долевую.
Когда вы переберёте все нужные срезы – нажмите Enter. Далее скрипт предложит подсветить ненужные метки. Подсвечиваете – хоть рамкой, хоть как. Не бойтесь стереть новые метки – они под замком. Энтер – мусор убран – скрипт закончил работу.
Новые метки, долевые и цифры сгруппированы с соответствующими контурами.
Ну и вот результат
post-14388-1364495996_thumb.jpg
Ну и цифирьки плохо видно
post-14388-1364496027_thumb.jpg
Ссылка на скрипт

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Хочу добавить, что глубина отведения зависит от свойств ткани, способность растягиваться вдоль косого среза.
Screenshot___26.03.2013___11_34_42.png
Т.е. отвечает за то, на какую величину будет наложение воображаемого прямоугольника в области вертикального среза при повороте.
Если ткань шифон, глубину отведения ставим 2 или 3, получаем максимальное сокращение вертикального среза, который при пошиве и Вто растянется. Если ткань жёсткая (хотя, какое может быть годе при жёсткой ткани?), глубину отведения ставим 4-6.
Глубина отведения ещё зависит и от высоты клина, чем короче клин, тем больше величина ( 4-6). С опытом придёт понимание в выборе параметров. Если ошиблись в каких то цифрах, перезапустить скрипт недолго.

Изменено пользователем Natamoda

Мой блог

 

3Д лекала дистанционно

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

Хочу поделиться способом как повесить скрипт с расширением ".RVB"на кнопку.
Создадим шаблон для скрипта в блокноте. Напишем в нем две строчки
первая
!-_Runscript (

 


пропустим несколько строчек

 

последняя содержит только скобку
)

 

p116.jpg
Сохраним шаблон. Теперь всякий раз, когда нужно будет повесить скрипт на кнопку, мы будем вставлять скрипт ".RVB" между двух строк.
Откроем с помощью блокнота скрипт ".RVB". Скопируем текст и вставим в шаблон.
p117.jpg
Сохраним шаблон под новым именем.
Откроем рино.
Найдем макроэдитор (редактор макросов) и вставим в него содержимое из только что созданного скрипта в шаблоне
p119.jpg
Проверим работу скрипта, запустив его на исполнение
Если скрипт работает удовлетворительно, можно повесить его на кнопку. Для этого создадим новый тулбар или новую кнопку в уже имеющемся тулбаре
p121.jpg
Появится табличка в которую нужно вставить текст скрипта из макроэдитора.
p120.jpg
Здесь же можно включить отображение кнопки либо текст, либо рисунок, либо и то и другое. Подписать контектную подсказку, можно по русски и сказать ОК. Обязательно проверьте, не потерялась ли последняя скобочка.
Еще раз проверим скрипт, уже нажав на новую кнопку
p122.jpg
Если скрипт не заработал.
Проблема, из-за которой не работал скрипт после переноса из эдитора у меня встречалась только одна. Почему то пропадал пробел в строке !-_Runscript ( то есть копировалось так !-_Runscript(
После исправления скрипт работал.
Почему удобно вешать скрипт на кнопку?
Известно, что скрипты можно подгружать по мере необходимости. Но в случаях, когда скрипты часто редактируются и еще не окончательно отработаны удобно вешать их на кнопку. Да и вообще мне этот способ больше нравится. Нужное всегда на виду.

Нельзя объять необъятное, но до чего же хочется.

мой сайт.

Тренинги по 3д конструированию

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

А я делаю тоже самое минуя блокнот и макроредактор. Через Риновский редактор скриптов.
Идём по пути Tools -> RhinoScript ->Edit
Откороется окно с RhinoScriptEditor. Там идём соответственно в File -> Open. Открывается браузеровское окошко. Выбираете нужный файл с расширением с расширением ".RVB". Ошибиться собственно не возможно -- браузер редактора только такие и видит. Открыли. Скрипт можно сразу запустить из редактора. Для этого смотрим на иконки на верху
post-14388-1364551269_thumb.jpg
и жмём на ту, на котору показывает зелёная стрелка на скрине.
Здесь же удобно внести какую- либо правку в текст скрипта. Редактор использует цветовою кодировку, линии демонстрирующие внутренние связи в скрипте и прочие примочки. Слева есть окошко с исключительно информативной справкой -- все мои познания в скриптописании -- из этой справки. По началу я кинулась учить этот самый вижуал бейсик, но потом осознала, что всё нужное для Риновских скриптов есть в этой справке и учить язык целиком, по внешнему пособию нет нужды, по крайней мере для меня на моём нынешнем уровне развития. Прошу прощения за личные подробности.

 

Итак, скрипт работает -- время сажать на кнопку.
Ну и тут я повторяю действия, которые описала Кадрен, только с той разницей, что заветную рамку
!-_Runscript ( ............ )
я делаю прямо в кнопке и сажаю текст скрипта внутрь этой рамки.

 

Редактор скриптов встроен автоматом только в пятую версию. Для четвёрки надо пользоваться либо способом описанным Кадрен либо искать и инсталировать Риновский MonkeyScript, он вроде бесплатный.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

Тамара, через скриптэдитор это уже высший пилотаж. Удобно, когда нужно править скрипт. Но для начинающих изучать рино, сложно.

Нельзя объять необъятное, но до чего же хочется.

мой сайт.

Тренинги по 3д конструированию

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

Катерина, в общем и целом -- согласна. Но, с другой стороны, через скриптовый редактор на один шаг меньше -- минуется стадия блокнота. Ну и потом вовсе не обязательно сразу редактировать.
Но зато в блокноте и макроредакторе кнопок меньше.
Так что баш на баш -- дело личных предпочтений.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

А я тем временем с очередными редакциями... Чувствую себя почти маньяком.
Подправила Годе.
Захотелось мне чтобы скрипт и стаким справлялся
post-14388-1364565734_thumb.jpg
Предыдущая редакция ожидаемо не справилась ( при глубине разведения 2). Почему ожидаемо уточнять и утомлять вас геометрическими построениями не буду. Получилась вот такая кракозяба
post-14388-1364565854_thumb.jpg
и скрипт ещё при этом грязно ругался в процессе.
Переписала. Добавила всякой устойчивости. Теперь в вопросе про глубину отведения скрипт предлагает минимально возможную величину, получаемую из учёта формы детали и высоты годе. При меньших значения построение будет срываться, да скрипт и не даст вам возможности ввести меньшее значение, при попытке -- ругнётся: "Number must be bigger than or equal to ...." ( число должно быть больше или равно...). Собственно всё. Чёрная деталька пропущенная через новую редакцию
post-14388-1364566237_thumb.jpg

 

Годе выложено в виде панели с заплатками. Там тоже была проделана косметическая правка и не только косметическая. Заплатки слегка отредактировала -- теперь комп не задумывается после подсветки манекена. На правую кнопку повесила вариант с отключёнными диалогами про выбор направления нормали и точность.
Вытачки отредактированы существенно и теперь должны резать поверхности не только в моих файлах. В предыдущей редакции была петрушка с толерантностью -- я совсем забыла, что в своих глобальных настройках понижала дефолтовую точность риновских файлов. Учтено... Ну и ещё устойчивости добавлено по мелочам. Теперь должен резать, ну а как уж разворачиваться будет -- это попрежнему как повезёт, хотя везти стало определённо чаще.
post-14388-1364566686_thumb.jpg
Вот пример порезанного и развёрнутого.
Метки и лекала без изменений -- на сколько я помню.
Во все кнопках !-Runscript заменён на !-_Runscript -- из уважения к потенциальным руссификаторам.
Собственно вот и весь отчёт
Панель как обычно на депозите.

Изменено пользователем Гаспар
Ссылка на сообщение
Поделиться на другие сайты

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

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