| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > ПО от CSoft > Параметрические объекты СПДС для армирования ЖБК

Параметрические объекты СПДС для армирования ЖБК

Ответ
Поиск в этой теме
Непрочитано 05.02.2013, 13:26 3 |
Параметрические объекты СПДС для армирования ЖБК
swell{d}
 
гадание на конечно-элементной гуще
 
Düsseldorf
Регистрация: 31.05.2006
Сообщений: 7,604

В nanoCAD СПДС пользователь может создавать собственные параметрические объекты.
Использование пользовательских параметрических объектов может компенсировать отсутствующие на данный момент динамические блоки.

Ниже представлено видео Михаила Гладких (mihanick) про создание параметрических объектов на примере элемента обрамления проёмов:
http://youtu.be/EZwO6EIrrKQ

В этой теме буду выкладывать свои наработки. На данный момент есть:
- Фоновое армирование плит
- Обрамление проёмов
- Доп. армирование - зоны распределения
- Сопутствующие таблицы
- Маркеры для обрамлений и зон распределения
- Сваи

Предложения-пожелания приветствуются

Статьи на wiki:
- Основная статья

Видео с примером использования

П.С. Для установки вызвать Базу элементов (из панели инструментов или командой spbrowser). В Базе элементов выбрать любую папку, щёлкнуть по ней правой кнопкой мыши, выбрать импорт из файла и загрузить все файлы с расширением .mcd из распакованного архива

Последняя сборка в сообщении #38 или на вики
__________________
.: WikiЖБК + YouTube :.

Последний раз редактировалось swell{d}, 12.08.2013 в 23:43.
Просмотров: 229288
 
Непрочитано 31.01.2015, 14:23
1 | #381
Konstruktiv54


 
Регистрация: 31.01.2007
Новосибирск
Сообщений: 1,040
<phrase 1=


http://dwg.ru/dnl/4787 вот руководство разработчика. Там можешь более подробно почитать на эту тему. Там и примеры решения этого вопроса есть, впрочем они и в справке есть.
Konstruktiv54 вне форума  
 
Непрочитано 31.01.2015, 18:15
#382
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,293
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от AlexV Посмотреть сообщение
Да не, це понятно.. Но эти параметры по-любому светятся в окне свойств, - а я хотел (ну уже перехотел, пожалуй ) заделать стержень в нескольких исполнениях, и что бы в зависимости от исполнения нужные параметры скрывались/отображались в свойствах (типа, для П оба отгиба, Г один, прямой - ни одного..)
можно сделать так если очень хочется, код условно рабочий, но используешь на свой страх и риск, в итоге можно получить совсем не то, что задумал ))))
Код:
[Выделить все]
OnMakeParameters {
//...
	if (твое условие) {
		Public (
		H, "высота",
		L, "ширина",
		);
	} else {
		H, "высота",
		L, "hidden", //скрываем в свойствах Автокад ширину
		);
	}
//..
}

в любом случае объявлять необходимо все переменные заявленные в ActHeader
Offtop: вот и подумай оно тебе надо???
__________________________
фигня получается по условию не работает (((((
__________________
Мастерская СПДС

Последний раз редактировалось doctorraz, 31.01.2015 в 18:35.
doctorraz вне форума  
 
Непрочитано 31.01.2015, 18:33
#383
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Сообщение от doctorraz Посмотреть сообщение
можно сделать так если очень хочется, код условно рабочий, но используешь на свой страх и риск, в итоге можно получить совсем не то, что задумал ))))
Код:
[Выделить все]
OnMakeParameters {
//...
	if (твое условие) {
		Public (
		H, "высота",
		L, "ширина",
		);
	} else {
		H, "высота",
		L, "hidden", //скрываем в свойствах Автокад ширину
		);
	}
//..
}

