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

Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Переменная iff в скрипте СПДС объекта.

Переменная iff в скрипте СПДС объекта.

Ответ
Поиск в этой теме
Непрочитано 12.09.2013, 12:14 #1
Переменная iff в скрипте СПДС объекта.
igo
 
Регистрация: 08.07.2012
Сообщений: 8

Друзья, помогите разобраться с этой проблемой...
Задумка такая... есть длина пролета. Нужно в нее всунуть 1 или2 ребра. до метра 1 ребро....больше 2.
Длина H1
Кол-во ребер - G
Сделал так не получилось. Прорисовываются 2 ребра.
=if(H1 < 1000; G=1); G=2))
Если эта хрень правильная может проблема есть в самом скрипте... что то препятствует.?
Как бить друзья !!!
Просмотров: 4495
 
Непрочитано 12.09.2013, 12:27
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,772


Я уже давно не занимаюсь СПДС, поэтому вариант может и не сработать:
Код:
[Выделить все]
=if(H1<1000;G=1;G=2)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.09.2013, 13:22
#3
LynxM


 
Регистрация: 17.08.2010
Kyiv
Сообщений: 688
<phrase 1= Отправить сообщение для LynxM с помощью Skype™


Хорошо бы еще эскиз для понимания и часть скрипта.
__________________
Лучше не обещать, чем обещать и не исполнять.
LynxM вне форума  
 
Автор темы   Непрочитано 12.09.2013, 13:32
#4
igo


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


Код:
[Выделить все]
SVersion = 2;
ObjectDescription = "1";

function ActHeader {
	NPart=1;
	Public( t, "Т. ребра",
	Lt, "Длина загиба",
	c, "Привязка 1",
	bb, "Ось +5мм.",
	s, "Толщина стенки",
	b, "Ширина уголка",
	H, "Осевая ширина",
	L, "Осевая длина",
	cc, "Шаг ребер",
	f, "Ширина планки",
	H2, "H2",
	G, "Кол-во листов",
	Text1, "Марка по КМ",
	Text2, "Марка",
	Text, "Высота текста",
	DOD3, "DOD3",
	DOD4, "DOD4",
	DOD1, "DOD1",
	DOD2, "DOD2",
	jjj1, "jjj1",
	duf2, "duf2",
	duf3, "duf3",
	dufS, "dufS",
	L2, "Длина планки",
	H22, "H22",
	ccc, "Правая привязка",
	Kos, "Кол. ребер 2",
	H1, "H1",
	L1, "L1",
	duf, "duf",
	duf4, "duf4" );
	Protected( seted, check1, check2 );
	Changeable( t, Lt, c, bb, s, b, H, L, cc, f, H2, G, Text1, Text2, Text, DOD3, DOD4, DOD1, DOD2, jjj1, duf2, duf3, dufS, L2, H22, ccc, Kos, H1, L1, duf, duf4 );
	OnDlgBeforeSelectParam = 1;
	ShowWhenSelPnt = 1;
	ContourOnLine = 0;
};

function OnInitialization {
	if(seted == UnknownValue) {
		seted=1;
		rZOrder=100;
		check1 = 1;
		check2 = 0;
		t = 6;
		Lt = 30;
		c = 40;
		bb = 20;
		s = 5;
		b = 50;
		H = 1000;
		L = 1500;
		cc = 40;
		f = 60;
		H2 = 300;
		G = 2;
		Text1 = "РН1";
		Text2 = "1";
		Text = 70;
		DOD3 = 50;
		DOD4 = 50;
		DOD1 = 50;
		DOD2 = 50;
		jjj1 = 1;
		duf2 = 0;
		duf3 = 0;
		dufS = 1;
		L2 = 10;
		H22 = 1;
		ccc = 1;
		Kos = 1;
		H1 = 1;
		L1 = 1;
		duf = 1;
		duf4 = 1;
	};
};

