doctorraz Posted June 23, 2018 Report Share Posted June 23, 2018 А вид сзади, кстати, включится при таком отражении? Это ж по идее внутренний процесс объекта..? лучше один раз увидеть))) при зеркалировании объект пишет внутренний номер проекции.. , но после открытия в форме меняет на правильный текущий.. в принципе движок не идеален, но если его не насиловать такой заумью типа зеркала... работает вполне адекватно Кубик.zip 4 Quote Link to comment Share on other sites More sharing options...
MCAD Posted June 24, 2018 Report Share Posted June 24, 2018 лучше один раз увидеть))) Предупреждать надо :-) 2 Quote Link to comment Share on other sites More sharing options...
Mитька Posted June 26, 2018 Report Share Posted June 26, 2018 Нано СПДС 6,0. 1. Можно ли в отчёт по параметрическим объектам автоматически докидывать их геометрию? Вроде было в нане что-то типа Object.Geometry или я ошибаюсь? Попробовал, не получилось. В качестве фонарного примера: собрать данные со всех линий на чертеже, объединить по типу и сделать что-то типа автоматических условных обозначений. Так? Да, так, спасибо. Правда в контексте генплана приложение идеи выглядит так себе в итоге... Quote Link to comment Share on other sites More sharing options...
Mитька Posted June 26, 2018 Report Share Posted June 26, 2018 (edited) А вид сзади, кстати, включится при таком отражении? Это ж по идее внутренний процесс объекта..? лучше один раз увидеть))) при зеркалировании объект пишет внутренний номер проекции.. , но после открытия в форме меняет на правильный текущий.. в принципе движок не идеален, но если его не насиловать такой заумью типа зеркала... работает вполне адекватно Так вот открытия в форме и хочется избежать. Если бы объекты "не насиловали такой заумью типа зеркала" - и вопроса бы такого не стояло... Представьте жилое 10 этажное здание, где вся арматура разложена объектами, по 4 слоя объектов на каждую плиту перекрытия. Т.е. тьма элементов. А теперь надо поставить рядом точно такое же здание, только зеркальное... Это ж если через форму или копированием, ппц будет полный. Или одно движение, если зеркалом. Пример, канеш, преувеличенный, но механика такая... Edited June 26, 2018 by Mитька 1 Quote Link to comment Share on other sites More sharing options...
Mитька Posted June 26, 2018 Report Share Posted June 26, 2018 Кстати, в нане СПДС 8.0 объекты как-нибудь изнасиловали хитро или оставили всё как минимум, как было..? А то непонятно, перетаскивать ли свои менянные или редактировать новые..? Да и вообще чего ждать не ясно... Quote Link to comment Share on other sites More sharing options...
MCAD Posted June 26, 2018 Report Share Posted June 26, 2018 перетаскивать ли свои менянные или редактировать новые..? Если вы что-то меняли в базе, то запустите утилиту конфигурации: C:\Program Files\Nanosoft\nanoCAD СПДС x64 8.0\mg11\McConfiguration.exe И синхронизируйте базу Quote Link to comment Share on other sites More sharing options...
Mитька Posted June 26, 2018 Report Share Posted June 26, 2018 (edited) Видимо, опять невнятно выразился. Я представляю себе, как пользоваться утилитой конфигурации. Мой вопрос о другом. Я допиливал часть вшитых в базу наны 6.0. объектов (в основном металлический профиль: двутавры, уголки и т.д.) под потребности организации (менял диалог, механику/кол-во ручек, геометрию и пр.) Т.е. сейчас они у меня такие, какие мне нужны. Поскольку я работал с базой 3-хгодичной давности, то в базе современной возможны 3 ситуации: - существовавшие там объекты 3х-годичной давности НЕ МЕНЯЛИСЬ разработчиками (т.к. "они и так совершенны") и тогда я просто заменю их своими. - существовавшие там объекты 3х-годичной давности МЕНЯЛИСЬ разработчиками (т.к. "никто не идеален, да и чего бы не переделать что-нибудь неважное") и тогда, заменив их своими, я могу проманать какое-нибудь приятное нововведение, не сразу заметное глазу. - таких данных нет, (т.к. "разработчик уволился, а собака съела его отчёт и т.д") - и в этом случае я буду отслеживать это уже сам для каждого объекта отдельно, просто это дольше. Вот мне и интересно, менялись ли СУЩЕСТВОВАВШИЕ РАНЕЕ объекты базы или изменения версий 7 и 8 коснулись иных сфер, а базу обошли. Edited June 26, 2018 by Mитька 1 Quote Link to comment Share on other sites More sharing options...
Volkov Posted June 27, 2018 Report Share Posted June 27, 2018 Вот мне и интересно, менялись ли СУЩЕСТВОВАВШИЕ РАНЕЕ объекты базы или изменения версий 7 и 8 коснулись иных сфер, а базу обошли. Менялись. Были добавлены формы в диалоги редактирования. Других радикальных изменений не было. Запрос #5105 Quote Link to comment Share on other sites More sharing options...
Mитька Posted June 27, 2018 Report Share Posted June 27, 2018 Спасибо. Quote Link to comment Share on other sites More sharing options...
Mитька Posted July 11, 2018 Report Share Posted July 11, 2018 (edited) Вопрос ко всем и в частности в MCAD, мастер всяческих тумблеров и переключателей: никто не делал/встречал что-то типа динамического графического интерполятора или... шкалы? Механика работы: проводишь объект-линию, задаёшь ей числовые значения начала конца и шаг, и линия превращается в шкалу, где графически линиями и текстом выделены определенные промежуточные значения. Если кто делал какие-то наброски и не пожалеет поделиться объектом, буду признателен. Полезная штука, но времени нету совсем... =( Edited July 11, 2018 by Mитька Quote Link to comment Share on other sites More sharing options...
MCAD Posted July 11, 2018 Report Share Posted July 11, 2018 (edited) Механика работы: проводишь объект-линию, задаёшь ей числовые значения начала конца и шаг, и линия превращается в шкалу, где графически линиями и текстом выделены определенные промежуточные значения. Это не ОНО? ii=0; While(ii<(N_VERT)); jj=0; While(jj<(1)); Line(node13+OY*(H)*ii+OX*(0)*jj,mp+OY*(H)*ii+OX*(0)*jj,1,1); Line(node14+OY*(H)*ii+OX*(0)*jj,node0+OY*(H)*ii+OX*(0)*jj,1,1); jj=jj+1; EndWhile; ii=ii+1; EndWhile; ii=0; s0="А";s1="Б";s2="В";s3="Г";s4="Д";s5="Е";s6="Ж";s7="И";s8="К";s9="Л";s10="М";s11="Н";s12="П";s13="Р"; s14="С";s15="Т";s16="У";s17="Ф";s18="Ш";s19="Э";s20="Ю";s21="Я"; s22="АА";s23="ББ";s24="ВВ";s25="ГГ";s26="ДД";s27="ЕЕ";s28="ЖЖ";s29="ИИ";s30="КК";s31="ЛЛ";s32="ММ";s33="НН";s34="ПП";s35="РР"; s36="СС";s37="ТТ";s38="УУ";s39="ФФ";s40="ШШ";s41="ЭЭ";s42="ЮЮ";s43="ЯЯ"; //Ё, З, Й, О, X, Ц, Ч, Щ, Ъ, Ы, Ь Буквы запрещенные ГОСТ //s26="Н";s27="О";s28="П";s29="Р"; //s30="А";s31="Б";s32="В";s33="Г";s44="Д";s35="Е";s36="Ж";s37="И";s38="К";s39="Л";s40="М";s411="Н";s42="О";s33="П";s44="Р"; //АБВГДЕЖЗИКЛМНПР СТУФЦЧШЩЭЮЯ bulge=1; While(ii<(1)); jj=0; While(jj<(N_HORIZ+1)); Line(node15+OY*(0)*ii+OX*(L)*jj,node16+OY*(0)*ii+OX*(L)*jj,2,1); Arc(node17+OY*(0)*ii+OX*(L)*jj,node18+OY*(0)*ii+OX*(L)*jj,bulge,2,1); Arc(node18+OY*(0)*ii+OX*(L)*jj,node17+OY*(0)*ii+OX*(L)*jj,bulge,2,1); UText(getMiddle(node17,node18)+(L*jj)*OX-0*OY, 0, 300, 0, 0, s[jj] ,[,1 ,1]); jj=jj+1; Совсем простой вариант: Шкала.zip Edited July 11, 2018 by MCAD 3 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 12, 2018 Report Share Posted July 12, 2018 А подскажите как внутри скрипта исполнения объекта пользоваться командой "if"? Просто давно каким-то чудом выяснил, что если внутри UText угол поворота текста прописать как DegToRad(-angleTwoPi(oX,gX)), то получится так, что текст всегда будет повёрнут горизонтально. И теперь я хочу, чтобы в зависимость от текущего значения angleTwoPi(oX,gX) менялась привязка текста по горизонтали и вертикали, т.е эти переменные UText(Point, Angle, Height, XScaling(widthfactor), Oblique,"Text",[HorizontalAlignment, VerticalAlignment]); То есть, если кратко на словах, то при 0<angleTwoPi(oX,gX)<90, HorizontalAlignment =1 и VerticalAlignment=1 при 90<angleTwoPi(oX,gX)<180, HorizontalAlignment =1 и VerticalAlignment=2 и т.п. Но всё это надо прописать как-то в теле скрипта исполнения, ибо внутри скрипта объекта angleTwoPi(oX,gX) не меняется( Quote Link to comment Share on other sites More sharing options...
MCAD Posted July 12, 2018 Report Share Posted July 12, 2018 при 0при 90 Например, если выравнивание по горизонтали: UText(mp+oX+oY*(50),0,2*rSymScl/rScl,1,-10.0000,"Test",iff(angleTwoPi(oX,gX)>=0;iff(angleTwoPi(oX,gX)<=90;0;2)),iff(angleTwoPi(oX,gX)>=0;iff(angleTwoPi(oX,gX)<=90;2;1))); Выравние uText в зависимости от угла вставки.zip 2 Quote Link to comment Share on other sites More sharing options...
Kreator Posted July 12, 2018 Report Share Posted July 12, 2018 Вспомнилось, как крутил что-то подобное в MS Visio 1 Quote Link to comment Share on other sites More sharing options...
MCAD Posted July 12, 2018 Report Share Posted July 12, 2018 Вспомнилось, как крутил что-то подобное в MS Visio Чаще приходится выравнивать по горизонтали: http://www.youtube.com/watch?v=PZ4byYtvnzs&t=0s&index=37&list=PLxzNmJ3Maam7pWN5KD8NbMmYrZQbNRlhD 1 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 12, 2018 Report Share Posted July 12, 2018 Доработал объект "шкала" из этого сообщения, вдруг кому понадобится Шкала 2.0.mcd.7z Quote Link to comment Share on other sites More sharing options...
MCAD Posted July 12, 2018 Report Share Posted July 12, 2018 Доработал объект "шкала" из этого сообщения, вдруг кому понадобится Там симбиоз разных объектов UText(node1+oX*step*jj+oY*5*rSymScl/rScl, DegToRad(-angleTwoPi(oX,gX)),2.5*rSymScl/rScl,0,0, String(K+jj*s)+String(PC), iff(angleTwoPi(oX,gX)>=0;iff(angleTwoPi(oX,gX)<60;1; iff(angleTwoPi(oX,gX)>=60;iff(angleTwoPi(oX,gX)<120;2; iff(angleTwoPi(oX,gX)>=120;iff(angleTwoPi(oX,gX)<240;1; iff(angleTwoPi(oX,gX)>=240;iff(angleTwoPi(oX,gX)<300;0; iff(angleTwoPi(oX,gX)>=300;iff(angleTwoPi(oX,gX)<360;1)))))))))),1); jj=jj+1; }; Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 18, 2018 Report Share Posted July 18, 2018 Намутил такую штуку https://www.youtube.com/watch?v=DTaoDYQ3bEU Сам объект дорабатывается, хочу прикрутить ещё армирование, конечно, со спецификацией автоматом. Но пока, сверх того, что есть, прикрутил только плитку 1 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 25, 2018 Report Share Posted July 25, 2018 (edited) HELP! Есть параметрический объект с приличным набором параметров. Один из них (пока один, в будущем собираюсь делать больше) завязан на таблице. Но вот беда - если этот параметр менять через меню свойств, а не через форму, то в меню свойство его значение исчезает, если оно не подходит табличному. Хотя, по логике скрипта, должно выбираться ближайшее наибольшее из таблицы. Что, собственно, на самом деле и происходит, но в меню свойств значения этого параметра просто пропадает.. При этом, если из этого объекта удалить все другие параметры, то всё будет работать корректно. Есть решение какое-нибудь по этому вопросу? Видео прилагаю: Нанокад СПДС 6.0 Edited July 25, 2018 by dromandon Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 25, 2018 Report Share Posted July 25, 2018 Разобрался. Случайно дал разным переменным одно и то же описание. У меня было D1,"Диаметр нижней продольной арматуры", и D3,"Диаметр нижней продольной арматуры", Прошу прощения за кипишь 2 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 25, 2018 Report Share Posted July 25, 2018 А возможно ли создать контур подавления объекта СПДС, чтобы тот перекрывал линии, создаваемые внутри объекта? Как пример - в одном объекте у меня есть и продольная и поперечная арматура. И вот я хочу чтобы поперечная армутра, перекрывала продольную. Но чтобы это было не два объекта с разным порядком следования, а один. Quote Link to comment Share on other sites More sharing options...
MCAD Posted July 25, 2018 Report Share Posted July 25, 2018 А возможно ли создать контур подавления объекта СПДС, чтобы тот перекрывал линии, создаваемые внутри объекта? Не реально. Можно просто пересчитать геометрию внутри. ГЦ.zip Как пример - в одном объекте у меня есть и продольная и поперечная арматура. Тут "Массив" напрашивается (spwizarr) Сетка копия .zip 1 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 25, 2018 Report Share Posted July 25, 2018 А возможно ли создать контур подавления объекта СПДС, чтобы тот перекрывал линии, создаваемые внутри объекта? Не реально. Можно просто пересчитать геометрию внутри. Жаль, что не реально, геометрию геморно было передать, хоть и реально, как оказалось) Тут "Массив" напрашивается (spwizarr) Массивом пользуюсь. Даже догадался штриховку в объект добавить, но не до конца разобрался в скрипте её. Поэтому бросил. А ща понял, что вся ошибка в том была, что в конце End() не ставил 1 Quote Link to comment Share on other sites More sharing options...
dromandon Posted July 26, 2018 Report Share Posted July 26, 2018 Помогите решить задачку. Есть объект, в нём таблица Table0 с переменной D1 (real) - нужные мне диаметры. вбиваю эту переменную в Public и Changeable далее прописываю function OnInitialization { SelectInCache( 0, "kFirst", "D1", "=", 10); } function OnChangeParameters { SelectInCache( 0, "kFirst", "D1", ">=", new.D1); } И потом возникает следующая ситуация. Объект находится на чертеже - меняю через свойство параметр D1 - всё работает как следует. Открываю форму - там таблица с фильтрацией - переменная TableEdit_0 в которой одна колонка с D1. Изменяю значение D1 через эту таблицу, жму ОК - всё прекрасно работает. Но возникла надобность ввести D1 в форме не через таблицу с фильрацией, а через обычную строку. Беру строку, задаю ей переменную D1. Меняю, жму ОК - не работает, объект не изменился. Захожу снова в форму, меняю D1, жму "Применить" - смотрю на объект - он изменился. Жму ОК - объект сбрасывается на значение, которое было до открытия диалога формы. Что делаю не так? Quote Link to comment Share on other sites More sharing options...
doctorraz Posted July 26, 2018 Report Share Posted July 26, 2018 (edited) так пробуй function OnDialogChanged { D1=new.D1; SelectInCache( 0, "kFirst", "D1", ">=", D1); } Edited July 26, 2018 by doctorraz Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.