в любом случае объявлять необходимо все переменные заявленные в ActHeader
Offtop: вот и подумай оно тебе надо???
Ладно, ладно.. уболтали!
Кажется, че то уже вырисовывается.. Скрестил коня swell{d} с некоторыми своими хотелками, - ниче вроде, работает! П-шка в трех проекциях, с диапазоном распределения.. Его "Доп армирование" чуток подправил (масса из таблицы, а не по объему, строчку спецухи, ну и что б параметры некоторые моим соответствовали.. Усе зашибись, табличка ВРС со спецификацией на ура считается, ща еще автоматическую ведомость деталей перепилю (она у меня была на динблоки настроена) - и жить станет лучше, жить станет веселей! А, ну еще надо г-шку, хомуты-шпильки и каркасы настрогать пространственные.. Ну закладухи еще по серии.. И спи-отдыхай..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Автор темы   Непрочитано 01.02.2015, 01:36
#384
swell{d}

гадание на конечно-элементной гуще
 
Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,604


не забывай только выкладывать всё в свободный доступ
__________________
.: WikiЖБК + YouTube :.
swell{d} вне форума  
 
Непрочитано 02.02.2015, 06:39
#385
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Сообщение от swell{d} Посмотреть сообщение
не забывай только выкладывать всё в свободный доступ
Ну да, еще чуток напильником поработаю..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 02.02.2015, 09:53
#386
13Rossoneri


 
Регистрация: 22.07.2011
Украина
Сообщений: 479
<phrase 1=


Цитата:
Сообщение от AlexV Посмотреть сообщение
Ну закладухи еще по серии.. И спи-отдыхай..
Мне вот интересно, а "обычный офисный" компьютер тянет всю эту благодать? Если это относительно большой обьект (скажем что-то вроде "монолитная хрущевка") и сделано методом "все в одном файле". Как у вас там, не виснет-притормаживает?
13Rossoneri вне форума  
 
Непрочитано 02.02.2015, 09:56
#387
Konstruktiv54


 
Регистрация: 31.01.2007
Новосибирск
Сообщений: 1,040
<phrase 1=


Лично у меня обычный не тянет. У меня и топовый комп задыхается.
Konstruktiv54 вне форума  
 
Автор темы   Непрочитано 02.02.2015, 09:59
#388
swell{d}

гадание на конечно-элементной гуще
 
Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,604


13Rossoneri, ничо не тормозит
__________________
.: WikiЖБК + YouTube :.
swell{d} вне форума  
 
Непрочитано 02.02.2015, 10:05
1 | #389
lionzoll


 
Регистрация: 06.12.2010
Сообщений: 186


Выложу свой маркер КЖ, вдруг кому пригодиться.... ) За основу был взят маркер с сайта swell
Миниатюры
Нажмите на изображение для увеличения
Название: 2015-02-02 10-03-08 Скриншот экрана.png
Просмотров: 66
Размер:	314.4 Кб
ID:	142971  
Вложения
Тип файла: rar КЖ маркер.rar (145.5 Кб, 34 просмотров)
lionzoll вне форума  
 
Непрочитано 02.02.2015, 10:25
#390
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Цитата:
Сообщение от AlexV Посмотреть сообщение
Ну закладухи еще по серии.. И спи-отдыхай..
Мне вот интересно, а "обычный офисный" компьютер тянет всю эту благодать? Если это относительно большой обьект (скажем что-то вроде "монолитная хрущевка") и сделано методом "все в одном файле". Как у вас там, не виснет-притормаживает?
Ну, если использовать динблоки - то больше 3-5 листов в одном файле - жесть! Тормоза жуткие, если до фига объектов. Я как-то сдуру зафигачил (массив+explode) пару тыщщ шпилек.. Пересчет таблички при изменениии количества/динпараметров шпильки был сравним по удовольствию только с изменением аналогичной группы в ревите! Почему я и взялся за объекты СПДС - вроде там должно быть тормозов поменее..