function SetGripPoint {
	NGrip = 2;
	pntGrip0 = pntOrigin;
	pntGrip1 = pntOrigin+vecDirection*L+vecPlane*H;
};
function OnMoveGripPoint {
WP0x=Plane(pntGrip0,vecDirection);
WP0y=Plane(pntGrip0,vecPlane);

WP1x=Plane(pntGrip1,vecDirection);
WP1y=Plane(pntGrip1,vecPlane);
if(NMovingGrip==0) {
pntOrigin=pntGrip0;
L=-(WP1x-pntGrip0);
H=-(WP1y-pntGrip0);
};
if(NMovingGrip == 1) {

L=WP0x-pntGrip1;
H=WP0y-pntGrip1;
};
}
function OnMakeParameters {
	strTheName = "PH2";
	strTheType = "5 Связь";
	strTheSubType = "5 Связь";
	L2 = Kos=int((L1-c-bb*2)/cc)*cc+25;
	H22 = H1/(G+1);
	ccc = (L1-bb*2)-(int((L1-c-bb*2)/cc)*cc+c-duf2);
	if(ccc < 0) ccc=0;
	Kos = Kos=int((L1-c-bb*2)/cc);
	H1 = H-DOD1-DOD4;
	L1 = L1=L-DOD2-DOD3;
	duf = duf=Kos-duf3;
	duf4 = duf4=Kos+1-duf3;
	if(check1 == 1) { jjj1=1; } else { jjj1=0; }
	if(check2 == 1) { duf2=40; duf3=1; } else { duf2=0; duf3=0; }
};

function OnDialog {
	//UniDialog( VFLD, t,"Т. ребра", Lt,"Длина загиба", c,"Привязка 1", bb,"Ось +5мм.", s,"Толщина стенки", b,"Ширина уголка", H,"Осевая ширина", L,"Осевая длина", cc,"Шаг ребер", f,"Ширина планки", H2,"H2", G,"Кол-во листов", Text1,"Марка по КМ", Text2,"Марка", Text,"Высота текста", DOD3,"DOD3", DOD4,"DOD4", DOD1,"DOD1", DOD2,"DOD2", jjj1,"jjj1", duf2,"duf2", duf3,"duf3", dufS,"dufS", L2,"Длина планки", H22,"H22", ccc,"Правая привязка", Kos,"Кол. ребер 2", H1,"H1", L1,"L1", duf,"duf", duf4,"duf4", BFLD, check1, "Switch1", check2, "dufon", TVIDS,lViewType,"All",VIEW,"Vids");
ShowForm,("Form1")
};

function OnChangeParameters {
	t = new.t;
	Lt = new.Lt;
	c = new.c;
	bb = new.bb;
	s = new.s;
	b = new.b;
	H = new.H;
	L = new.L;
	cc = new.cc;
	f = new.f;
	H2 = new.H2;
	G = new.G;
	Text1 = new.Text1;
	Text2 = new.Text2;
	Text = new.Text;
	DOD3 = new.DOD3;
	DOD4 = new.DOD4;
	DOD1 = new.DOD1;
	DOD2 = new.DOD2;
	jjj1 = new.jjj1;
	duf2 = new.duf2;
	duf3 = new.duf3;
	dufS = new.dufS;
	L2 = new.L2;
	H22 = new.H22;
	ccc = new.ccc;
	Kos = new.Kos;
	H1 = new.H1;
	L1 = new.L1;
	duf = new.duf;
	duf4 = new.duf4;
	Handled = OBJ_HANDLED;
};

function OnSelectParam {
	H = rYcoord;
	L = rXcoord;
};

CutAcElements=0

function BeforeConnect {
	ResetLastConstraint();
}

//strPartName = "";

Последний раз редактировалось Кулик Алексей aka kpblc, 12.09.2013 в 13:40.
igo вне форума  
 
Непрочитано 12.09.2013, 14:07
#5
LynxM


 
Регистрация: 17.08.2010
Kyiv
Сообщений: 688
<phrase 1= Отправить сообщение для LynxM с помощью Skype™


А можно еще эскиз (или скрипт "Исполнения")?
Можно сделать через условия отрисовки, но без эскиза непонятно - подойдет этот способ, или нет.
__________________
Лучше не обещать, чем обещать и не исполнять.
LynxM вне форума  
 
Автор темы   Непрочитано 12.09.2013, 17:13
#6
igo


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


эскиз сложноват...
Изображения
Тип файла: jpg Снимок.JPG (86.5 Кб, 192 просмотров)
igo вне форума  
 
Непрочитано 12.09.2013, 18:13
#7
LynxM


 
Регистрация: 17.08.2010
Kyiv
Сообщений: 688
<phrase 1= Отправить сообщение для LynxM с помощью Skype™


