How to change parameters of assembly?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
Hi guys! I have a couple of questions about my programm for Fusion 360 API.
We made a system that uploads an assembly from web-server. Here you can see .py and html interface. We made lists with part parameters that are related to each other. User can choose necessary parameters to get right assembly. But the problem is that the system doesn't change the parameters of threads. I wanted to know if you might know how to solve that problem? (for example, if the diameter of rod is equal to 9, thread is equal to M9).
Coupling assembly is designed to transmit torque. The number of fixing holes and parts (nuts, bolts) is depend of the torque. I also have no idea how to change that parameter with code and bind that parameter with web-interface (html file).
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="css/style.css">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-wEmeIV1mKuiNpC+IOBjI7aAzPcEZeedi5yW5f2yOq55WWLwNGmvvx4Um1vskeMj0" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0/dist/js/bootstrap.bundle.min.js" integrity="sha384-p34f1UUtsS3wqzfto5wAAmdvj+osOnFyQFpp4Ua3gs/ZVWx6oOypYoCJhGGScy+8" crossorigin="anonymous"></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<div class="tabs">
<input type="radio" name="inset" value="" id="tab_2" checked>
<label for="tab_2">Муфта фланцевая</label>
<div id="txt_2">
<table>
<tr>
<td>
<h3>
<b>Муфта фланцевая ГОСТ 20761-96</b>
</h3>
<p>
<b>Укажите исполнение:</b>
</p>
<p id="execution" >
<input type="radio" name="execution" value="short">для коротких концов валов <Br>
<input type="radio" name="execution" value="long" checked>для длинных концов валов <Br>
</p>
<hr class="hr-line">
<p><b>Укажите крутящий момент Mкр, Н*м </b></p>
<p>
<select name="torq" id="torq">
<option selected value="16" >16.0</option>
<option value="31.5">31.5</option>
<option value="63">63.0</option>
<option value="125">125.0</option>
<option value="160">160.0</option>
<option value="250">250.0</option>
<option value="400">400.0</option>
<option value ="630">600</option>
<option value ="1000">1000</option>
<option value="1600">1600</option>
<option value="2500">2500</option>
<option value="4000">4000</option>
<option value="6300">6300</option>
<option value="10000">10000</option>
<option value="16000">16000</option>
<option value="25000">25000</option>
<option value="40000">40000</option>
</select>
</p>
<hr class="hr-line">
<p><b>Диаметр посадочного отверстия d, мм:</b></p>
<p>
<select name="exct" id="key">
<option selected value="11" >11</option>
<option value="12">12</option>
<option value="14">14</option>
<option value="16">16</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="22">22</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="28">28</option>
<option value="30">30</option>
<option value="32">32</option>
<option value="35">35</option>
<option value="36">36</option>
<option value="38">38</option>
<option value="40">40</option>
<option value="42">42</option>
<option value="45">45</option>
<option value="48">48</option>
<option value="50">50</option>
</select>
</p>
<hr class="hr-line">
</td>
<td>
<p>
<img src="icons/flancDesign.png" class="fig">
</p>
<br>
</td>
</tr>
<tr class="bord">
<td class = "button-run">
<button class="run-button" id="Click" onclick=btnClick();>Применить</button>
</td>
</tr>
</table>
</div>
</div>
</body>
<script>
function btnClick(){ //функция по нажатию на "Применить"
var key = document.getElementById('key').value;
//проверка выбранного конца вала, выбор исполнения
var executions = document.getElementsByName('execution');
var execution;
for(var i = 0; i < executions.length; i++){
if(executions[i].checked){
execution = executions[i].value;
}
}
//список метки и аргументов для py
var sendStrJson = {
action : "click",
arguments : {key:key, execution:execution}
};
adsk.fusionSendData('send', JSON.stringify(sendStrJson));
}
</script>
</html>
import adsk.core, adsk.fusion, adsk.cam, traceback
import urllib.request
import urllib.error
import urllib.parse
import pathlib
import json
handlers = []
app = adsk.core.Application.get()
ui = app.userInterface
global execution
global num
def run(context):
ui = None
global num
num = 0
try:
app = adsk.core.Application.get()
ui = app.userInterface
workSpace = ui.workspaces.itemById('FusionSolidEnvironment')
tbPanels = workSpace.toolbarPanels
tbPanel = tbPanels.itemById('NewPanel')
if tbPanel:
tbPanel.deleteMe()
tbPanel = tbPanels.add('NewPanel', 'БИБЛИОТЕКА МУФТ', 'SelectPanel', False)
cmdDef = ui.commandDefinitions.itemById('NewCommand')
if cmdDef:
cmdDef.deleteMe()
cmdDef = ui.commandDefinitions.addButtonDefinition('NewCommand', 'Создать муфту', 'Ввод параметров для соединительных муфт','.//resource')
tbPanel.controls.addCommand(cmdDef)
# Запуск плагина
sampleCommandCreated = SampleCommandCreatedEventHandler()
cmdDef.commandCreated.add(sampleCommandCreated)
handlers.append(sampleCommandCreated)
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
class SampleCommandCreatedEventHandler(adsk.core.CommandCreatedEventHandler): #Создание событий по нажатию на надстроку
def __init__(self):
super().__init__()
def notify(self, args):
eventArgs = adsk.core.CommandCreatedEventArgs.cast(args)
cmd = eventArgs.command
# Вызывает создание диалогового окна
onExecute = SampleCommandExecuteHandler()
cmd.execute.add(onExecute)
handlers.append(onExecute)
#Вызывает забирание детали из сервера, кидает в папку, из папки в проект, очищает папку
onModel = SampleCommandCrateModelHandler()
cmd.execute.add(onModel)
handlers.append(onModel)
# Подгружаем сборку муфты с сервера с предварительным сохранением в папке Temp
class SampleCommandCrateModelHandler(adsk.core.CommandEventHandler):
def __init__(self):
super().__init__()
def notify(self, args):
try:
app = adsk.core.Application.get()
ui = app.userInterface
product = app.activeProduct
design = adsk.fusion.Design.cast(product)
rootComp = design.rootComponent
importManager = app.importManager
# url = "http://195.133.144.86:4200//CouplingAssembly.f3d"
# url = "http://195.133.144.86:4200//Couplingv2.f3d"
url = "http://195.133.144.86:4200//CouplingAssemblyv5.f3d"
doc = app.activeDocument
if not doc.dataFile:
ui.messageBox('Пожалуйста, закройте окно и сохраните документ!')
# palette = None
return adsk.fusion.Occurrence.cast(None)
# создание папки для файла
folder = pathlib.Path(r'C:\Temp')
if not folder.exists():
folder.mkdir()
#задание имени для файла по имени на сервере
parsed = urllib.parse.urlparse(url)
filename = parsed.path.split('//')[-1]
dlFile = folder / filename
# провка расширения файла с сервера
if dlFile.suffix != '.f3d':
ui.messageBox('F3D File Only')
return adsk.fusion.Occurrence.cast(None)
# если файл если, то удалить
if dlFile.is_file():
dlFile.unlink()
# загрузка файла
try:
data = urllib.request.urlopen(url).read()
with open(str(dlFile), mode="wb") as f:
f.write(data)
except:
ui.messageBox(f'File not found in URL\n{url}')
return adsk.fusion.Occurrence.cast(None)
# импортирование
archiveOptionsNew = importManager.createFusionArchiveImportOptions(str(dlFile))
importManager.importToTarget(archiveOptionsNew, rootComp)
# удаление скаченного файла
if dlFile.is_file():
dlFile.unlink()
except:
ui.messageBox('Command executed failed: {}'.format(traceback.format_exc()))
class SampleCommandExecuteHandler(adsk.core.CommandEventHandler): #создание диалогового окна и ожидание действия в HTML
def __init__(self):
super().__init__()
def notify(self, args):
try:
app = adsk.core.Application.get()
ui = app.userInterface
palette = ui.palettes.itemById('myExport')
if not palette:
palette = ui.palettes.add('myExport', 'БИБЛИОТЕКА МУФТ', 'index.html', True, True, True, 750, 550)
palette.dockingState = adsk.core.PaletteDockingStates.PaletteDockStateRight
#должен быть запуск параметризации после нажатия на кнопку
onHTMLEvent = MyHTMLEventHandler()
palette.incomingFromHTML.add(onHTMLEvent)
handlers.append(onHTMLEvent)
else:
palette.isVisible = True
except:
ui.messageBox('Command executed failed: {}'.format(traceback.format_exc()))
class MyHTMLEventHandler(adsk.core.HTMLEventHandler): #По нажатию кнопки проверяется нажатое и меняются параметры у сборки
def __init__(self):
super().__init__()
def notify(self, args):
global execution
global num
# global
try:
app = adsk.core.Application.get()
ui = app.userInterface
design = app.activeProduct
htmlArgs = adsk.core.HTMLEventArgs.cast(args)
data = json.loads(htmlArgs.data)
if data['action']=='clickOk':
ui.messageBox('ok!')
num += 1
palette = ui.palettes.itemById('myExport')
if palette :
palette.isVisible = False
#если был клик, то забираем аргументы и проверяем выбранное исполнение
if data['action']=='click':
args = data['arguments']
if args['execution'] == 'short': # для коротких концов валов
execution = '1'
if args['execution'] == 'long': # для длинных концов валов
execution = '2'
# параметризация для полумуфты 1
DHC, LHC, l1HC, l2HC, d2HC, d1HC, dHC, ext_all_HC, B_HC, H_HC, d3HC, d4HC, D2_HC, b1HC, b2HC, R1_HC, R_HC = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
dataHC = [# Мкр = 16.0
('80 mm', '25 mm', '8 mm', '2 mm', '25 mm', '11 mm', '18 mm', '1000 mm', '2 mm', '12.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '32 mm', '8 mm', '2 mm', '25 mm', '12 mm', '20 mm', '1000 mm', '2 mm', '13.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '32 mm', '8 mm', '2 mm', '25 mm', '14 mm', '22 mm', '1000 mm', '2.5 mm', '16.3 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '42 mm', '8 mm', '2 mm', '25 mm', '16 mm', '25 mm', '1000 mm', '2.5 mm', '18.3 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '42 mm', '8 mm', '2 mm', '25 mm', '18 mm', '28 mm', '1000 mm', '3 mm', '20.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 31.5
('90 mm', '42 mm', '10 mm', '2 mm', '30 mm', '19 mm', '30 mm', '1000 mm', '3 mm', '21.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('90 mm', '52 mm', '10 mm', '2 mm', '30 mm', '20 mm', '32 mm', '1000 mm', '3 mm', '22.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('90 mm', '52 mm', '10 mm', '2 mm', '30 mm', '22 mm', '35 mm', '1000 mm', '3 mm', '24.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 63.0
('100 mm', '52 mm', '12 mm', '2 mm', '40 mm', '24 mm', '38 mm', '1000 mm', '4 mm', '27.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('100 mm', '62 mm', '12 mm', '2 mm', '40 mm', '25 mm', '40 mm', '1000 mm', '4 mm', '28.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('100 mm', '62 mm', '12 mm', '2 mm', '40 mm', '28 mm', '42 mm', '1000 mm', '4 mm', '31.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 125.0
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '30 mm', '48 mm', '1000 mm', '4 mm', '33.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '32 mm', '52 mm', '1000 mm', '5 mm', '35.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '35 mm', '52 mm', '1000 mm', '5 mm', '38.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '36 mm', '52 mm', '1000 mm', '5 mm', '39.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 160.0
('120 mm', '82 mm', '16 mm', '2 mm', '50 mm', '38 mm', '56 mm', '1000 mm', '5 mm', '41.8 mm', '10 mm', '11 mm', '90 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 250.0
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '40 mm', '65 mm', '1000 mm', '5 mm', '44.4 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '42 mm', '65 mm', '1000 mm', '5 mm', '46.4 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '45 mm', '70 mm', '1000 mm', '5 mm', '49.9 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 400.0
('140 mm', '112 mm', '17 mm', '2 mm', '65 mm', '48 mm', '75 mm', '1000 mm', '7 mm', '52.9 mm', '10 mm', '11 mm', '110 mm', '1.6 mm', '1 mm', '1 mm', '0.4 mm'),
('140 mm', '112 mm', '17 mm', '2 mm', '65 mm', '50 mm', '75 mm', '1000 mm', '7 mm', '54.9 mm', '10 mm', '11 mm', '110 mm', '1.6 mm', '1 mm', '1 mm', '0.4 mm')]
# Мкр =
# Мкр =
# Мкр =
# Мкр =
keyParamHC = args['key'] +' mm'
ui.messageBox('ПОДТВЕРДИТЬ ДЕЙСТВИЕ')
for i in range(0, len(dataHC)):
if dataHC[i][5] == keyParamHC:
DHC = dataHC[i][0]
LHC = dataHC[i][1]
l1HC = dataHC[i][2]
l2HC = dataHC[i][3]
d2HC = dataHC[i][4]
d1HC = dataHC[i][5]
dHC = dataHC[i][6]
ext_all_HC = dataHC[i][7]
B_HC = dataHC[i][8]
H_HC = dataHC[i][9]
d3HC = dataHC[i][10]
d4HC = dataHC[i][11]
D2_HC = dataHC[i][12]
b1HC = dataHC[i][13]
b2HC = dataHC[i][14]
R1_HC = dataHC[i][15]
R_HC = dataHC[i][16]
break
if num == 0:
DHCParam = design.userParameters.itemByName('DHC')
DHCParam.expression = DHC
LHCParam = design.userParameters.itemByName('LHC')
LHCParam.expression = LHC
l_1HCParam = design.userParameters.itemByName('l1HC')
l_1HCParam.expression = l1HC
l_2HCParam = design.userParameters.itemByName('l2HC')
l_2HCParam.expression = l2HC
d_1HCParam = design.userParameters.itemByName('d1HC')
d_1HCParam.expression = d1HC
dHCParam = design.userParameters.itemByName('dHC')
dHCParam.expression = dHC
d_2HCParam = design.userParameters.itemByName('d2HC')
d_2HCParam.expression = d2HC
extHCParam = design.userParameters.itemByName('ext_all_HC')
extHCParam.expression = ext_all_HC
BHCParam = design.userParameters.itemByName('B_HC')
BHCParam.expression = B_HC
H_HCParam = design.userParameters.itemByName('H_HC')
H_HCParam.expression = H_HC
d_3HCParam = design.userParameters.itemByName('d3HC')
d_3HCParam.expression = d3HC
d_4HCParam = design.userParameters.itemByName('d4HC')
d_4HCParam.expression = d4HC
D_2HCParam = design.userParameters.itemByName('D2_HC')
D_2HCParam.expression = D2_HC
b_1HCParam = design.userParameters.itemByName('b1HC')
b_1HCParam.expression = b1HC
b_2HCParam = design.userParameters.itemByName('b2HC')
b_2HCParam.expression = b2HC
R_1HCParam = design.userParameters.itemByName('R1_HC')
R_1HCParam.expression = R1_HC
R_HCParam = design.userParameters.itemByName('R_HC')
R_HCParam.expression = R_HC
elif num != 0:
DHCParam = design.userParameters.itemByName('DHC' + '_' + str(num))
DHCParam.expression = DHC
LHCParam = design.userParameters.itemByName('LHC' + '_' + str(num))
LHCParam.expression = LHC
l_1HCParam = design.userParameters.itemByName('l1HC' + '_' + str(num))
l_1HCParam.expression = l1HC
l_2HCParam = design.userParameters.itemByName('l2HC' + '_' + str(num))
l_2HCParam.expression = l2HC
d_1HCParam = design.userParameters.itemByName('d1HC' + '_' + str(num))
d_1HCParam.expression = d1HC
dHCParam = design.userParameters.itemByName('dHC' + '_' + str(num))
dHCParam.expression = dHC
d_2HCParam = design.userParameters.itemByName('d2HC' + '_' + str(num))
d_2HCParam.expression = d2HC
extHCParam = design.userParameters.itemByName('ext_all_HC' + '_' + str(num))
extHCParam.expression = ext_all_HC
BHCParam = design.userParameters.itemByName('B_HC' + '_' + str(num))
BHCParam.expression = B_HC
H_HCParam = design.userParameters.itemByName('H_HC' + '_' + str(num))
H_HCParam.expression = H_HC
d_3HCParam = design.userParameters.itemByName('d3HC' + '_' + str(num))
d_3HCParam.expression = d3HC
d_4HCParam = design.userParameters.itemByName('d4HC' + '_' + str(num))
d_4HCParam.expression = d4HC
D_2HCParam = design.userParameters.itemByName('D2_HC' + '_' + str(num))
D_2HCParam.expression = D2_HC
b_1HCParam = design.userParameters.itemByName('b1HC' + '_' + str(num))
b_1HCParam.expression = b1HC
b_2HCParam = design.userParameters.itemByName('b2HC' + '_' + str(num))
b_2HCParam.expression = b2HC
R_1HCParam = design.userParameters.itemByName('R1_HC' + '_' + str(num))
R_1HCParam.expression = R1_HC
R_HCParam = design.userParameters.itemByName('R_HC' + '_' + str(num))
R_HCParam.expression = R_HC
# параметризация для полумуфты 1
DHC2, LHC2, l1_HC2, l2_HC2, d2_HC2, d1_HC2, dHC2, ext_all_HC2, B_HC2, H_HC2, d3HC2, d4HC2, D2_HC2, b1_HC2, b2_HC2, R1_HC2, R_HC2 = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
dataHC2 = [# Мкр = 16.0
('80 mm', '25 mm', '8 mm', '2 mm', '25 mm', '11 mm', '18 mm', '1000 mm', '2 mm', '12.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '32 mm', '8 mm', '2 mm', '25 mm', '12 mm', '20 mm', '1000 mm', '2 mm', '13.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '32 mm', '8 mm', '2 mm', '25 mm', '14 mm', '22 mm', '1000 mm', '2.5 mm', '16.3 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '42 mm', '8 mm', '2 mm', '25 mm', '16 mm', '25 mm', '1000 mm', '2.5 mm', '18.3 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('80 mm', '42 mm', '8 mm', '2 mm', '25 mm', '18 mm', '28 mm', '1000 mm', '3 mm', '20.8 mm', '8 mm', '9 mm', '55 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 31.5
('90 mm', '42 mm', '10 mm', '2 mm', '30 mm', '19 mm', '30 mm', '1000 mm', '3 mm', '21.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('90 mm', '52 mm', '10 mm', '2 mm', '30 mm', '20 mm', '32 mm', '1000 mm', '3 mm', '22.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('90 mm', '52 mm', '10 mm', '2 mm', '30 mm', '22 mm', '35 mm', '1000 mm', '3 mm', '24.8 mm', '8 mm', '9 mm', '60 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 63.0
('100 mm', '52 mm', '12 mm', '2 mm', '40 mm', '24 mm', '38 mm', '1000 mm', '4 mm', '27.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('100 mm', '62 mm', '12 mm', '2 mm', '40 mm', '25 mm', '40 mm', '1000 mm', '4 mm', '28.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('100 mm', '62 mm', '12 mm', '2 mm', '40 mm', '28 mm', '42 mm', '1000 mm', '4 mm', '31.3 mm', '8 mm', '9 mm', '70 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
# Мкр = 125.0
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '30 mm', '48 mm', '1000 mm', '4 mm', '33.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.2 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '32 mm', '52 mm', '1000 mm', '5 mm', '35.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '35 mm', '52 mm', '1000 mm', '5 mm', '38.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('110 mm', '82 mm', '15 mm', '2 mm', '45 mm', '36 mm', '52 mm', '1000 mm', '5 mm', '39.8 mm', '10 mm', '11 mm', '80 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 160.0
('120 mm', '82 mm', '16 mm', '2 mm', '50 mm', '38 mm', '56 mm', '1000 mm', '5 mm', '41.8 mm', '10 mm', '11 mm', '90 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 250.0
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '40 mm', '65 mm', '1000 mm', '5 mm', '44.4 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '42 mm', '65 mm', '1000 mm', '5 mm', '46.4 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
('130 mm', '112 mm', '17 mm', '2 mm', '55 mm', '45 mm', '70 mm', '1000 mm', '5 mm', '49.9 mm', '10 mm', '11 mm', '100 mm', '1 mm', '0.5 mm', '1 mm', '0.4 mm'),
# Мкр = 400.0
('140 mm', '112 mm', '17 mm', '2 mm', '65 mm', '48 mm', '75 mm', '1000 mm', '7 mm', '52.9 mm', '10 mm', '11 mm', '110 mm', '1.6 mm', '1 mm', '1 mm', '0.4 mm'),
('140 mm', '112 mm', '17 mm', '2 mm', '65 mm', '50 mm', '75 mm', '1000 mm', '7 mm', '54.9 mm', '10 mm', '11 mm', '110 mm', '1.6 mm', '1 mm', '1 mm', '0.4 mm')]
# keyParamHC = args['key'] +' mm'
# ui.messageBox('ПОДТВЕРДИТЬ ДЕЙСТВИЕ')
for i in range(0, len(dataHC2)):
if dataHC2[i][5] == keyParamHC:
DHC2 = dataHC2[i][0]
LHC2 = dataHC2[i][1]
l1_HC2 = dataHC2[i][2]
l2_HC2 = dataHC2[i][3]
d2_HC2 = dataHC2[i][4]
d1_HC2 = dataHC2[i][5]
dHC2 = dataHC2[i][6]
ext_all_HC2 = dataHC2[i][7]
B_HC2 = dataHC2[i][8]
H_HC2 = dataHC2[i][9]
d3HC2 = dataHC2[i][10]
d4HC2 = dataHC2[i][11]
D2_HC2 = dataHC2[i][12]
b1_HC2 = dataHC2[i][13]
b2_HC2 = dataHC2[i][14]
R1_HC2 = dataHC2[i][15]
R_HC2 = dataHC2[i][16]
break
if num == 0:
DHCParam2 = design.userParameters.itemByName('DHC2')
DHCParam2.expression = DHC2
LHCParam2 = design.userParameters.itemByName('LHC2')
LHCParam2.expression = LHC2
l_1HCParam2 = design.userParameters.itemByName('l1_HC2')
l_1HCParam2.expression = l1_HC2
l_2HCParam2 = design.userParameters.itemByName('l2_HC2')
l_2HCParam2.expression = l2_HC2
d_1HCParam2 = design.userParameters.itemByName('d1_HC2')
d_1HCParam2.expression = d1_HC2
dHCParam2 = design.userParameters.itemByName('dHC2')
dHCParam2.expression = dHC2
d_2HCParam2 = design.userParameters.itemByName('d2_HC2')
d_2HCParam2.expression = d2_HC2
extHCParam2 = design.userParameters.itemByName('ext_all_HC2')
extHCParam2.expression = ext_all_HC2
BHCParam2 = design.userParameters.itemByName('B_HC2')
BHCParam2.expression = B_HC2
H_HCParam2 = design.userParameters.itemByName('H_HC2')
H_HCParam2.expression = H_HC2
d_3HCParam2 = design.userParameters.itemByName('d3HC2')
d_3HCParam2.expression = d3HC2
d_4HCParam2 = design.userParameters.itemByName('d4HC2')
d_4HCParam2.expression = d4HC2
D_2HCParam2 = design.userParameters.itemByName('D2_HC2')
D_2HCParam2.expression = D2_HC2
b_1HCParam2 = design.userParameters.itemByName('b1_HC2')
b_1HCParam2.expression = b1_HC2
b_2HCParam2 = design.userParameters.itemByName('b2_HC2')
b_2HCParam2.expression = b2HC
R_1HCParam2 = design.userParameters.itemByName('R1_HC2')
R_1HCParam2.expression = R1_HC2
R_HCParam2 = design.userParameters.itemByName('R_HC2')
R_HCParam2.expression = R_HC2
elif num != 0:
DHCParam2 = design.userParameters.itemByName('DHC2' + '_' + str(num))
DHCParam2.expression = DHC2
LHCParam2 = design.userParameters.itemByName('LHC2' + '_' + str(num))
LHCParam2.expression = LHC2
l_1HCParam2 = design.userParameters.itemByName('l1_HC2' + '_' + str(num))
l_1HCParam2.expression = l1_HC2
l_2HCParam2 = design.userParameters.itemByName('l2_HC2' + '_' + str(num))
l_2HCParam2.expression = l2_HC2
d_1HCParam2 = design.userParameters.itemByName('d1_HC2' + '_' + str(num))
d_1HCParam2.expression = d1_HC2
dHCParam2 = design.userParameters.itemByName('dHC2' + '_' + str(num))
dHCParam2.expression = dHC2
d_2HCParam2 = design.userParameters.itemByName('d2_HC2' + '_' + str(num))
d_2HCParam2.expression = d2_HC2
extHCParam2 = design.userParameters.itemByName('ext_all_HC2' + '_' + str(num))
extHCParam2.expression = ext_all_HC2
BHCParam2 = design.userParameters.itemByName('B_HC2' + '_' + str(num))
BHCParam2.expression = B_HC2
H_HCParam2 = design.userParameters.itemByName('H_HC2' + '_' + str(num))
H_HCParam2.expression = H_HC2
d_3HCParam2 = design.userParameters.itemByName('d3HC2' + '_' + str(num))
d_3HCParam2.expression = d3HC2
d_4HCParam2 = design.userParameters.itemByName('d4HC2' + '_' + str(num))
d_4HCParam2.expression = d4HC2
D_2HCParam2 = design.userParameters.itemByName('D2_HC2' + '_' + str(num))
D_2HCParam2.expression = D2_HC2
b_1HCParam2 = design.userParameters.itemByName('b1_HC2' + '_' + str(num))
b_1HCParam2.expression = b1_HC2
b_2HCParam2 = design.userParameters.itemByName('b2_HC2' + '_' + str(num))
b_2HCParam2.expression = b2HC
R_1HCParam2 = design.userParameters.itemByName('R1_HC2' + '_' + str(num))
R_1HCParam2.expression = R1_HC2
R_HCParam2 = design.userParameters.itemByName('R_HC2' + '_' + str(num))
R_HCParam2.expression = R_HC2
# Параметризация болта ГОСТ 7817
dataBolt78 = [('12 mm', '5.5 mm', '35 mm', '29.5 mm', '22.5 mm', '8 mm', '9 mm', '0.4 mm', '1 mm', '5.3 mm', '2 mm', '100 mm'),
('12 mm', '5.5 mm', '40 mm', '34 mm', '24.5 mm', '8 mm', '9 mm', '0.4 mm', '1 mm', '5.3 mm', '2 mm', '100 mm'),
('14 mm', '7 mm', '45 mm', '39.5 mm', '27 mm', '10 mm', '11 mm', '0.4 mm', '2.5 mm', '6.7 mm', '2.5 mm', '100 mm'),
('14 mm', '7 mm', '50 mm', '44.5 mm', '32 mm', '10 mm', '11 mm', '0.4 mm', '2.5 mm', '6.7 mm', '2.5 mm', '100 mm'),
('17 mm', '8 mm', '60 mm', '53 mm', '40 mm', '12 mm', '13 mm', '0.6 mm', '3.2 mm', '8.1 mm', '3.2 mm', '100 mm'),
('17 mm', '8 mm', '65 mm', '58 mm', '45 mm', '12 mm', '13 mm', '0.6 mm', '3.2 mm', '8.1 mm', '3.2 mm', '100 mm'),
('17 mm', '8 mm', '70 mm', '63 mm', '50 mm', '12 mm', '13 mm', '0.6 mm', '3.2 mm', '8.1 mm', '3.2 mm', '100 mm'),
('22 mm', '12 mm', '80 mm', '71 mm', '53 mm', '16 mm', '17 mm', '0.6 mm', '4 mm', '11.1 mm', '4 mm', '100 mm'),
('27 mm', '13 mm', '90 mm', '80 mm', '60 mm', '20 mm', '21 mm', '0.8 mm', '4 mm', '13.8 mm', '4 mm', '100 mm'),
('27 mm', '13 mm', '100 mm', '90 mm', '70 mm', '20 mm', '21 mm', '0.8 mm', '4 mm', '13.8 mm', '4 mm', '100 mm'),
('32 mm', '15 mm', '110 mm', '99 mm', '67 mm', '24 mm', '25 mm', '0.8 mm', '5 mm', '16.6 mm', '5', '100 mm'),
('32 mm', '15 mm', '120 mm', '109 mm', '77 mm', '24 mm', '25 mm', '0.8 mm', '5 mm', '16.6 mm', '5', '100 mm')]
keyParamBolt78 = d4HC
for i in range(0, len(dataBolt78)):
if dataBolt78[i][6] == keyParamBolt78:
S_bolt78 = dataBolt78[i][0]
m_bolt78 = dataBolt78[i][1]
L_bolt78 = dataBolt78[i][2]
l1_bolt78 = dataBolt78[i][3]
l2_bolt78 = dataBolt78[i][4]
d_bolt78 = dataBolt78[i][5]
d1_bolt78 = dataBolt78[i][6]
R_bolt78 = dataBolt78[i][7]
l3_bolt78 = dataBolt78[i][8]
d3_bolt78 = dataBolt78[i][9]
d4_bolt78 = dataBolt78[i][10]
ext_all_bolt = dataBolt78[i][11]
break
if num == 0:
S_boltParam = design.userParameters.itemByName('S_bolt78')
S_boltParam.expression = S_bolt78
m_BoltParam = design.userParameters.itemByName('m_bolt78')
m_BoltParam.expression = m_bolt78
LBoltParam = design.userParameters.itemByName('L_bolt78')
LBoltParam.expression = L_bolt78
l_1BoltParam = design.userParameters.itemByName('l1_bolt78')
l_1BoltParam.expression = l1_bolt78
l_2BoltParam = design.userParameters.itemByName('l2_bolt78')
l_2BoltParam.expression = l2_bolt78
dBoltParam = design.userParameters.itemByName('d_bolt78')
dBoltParam.expression = d_bolt78
d_1BoltParam = design.userParameters.itemByName('d1_bolt78')
d_1BoltParam.expression = d1_bolt78
R_BoltParam = design.userParameters.itemByName('R_bolt78')
R_BoltParam.expression = R_bolt78
l_3BoltParam = design.userParameters.itemByName('l3_bolt78')
l_3BoltParam.expression = l3_bolt78
d_3BoltParam = design.userParameters.itemByName('d3_bolt78')
d_3BoltParam.expression = d3_bolt78
d_4BoltParam = design.userParameters.itemByName('d4_bolt78')
d_4BoltParam.expression = d4_bolt78
ext_allBoltParam = design.userParameters.itemByName('ext_all_bolt')
ext_allBoltParam.expression = ext_all_bolt
elif num != 0:
S_boltParam = design.userParameters.itemByName('S_bolt78' + '_' + str(num))
S_boltParam.expression = S_bolt78
m_BoltParam = design.userParameters.itemByName('m_bolt78' + '_' + str(num))
m_BoltParam.expression = m_bolt78
LBoltParam = design.userParameters.itemByName('L_bolt78' + '_' + str(num))
LBoltParam.expression = L_bolt78
l_1BoltParam = design.userParameters.itemByName('l1_bolt78' + '_' + str(num))
l_1BoltParam.expression = l1_bolt78
l_2BoltParam = design.userParameters.itemByName('l2_bolt78' + '_' + str(num))
l_2BoltParam.expression = l2_bolt78
dBoltParam = design.userParameters.itemByName('d_bolt78' + '_' + str(num))
dBoltParam.expression = d_bolt78
d_1BoltParam = design.userParameters.itemByName('d1_bolt78' + '_' + str(num))
d_1BoltParam.expression = d1_bolt78
R_BoltParam = design.userParameters.itemByName('R_bolt78' + '_' + str(num))
R_BoltParam.expression = R_bolt78
l_3BoltParam = design.userParameters.itemByName('l3_bolt78' + '_' + str(num))
l_3BoltParam.expression = l3_bolt78
d_3BoltParam = design.userParameters.itemByName('d3_bolt78' + '_' + str(num))
d_3BoltParam.expression = d3_bolt78
d_4BoltParam = design.userParameters.itemByName('d4_bolt78' + '_' + str(num))
d_4BoltParam.expression = d4_bolt78
ext_allBoltParam = design.userParameters.itemByName('ext_all_bolt' + '_' + str(num))
ext_allBoltParam.expression = ext_all_bolt
# Параметризация для болта ГОСТ 7796
S_bolt77 = 0
d_bolt77 = 0
m_bolt77 = 0
D_bolt77 = 0
R_bolt77 = 0
l1_bolt77 = 0
b_bolt77 = 0
chm_bolt77 = 0
# thr_bolt2 = 0
dataBolt77 = [('12 mm', '8 mm', '5 mm', '5.718 mm', '30 mm', '0.2 mm', '22 mm', '0.8 mm'),
('12 mm', '8 mm', '5 mm', '5.718 mm', '0.1 mm', '0.2 mm','35 mm', '22 mm', '0.8 mm'),
('12 mm', '8 mm', '5 mm', '5.718 mm', '0.1 mm', '0.2 mm','40 mm', '22 mm', '0.8 mm'),
('14 mm', '10 mm', '6 mm', '6.7 mm', '0.1 mm', '0.2 mm', '45 mm', '26 mm', '0.92 mm'),
('14 mm', '10 mm', '6 mm', '6.7 mm', '50 mm', '0.2 mm','26 mm', '0.92 mm'),
('17 mm', '12 mm', '7 mm', '8.1 mm', '60 mm','0.2 mm', '30 mm', '1 mm'),
('17 mm', '12 mm', '7 mm', '8.1 mm', '65 mm', '0.2 mm','30 mm', '1 mm'),
('17 mm', '12 mm', '7 mm', '8.1 mm', '70 mm', '0.2 mm','30 mm', '1 mm'),
('22 mm', '16 mm', '8 mm', '10.5 mm', '80 mm', '0.2 mm','38 mm', '1.3 mm'),
('27 mm', '20 mm', '11 mm', '12.9 mm', '90 mm', '0.2 mm','46 mm', '1.5 mm'),
('27 mm', '20 mm', '11 mm', '12.9 mm', '100 mm', '0.2 mm','46 mm', '1.5 mm'),
('32 mm', '24 mm', '13 mm', '15.3 mm', '110 mm', '0.2 mm','54 mm', '1.8 mm'),
('32 mm', '24 mm', '13 mm', '15.3 mm', '120 mm', '0.2 mm', '54 mm', '1.8 mm')]
keyParamBolt77 = d3HC
for i in range(0, len(dataBolt77)):
if dataBolt77[i][1] == keyParamBolt77:
S_bolt77 = dataBolt77[i][0]
d_bolt77 = dataBolt77[i][1]
m_bolt77 = dataBolt77[i][2]
D_bolt77 = dataBolt77[i][3]
R_bolt77 = dataBolt77[i][4]
l1_bolt77 = dataBolt77[i][5]
b_bolt77 = dataBolt77[i][6]
chm_bolt77 = dataBolt77[i][7]
break
if num == 0:
S_bolt2Param = design.userParameters.itemByName('S_bolt77')
S_bolt2Param.expression = S_bolt77
dB2Param = design.userParameters.itemByName('d_bolt77')
dB2Param.expression = d_bolt77
m_B2Param = design.userParameters.itemByName('m_bolt77')
m_B2Param.expression = m_bolt77
D_B2Param = design.userParameters.itemByName('D_bolt77')
D_B2Param.expression = D_bolt77
R_Bolt2Param = design.userParameters.itemByName('R_bolt77')
R_Bolt2Param.expression = R_bolt77
l_1B2Param = design.userParameters.itemByName('l1_bolt77')
l_1B2Param.expression = l1_bolt77
bB2Param = design.userParameters.itemByName('b_bolt77')
bB2Param.expression = b_bolt77
chmB2Param = design.userParameters.itemByName('chm_bolt77')
chmB2Param.expression = chm_bolt77
if num != 0:
S_bolt2Param = design.userParameters.itemByName('S_bolt77' + '_' + str(num))
S_bolt2Param.expression = S_bolt77
dB2Param = design.userParameters.itemByName('d_bolt77' + '_' + str(num))
dB2Param.expression = d_bolt77
m_B2Param = design.userParameters.itemByName('m_bolt77' + '_' + str(num))
m_B2Param.expression = m_bolt77
D_B2Param = design.userParameters.itemByName('D_bolt77' + '_' + str(num))
D_B2Param.expression = D_bolt77
R_Bolt2Param = design.userParameters.itemByName('R_bolt77' + '_' + str(num))
R_Bolt2Param.expression = R_bolt77
l_1B2Param = design.userParameters.itemByName('l1_bolt77' + '_' + str(num))
l_1B2Param.expression = l1_bolt77
bB2Param = design.userParameters.itemByName('b_bolt77' + '_' + str(num))
bB2Param.expression = b_bolt77
chmB2Param = design.userParameters.itemByName('chm_bolt77' + '_' + str(num))
chmB2Param.expression = chm_bolt77
# Параметризация гайки 1
S_nut = 0
d_nut = 0
k_nut = 0
ch_nut = 0
dataNut = [('12 mm', '8 mm', '6.5 mm', '0.4 mm'),
('14 mm', '10 mm', '8 mm', '0.5 mm'),
('17 mm', '12 mm', '10 mm', '0.55 mm'),
('22 mm', '16 mm', '13 mm', '0.625 mm'),
('27 mm', '20 mm', '16 mm', '0.78 mm'),
('32 mm', '24 mm', '19 mm', '0.94 mm')]
keyParamNut = d_bolt78
for i in range(0, len(dataNut)):
if dataNut[i][1] == keyParamNut:
S_nut = dataNut[i][0]
d_nut = dataNut[i][1]
k_nut = dataNut[i][2]
ch_nut = dataNut[i][3]
break
if num == 0:
S_nutParam = design.userParameters.itemByName('S_nut')
S_nutParam.expression = S_nut
dNutParam = design.userParameters.itemByName('d_nut')
dNutParam.expression = d_nut
kNutParam = design.userParameters.itemByName('k_nut')
kNutParam.expression = k_nut
chNutParam = design.userParameters.itemByName('ch_nut')
chNutParam.expression = ch_nut
elif num != 0:
S_nutParam = design.userParameters.itemByName('S_nut' + str(num))
S_nutParam.expression = S_nut
dNutParam = design.userParameters.itemByName('d_nut' + str(num))
dNutParam.expression = d_nut
kNutParam = design.userParameters.itemByName('k_nut' + str(num))
kNutParam.expression = k_nut
chNutParam = design.userParameters.itemByName('ch_nut' + str(num))
chNutParam.expression = ch_nut
# Параметризация гайки 2
S_nut2 = 0
d_nut2 = 0
k_nut2 = 0
ch_nut2 = 0
dataNut2 = [('12 mm', '8 mm', '6.5 mm', '0.4 mm'),
('14 mm', '10 mm', '8 mm', '0.5 mm'),
('17 mm', '12 mm', '10 mm', '0.55 mm'),
('22 mm', '16 mm', '13 mm', '0.625 mm'),
('27 mm', '20 mm', '16 mm', '0.78 mm'),
('32 mm', '24 mm', '19 mm', '0.94 mm')]
keyParamNut2 = d_bolt77
for i in range(0, len(dataNut)):
if dataNut2[i][1] == keyParamNut2:
S_nut2 = dataNut2[i][0]
d_nut2 = dataNut2[i][1]
k_nut2 = dataNut2[i][2]
ch_nut2 = dataNut2[i][3]
break
if num == 0:
S_nutParam_1 = design.userParameters.itemByName('S_nut2')
S_nutParam_1.expression = S_nut2
dNutParam_1 = design.userParameters.itemByName('d_nut2')
dNutParam_1.expression = d_nut2
kNutParam_1 = design.userParameters.itemByName('k_nut2')
kNutParam_1.expression = k_nut2
chNutParam_1 = design.userParameters.itemByName('ch_nut2')
chNutParam_1.expression = ch_nut2
elif num != 0:
S_nutParam_1 = design.userParameters.itemByName('S_nut2' + '_' + str(num))
S_nutParam_1.expression = S_nut2
dNutParam_1 = design.userParameters.itemByName('d_nut2' + '_' + str(num))
dNutParam_1.expression = d_nut2
kNutParam_1 = design.userParameters.itemByName('k_nut2' + '_' + str(num))
kNutParam_1.expression = k_nut2
chNutParam_1 = design.userParameters.itemByName('ch_nut2' + '_' + str(num))
chNutParam_1.expression = ch_nut2
# Параметризация шайбы 1
d_ws = 0
b_ws = 0
Dws = 0
Sws = 0
# angle_ws = 0
ext_ws = 0
dataWs = [('8 mm', '2 mm', '10.2 mm', '1.6 mm', '100 mm'),
('10 mm', '2.5 mm', '12.7 mm', '2 mm', '100 mm'),
('12 mm', '3.5 mm', '15.7 mm', '2.5 mm', '100 mm'),
('16 mm', '4.5 mm', '20.8 mm', '3.5 mm', '100 mm'),
('20 mm', '5.5 mm','26 mm', '4.5 mm', '100 mm'),
('24 mm','6.5 mm', '31 mm', '5.5 mm', '100 mm')]
keyParamWs = d_bolt77
for i in range(0, len(dataWs)):
if dataWs[i][0] == keyParamWs:
d_ws = dataWs[i][0]
b_ws = dataWs[i][1]
Dws = dataWs[i][2]
Sws = dataWs[i][3]
# angle_ws = dataWs[i][4]
ext_ws = dataWs[i][4]
break
if num == 0:
dParam = design.userParameters.itemByName('d_ws')
dParam.expression = d_ws
bParam = design.userParameters.itemByName('b_ws')
bParam.expression = b_ws
DParam = design.userParameters.itemByName('Dws')
DParam.expression = Dws
S_Param = design.userParameters.itemByName('Sws')
S_Param.expression = Sws
# angleParam = design.userParameters.itemByName('angle')
# angleParam.expression = angle_ws
ext_WParam = design.userParameters.itemByName('ext_ws')
ext_WParam.expression = ext_ws
elif num != 0:
dParam = design.userParameters.itemByName('d_ws' + '_' + str(num))
dParam.expression = d_ws
bParam = design.userParameters.itemByName('b_ws' + '_' + str(num))
bParam.expression = b_ws
DParam = design.userParameters.itemByName('Dws' + '_' + str(num))
DParam.expression = Dws
S_Param = design.userParameters.itemByName('Sws' + '_' + str(num))
S_Param.expression = Sws
# angleParam = design.userParameters.itemByName('angle' + '_' + str(num))
# angleParam.expression = angle_ws
ext_WParam = design.userParameters.itemByName('ext_ws' + '_' + str(num))
ext_WParam.expression = ext_ws
# Параметризация шайбы 2
d_ws2 = 0
b_ws2 = 0
D_ws2 = 0
Sws2 = 0
# angle_ws2 = 0
ext_ws2 = 0
dataWs2 = [('8 mm', '2 mm', '10.2 mm', '1.6 mm', '1000 mm'),
('10 mm', '2.5 mm', '12.7 mm', '2 mm', '1000 mm'),
('12 mm', '3.5 mm', '15.7 mm', '2.5 mm', '1000 mm'),
('16 mm', '4.5 mm', '20.8 mm', '3.5 mm', '1000 mm'),
('20 mm', '5.5 mm','26 mm', '4.5 mm', '1000 mm'),
('24 mm','6.5 mm', '31 mm', '5.5 mm','1000 mm')]
keyParamWs2 = d_bolt78
for i in range(0, len(dataWs2)):
if dataWs2[i][0] == keyParamWs2:
d_ws2 = dataWs2[i][0]
b_ws2 = dataWs2[i][1]
D_ws2 = dataWs2[i][2]
Sws2 = dataWs2[i][3]
# angle_ws2 = dataWs2[i][4]
ext_ws2 = dataWs2[i][4]
break
if num == 0:
dParam = design.userParameters.itemByName('d_ws2')
dParam.expression = d_ws2
bParam = design.userParameters.itemByName('b_ws2')
bParam.expression = b_ws2
DParam = design.userParameters.itemByName('D_ws2')
DParam.expression = D_ws2
S_Param = design.userParameters.itemByName('Sws2')
S_Param.expression = Sws2
# angleParam = design.userParameters.itemByName('angle2')
# angleParam.expression = angle_ws2
ext_WParam = design.userParameters.itemByName('ext_ws')
ext_WParam.expression = ext_ws2
elif num != 0:
dParam = design.userParameters.itemByName('d_ws2' + '_' + str(num))
dParam.expression = d_ws2
bParam = design.userParameters.itemByName('b_ws2' + '_' + str(num))
bParam.expression = b_ws2
DParam = design.userParameters.itemByName('D_ws2' + '_' + str(num))
DParam.expression = D_ws2
S_Param = design.userParameters.itemByName('Sws2' + '_' + str(num))
S_Param.expression = Sws2
# angleParam = design.userParameters.itemByName('angle2' + '_' + str(num))
# angleParam.expression = angle_ws2
ext_WParam = design.userParameters.itemByName('ext_ws' + '_' + str(num))
ext_WParam.expression = ext_ws2
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))
def stop(context):
ui = None
try:
app = adsk.core.Application.get()
ui = app.userInterface
workSpace = ui.workspaces.itemById('FusionSolidEnvironment')
tbPanels = workSpace.toolbarPanels
tbPanel = tbPanels.itemById('NewPanel')
if tbPanel:
tbPanel.deleteMe()
palette = ui.palettes.itemById('myExport')
if palette:
palette.deleteMe()
except:
if ui:
ui.messageBox('Failed:\n{}'.format(traceback.format_exc()))