Товарищи, возник вопрос.. А вот массивы, запихнутые унутрь объекта.. В справке нашел, только что
Цитата:
Создайте из примитивов AutoCAD блок и укажите на эскизе необходимые размеры для определения его размеров и расположения. Нажмите кнопку Массив объектов и селектируйте блок на эскизе. В появившемся диалоговом окне выберите тип массива и параметры, управляющие построением массива. Параметрам могут быть назначены как числовые, так и нечисловые значения (имена переменных и выражения).
Создал блок, указал размеры/параметры, мастер объектов все это скушал без замечаний, - вид распознал.. Но, видимо, - надо еще внутри скрипта какие-то телодвижения совершить, что бы массив получался на выходе?

А еще вопрос.. ВРС-ка у вас как считается, - с таблицы спецификации информацию берет (у меня было так) или непосредственно с объектов считывает? если вариант 2, - то как собрать информацию с объекта, содержащего больше 1 диаметра арматуры (карас-сетка и т.д.)?

В руководстве по MechWiz нашел
Цитата:
"Случается, что необходимо внутри объекта описать несколько подобъектов, имеющих другой тип, для упрощения написания скриптов и задания зависимостей. Например, внутри крышки есть необходимость описать отверстия, которые будут опознаваться деталями крепления. Для этого введено ключевое слово SubObject. Оно задает подобъекты внутри объекта. Для других деталей они будут выглядеть как обычные объекты (т.е. для болта, например, как обычные гладкие отверстия.). Описание подобъектов задается в ActHeader, после функции Public."
Я правильно понимаю, что можно внутри объекта "Каркас пространственный" положить "подобъект" - "арматурный стержень", и он будет восприниматься другими объектами (и отчетом ВРС" ) - как отдельный стержень со своими свойствами? А кто-нибудь чего-нибудь такое уже сотворил? Посмотреть бы на скрипт!
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

Последний раз редактировалось AlexV, 02.02.2015 в 10:55.
AlexV вне форума  
 
Автор темы   Непрочитано 02.02.2015, 11:02
#391
swell{d}

гадание на конечно-элементной гуще
 
Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,604


я оба варианта прошёл. разобраться, как с одного объекта тянуть 2 диаметра, не получилось. основная проблема в отчётах таблиц то, что один объект - одна строка. всё, тупик.
собирать данные со спецификаций значительно проще и удобней. код на вба в свободном доступе, заточил под себя и...
Цитата:
Сообщение от AlexV Посмотреть сообщение
И спи-отдыхай..
__________________
.: WikiЖБК + YouTube :.
swell{d} вне форума  
 
Непрочитано 02.02.2015, 11:38
#392
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Сообщение от swell{d} Посмотреть сообщение
я оба варианта прошёл. разобраться, как с одного объекта тянуть 2 диаметра, не получилось. основная проблема в отчётах таблиц то, что один объект - одна строка. всё, тупик...
...а я, кажись, вижу вариант решения!
Цитата:
Объявление массива параметров начинается с ключевого слова Array. Array(arrName, arrSize, arrStartIndex = 0)
Задаем в объекте массив, число членов = числу диаметров арматуры; забиваем нужный расход в соответствующий член.. Проверил на экспериментальном объекте - нормально усе, табличка в отчете читает весь массив..
Эх, времени бы свободного..

Вопрос теперь - укладывать массив во все "арматурные" объекты или только в "составные из нескольких D"? В принципе, если во все - ВРС-ку составить проще, - не надо проверять условие по диаметру, в каждый столбец плюсуюй своего "массивного члена". Но в окне свойств выводится лишняя инфа, ну и хз, как массивы на быстродействие влияет при большом количестве объектов?

Граждане, по массивам кто-нибудь просветит меня (по массивам, в смысле, - в плане создания графики массива внутри объекта)?
Миниатюры
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 61
Размер:	31.8 Кб
ID:	142979  
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

Последний раз редактировалось AlexV, 02.02.2015 в 12:17.
AlexV вне форума  
 
Автор темы   Непрочитано 02.02.2015, 13:37
#393
swell{d}

гадание на конечно-элементной гуще
 
Регистрация: 31.05.2006
Düsseldorf
Сообщений: 7,604


ну если так делать, то можно и без массива переменных насоздовать, а потом в врске отдельный столбец на каждую переменную.
у меня другой, значительно более универсальный путь, т.к. для моей врски вообще не нужны объекты =) можно просто спецификацию руками заполнить и она нормально обсчитается в врске