Параметр "H22" - привязка первого ребра, а втрое будет уже привязываться к первому? Или они равномерно должны располагаться в зависимости от значения параметра "Н1"?

P.S. Думаю, что копать надо в сторону операции "Массив объектов", но все зависит от ответа на мой вопрос (расположение и привязка ребер).

Сразу не заметил, можно попробовать сделать как написал Алексей только:
Код:
[Выделить все]
iff(H1<1000, G=1, G=2)
В СПДС данная логическая операция пишется с 2 "ff" и между аргументами ",".

Сделал пример с массивом. Все работает:
Код:
[Выделить все]
 iff(h<700, k=1, k=2)
Вот видео-доказательство - http://youtu.be/JdA4lPZ8-Ys
__________________
Лучше не обещать, чем обещать и не исполнять.

Последний раз редактировалось LynxM, 13.09.2013 в 12:24. Причина: добавил
LynxM вне форума  
 
Автор темы   Непрочитано 13.09.2013, 12:53
#8
igo


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


Ойойой... всем спасибо... буду пробовать )

LynxM ! можно поинтересоваться... у вас есть наработки по базам СПДС объектов?
igo вне форума  
 
Непрочитано 13.09.2013, 14:56
#9
LynxM


 
Регистрация: 17.08.2010
Kyiv
Сообщений: 688
<phrase 1= Отправить сообщение для LynxM с помощью Skype™


Цитата:
Сообщение от igo Посмотреть сообщение
LynxM ! можно поинтересоваться... у вас есть наработки по базам СПДС объектов?
Я работаю с ограждающими конструкциями (фасадные системы, кровли и т.п.) - поэтому, наработки есть только в этой сфере.
Как пример, библиотека тонкостенных профилей: http://dwg.ru/dnl/12184

igo, а какие библиотеки Вас интересуют? Я пока учусь создавать параметрические объекты, поэтому было бы интересно пообщаться с единомышленниками.
__________________
Лучше не обещать, чем обещать и не исполнять.
LynxM вне форума  
 
Автор темы   Непрочитано 13.09.2013, 16:30
#10
igo


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


Я разрабатываю КМД. Интересует разработка объектов в целом. Пока только учусь. Есть небольшая база (http://dwg.ru/dnl/11524)... развиваю. Было бы неплохо пообщаться... в программировании я слабак )
igo вне форума  
 
Непрочитано 13.09.2013, 17:07
#11
LynxM


 
Регистрация: 17.08.2010
Kyiv
Сообщений: 688
<phrase 1= Отправить сообщение для LynxM с помощью Skype™


Цитата:
Сообщение от igo Посмотреть сообщение
Пока только учусь
Цитата:
Сообщение от igo Посмотреть сообщение
в программировании я слабак )
Аналогично
Цитата:
Сообщение от igo Посмотреть сообщение
Есть небольшая база (http://dwg.ru/dnl/11524)... развиваю
Качал библиотеку раньше - крутая!

Цитата:
Сообщение от igo Посмотреть сообщение
Было бы неплохо пообщаться...
После выходных напишу. На выходных не будет возможности пообщаться, поэтому в понедельник напишу через ЛС
Offtop: Хороших выходных
__________________
Лучше не обещать, чем обещать и не исполнять.
LynxM вне форума  
 
Непрочитано 13.09.2013, 20:14
#12
swell{d}

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


http://forum.dwg.ru/showthread.php?t=94398
__________________
.: WikiЖБК + YouTube :.
swell{d} вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Переменная iff в скрипте СПДС объекта.

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Содержание раздела ПЗУ (генплан) в ПД Tyhig Прочее. Архитектура и строительство 45 10.12.2015 11:09
Аттестация в Минрегионе по негосударственной экспертизе Людмила Охр Прочее. Архитектура и строительство 350 14.02.2015 17:50
Правила и практика ведения журнала Общих работ sys81 Технология и организация строительства 32 03.10.2014 15:59
Как правильно создать эскиз для параметрического объекта СПДС? LynxM Прочее. Программное обеспечение 1 27.05.2013 12:13
Копирование данных для спецификаций из выносок СПДС в таблицу из мтекстов Red Nova Программирование 177 08.12.2008 11:35