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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > SCAD JSript Объединение перемещений

SCAD JSript Объединение перемещений

Ответ
Поиск в этой теме
Непрочитано 15.02.2020, 06:56 2 | #1
SCAD JSript Объединение перемещений
DEM
 
YngIngKllr
 
СПб
Регистрация: 29.03.2005
Сообщений: 12,968

Простенький скрипт, по объединению перемещений узлов которые находятся на расстоянии 0,1 м по высоте друг от друга.
В готовые программы пока не размещаю, может у кого нибудь свои предложения появятся.
Прилагаю код программы и папку с программой, которую следует разместить
C:\ProgramData\SCAD Soft\Plugins\PreProcessor\Points_merging

Код:
[Выделить все]
var global_obj =
{
	explorer:null,
	excel	:null
};

function Plugin_Clean()
{
	if (global_obj.explorer)
	{
		global_obj.explorer.Quit();
		global_obj.explorer = null;
	}

	if (global_obj.excel)
	{
		global_obj.excel.DisplayAlerts = false;
		global_obj.excel.Quit();
		global_obj.excel = null;
	}
}

function Plugin_Cancel(engine)
{
	Plugin_Clean();

	if(engine)
	{
		engine.Cancel();
	}
}


function Plugin_Execute(engine)
{
try
{var myMsgBox=new ActiveXObject("wscript.shell")
var     WshShell = new ActiveXObject("Wscript.Shell"); //Create WScript Object
		var model=engine.GetModel();
		var Editor=engine.GetEditor();
		var N_Point=model.GetQuantityNode ()
		myMsgBox.Popup (N_Point)
		var info={x:0,y:0,z:0,flag:0};
		var list_PT1 =  new Array();
		var list_PT2 =  new Array();

		for (var index=1; index< N_Point+1; index++){ 
			list_PT1.push(index);
			list_PT2.push(index);
		};
		var X1=0
		var X2=0
		var Y1=0
		var Y2=0
		var Z1=0
		var Z2=0
	for (var index1=0; index1< list_PT1.length; index1++){ 
			model.GetNode(list_PT1[index1], info);
			X1=info.x
			Y1=info.y
			Z1=info.z+0.1
			for (var index2=0; index2< list_PT2.length; index2++){
				model.GetNode(list_PT2[index2], info);
				X2=info.x
				Y2=info.y
				Z2=info.z
				if (X1==X2 && Y1==Y2 && Z1==Z2){
					var DOFUnion={Text:list_PT1[index1].toString()+list_PT2[index2].toString(),Mask:39,ListNode :[list_PT1[index1], list_PT2[index2]]}
					Editor.DOFUnionAdd (DOFUnion)
					}
			}
			
	};

		Plugin_Clean();
		Plugin_Cancel(engine)
		
		Plugin_Clean();
		Plugin_Cancel(engine)

	};
		catch (e)
	{
        	engine.Cancel(DumpObj(e));
	}
}
function DumpObj(obj)
{
	var dump = "";

	dump += obj;

	for(objKey in obj)
	{
		dump += "\n" + objKey.toString() + " : <" + obj[objKey] + ">";
	}

	if(!dump)
	{
		dump = "DumpObj empty";
	}

	return dump;
}

Вложения
Тип файла: rar Points_merging.rar (1.7 Кб, 2 просмотров)

__________________
Работаю за еду.
Working for food.
Für Essen arbeiten.
العمل من أجل الغذاء
Працую за їжу.
Просмотров: 1884
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > SCAD JSript Объединение перемещений

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Встроенный конвертер из SCAD в ANSYS (при экспорте глючит объединение перемещений) beryl ANSYS 9 27.09.2018 18:03
При переводе из форума в scad не переносятся узлы с объединением перемещений. Forist50 SCAD 1 12.04.2017 13:49
Объединение перемещений плиты и балки SCAD Just Dream SCAD 24 20.06.2016 15:58
Объединение перемещений или шарнир? tigra-18 Лира / Лира-САПР 1 07.12.2012 10:45
Объединение перемещений Лира 9.6 (ферма и сендвич-панель) РастОК Лира / Лира-САПР 7 06.07.2010 10:26