----- добавлено через ~9 мин. -----
http://youtu.be/VsWjMEOZVy0
вдруг не видел кто =)
__________________
.: WikiЖБК + YouTube :.
swell{d} вне форума  
 
Непрочитано 02.02.2015, 14:03
#394
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Сообщение от swell{d} Посмотреть сообщение
ну если так делать, то можно и без массива переменных насоздовать, а потом в врске отдельный столбец на каждую переменную.
у меня другой, значительно более универсальный путь, т.к. для моей врски вообще не нужны объекты =) можно просто спецификацию руками заполнить и она нормально обсчитается в врске

----- добавлено через ~9 мин. -----
http://youtu.be/VsWjMEOZVy0
вдруг не видел кто =)
Ну да, только массив обрабатывать легче..

----- добавлено через ~29 мин. -----



Цитата:
function OnChangeParameters {
if(N != new.N){
N=new.N;
rZona = N * rStep;
//MessageBox(""+ N, MB_OK,);
};
}
Интересно девки пляшут.. При попытке изменения через свойства параметра N он ни хрена не меняется.. А стоит вставить мессагу, - меняется? где ж собака зарылась тут..

а еще - распознаешь вид, обычная полилиния-прямоугольник.. Если т. вставки в углу - все окей, стоит поставить в другом месте, - хоть образмеривайся десять раз, "не определена точка вставки модели", - хотя вроде все углы во всех направлениях привязаны..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!

Последний раз редактировалось AlexV, 02.02.2015 в 15:05.
AlexV вне форума  
 
Непрочитано 02.02.2015, 17:51
1 | #395
Konstruktiv54


 
Регистрация: 31.01.2007
Новосибирск
Сообщений: 1,040
<phrase 1=


Надо что бы точка вставки находилась в какой нибудь точке линии объекта. Поэтому проведи до точки вставки линию, сделай ее рабочей (невидимой) и будет тебе счастье.
Konstruktiv54 вне форума  
 
Непрочитано 02.02.2015, 18:24
#396
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


А как в состав объекта вложить примитив, который будет виден на экране, но "нераспечатываем"? "Рабочий" объект на экране при вставке не отображается, слои при распознавании СПДСу до звезды, я так понимаю..
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 02.02.2015, 18:42
#397
Konstruktiv54


 
Регистрация: 31.01.2007
Новосибирск
Сообщений: 1,040
<phrase 1=


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

----- добавлено через ~53 мин. -----
Цитата:
Сообщение от swell{d} Посмотреть сообщение
ну если так делать, то можно и без массива переменных насоздовать, а потом в врске отдельный столбец на каждую переменную.
Ну почему же? Традиционным способом надо создавать переменные под каждый диаметр арматуры на все случаи жизни, а массив может создать ровно столько переменных, сколько уникальных диаметров используется в объекте.
Алекс, ты сейчас изобретаешь велосипед. Посмотри мои объекты, там все это давно реализовано.

Последний раз редактировалось Konstruktiv54, 02.02.2015 в 21:40.
Konstruktiv54 вне форума  
 
Непрочитано 02.02.2015, 23:39
#398
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,685


Цитата:
Сообщение от Konstruktiv54 Посмотреть сообщение
Я пользуюсь цветозависимой печатью. Я выделил на это дело волнистую линию, которой никогда не пользуюсь. Назначил волнистым линиям в СПДСе непечатаемый цвет, поэтому она у меня видна на экране, но не печатается на листах. Одна проблема, если линии длинные, то эта волнистая линия неприятно захламляет чертеж.
Как другие решают, я не знаю.

----- добавлено через ~53 мин. -----

Ну почему же? Традиционным способом надо создавать переменные под каждый диаметр арматуры на все случаи жизни, а массив может создать ровно столько переменных, сколько уникальных диаметров используется в объекте.
Алекс, ты сейчас изобретаешь велосипед. Посмотри мои объекты, там все это давно реализовано.
Твой велосипед высшей марки.. Мой его прочитать не может..

----- добавлено через ~11 ч. -----
А вот интересно.. В справке сказано, шо таки
Цитата:
"OnChangeParameters Установка новых значений параметров объекта другим объектом. Вызывается при изменении связанных зависимостями параметров.."
. Она вызывается, только когда параметр меняется другим параметром?
У swell{d} такая конструкция имеет место:
Код:
[Выделить все]
function OnChangeParameters {
	if(rStep != new.rStep){
		rStep=new.rStep;
		N = max(int(rZona/rStep);int(rZona/rStep+0.5));
		rZona = N * rStep;
	}else{	 
		if(N != new.N){
			N=new.N;
			rZona = N * rStep;
		}
	};
};
Судя по всему, изменение параметра изнутри самой функции к вызову ее не приводит, иначе rStep и N гоняли бы друг друга до overflow.. То бишь отсюда можно поймать изменение параметра через юзерские действия над ручками и другими параметрами, связанными с искомым, - изменение параметра через свойства, судя по всему, ее не вызывают. Вопрос: а в какой функции можно отследить любое изменение параметра? OnMakeParameters? Как определить, какой конкретно параметр изменился? Конструкция "if(rStep != new.rStep)" - применима в других функциях, окромя OnChangeParameters?
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Непрочитано 03.02.2015, 11:20
#399
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,293
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от AlexV Посмотреть сообщение
Судя по всему, изменение параметра изнутри самой функции к вызову ее не приводит, иначе rStep и N гоняли бы друг друга до overflow.. То бишь отсюда можно поймать изменение параметра через юзерские действия над ручками и другими параметрами, связанными с искомым, - изменение параметра через свойства, судя по всему, ее не вызывают. Вопрос: а в какой функции можно отследить любое изменение параметра? OnMakeParameters? Как определить, какой конкретно параметр изменился? Конструкция "if(rStep != new.rStep)" - применима в других функциях, окромя OnChangeParameters?
ты невнимательно читаешь форум :#379
new. существует только внутри OnChangeParameters
__________________
Мастерская СПДС
doctorraz вне форума  
 
Непрочитано 03.02.2015, 11:40
#400
lionzoll


 
Регистрация: 06.12.2010
Сообщений: 186


Помогите пожалуйста, всё равно один объект перекрывает другой, причём в каких-то случаях перекрывает, а в каких-то нет... ничего не понимаю....
Перекрывать объекты и маскировать объекты стоит No, строчку закомментировал //CutAcElements = 0;
Всё равно в некоторых случаях перекрывает.... что сделать?
Миниатюры
Нажмите на изображение для увеличения
Название: 2015-02-03 11-34-56 Скриншот экрана.png
Просмотров: 42
Размер:	217.8 Кб
ID:	143035  
Вложения
Тип файла: dwg
DWG 2013
ФПм1.dwg (2.15 Мб, 1289 просмотров)
Тип файла: rar Доп армирование.rar (19.0 Кб, 28 просмотров)
lionzoll вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > ПО от CSoft > Параметрические объекты СПДС для армирования ЖБК

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
СПДС Graphics. Интеграция с AutoCAD. Нет панелек СПДС Sn4ke ПО от CSoft 40 31.07.2020 11:52
Не редактируются объекты СПДС 4атланин ПО от CSoft 86 11.12.2017 16:03
Изменения системы СПДС. ГОСТ 21.101-97 и не только! Red_line Архитектура 19 05.08.2010 18:01
Копирование данных для спецификаций из выносок СПДС в таблицу из мтекстов Red Nova Программирование 177 08.12.2008 11:35
СПДС, Автоматическая загрузка при открытии файла Vildar Прочее. Программное обеспечение 11 05.09.2008 16:58