Продолжая вчерашнюю тему наваял еще один скриптик вечером. Суть - пробивать оконный проем в стене ) Специально для тех, кто дизайнит без архикада комнаты с одним окном в стенке. :-)
Тут, думаю, все понятно и так:
в первой секции параметры стены, во второй - окна, в третьей расстояние до проема от пола и от угла стены. Стенка появляется в Left вьюпорте, торцом прижата к началу координат.
Как бы это и не особо нужно, но ведь надо какие-то задачи ставить для скриптов. Да и, честно говоря, приходилось еще до арчика лепить подобное булином. Муть. Хотя все знают, что буль в моделях - моветон. В общем, арчик спас ситуацию =)
Настройки, приведенные внизу - дело личное. Так, для справки.
Вот до этого места дописал и чуть спать не лег. Собственно, а где тогда скрипт был бы? Но я одумался:
rollout unnamedRollout "Untitled" width:212 height:527
(
GroupBox grp1 "Wall" pos:[15,20] width:180 height:100
button btn1 "Make it" pos:[86,357] width:108 height:23
label lbl4 "cm" pos:[170,50] width:20 height:16
spinner spn1 "" pos:[100,50] width:60 height:16 range:[1,1000,500]
label lbl1 "wall length" pos:[30,50] width:60 height:16
label lbl5 "wall width" pos:[30,70] width:60 height:16
spinner spn4 "" pos:[100,70] width:60 height:16 range:[1,1000,40]
label lbl9 "wall height" pos:[30,90] width:60 height:16
spinner spn7 "" pos:[100,90] width:60 height:16 enabled:true range:[1,1000,280]
GroupBox grp15 "Window" pos:[15,150] width:180 height:80
label lbl18 "wind length" pos:[30,180] width:60 height:16
label lbl19 "wind width" pos:[30,200] width:60 height:16
spinner spn14 "" pos:[100,180] width:60 height:16 range:[1,1000,100]
spinner spn15 "" pos:[100,200] width:60 height:16 range:[1,1000,150]
label lbl21 "cm" pos:[170,180] width:20 height:16
GroupBox grp18 "Window distanse" pos:[15,260] width:180 height:80
label lbl29 "from flap" pos:[30,290] width:60 height:16
label lbl30 "from corner" pos:[30,310] width:60 height:16
spinner spn21 "" pos:[100,290] width:60 height:16 range:[1,1000,90]
spinner spn22 "" pos:[100,310] width:60 height:16 range:[1,1000,100]
label lbl40 "MY USUAL UNITS SETTINGS:" pos:[15,397] width:181 height:17
label lbl41 "Customize - GridAndSnapSettings: Grid Spacing: 0,002m" pos:[15,419] width:180 height:31
label lbl42 "Customize - UnitsSetup: metric" pos:[15,454] width:180 height:19
label lbl43 "Customize - System Unit Setup: 1,0 unit = centimeters" pos:[15,477] width:180 height:31
on btn1 pressed do
(
walllen = spn1.value
wallwid = spn4.value
wallhei = spn7.value
windlen = spn14.value
windwid = wallwid * 2
windhei = spn15.value
wind_dz = spn21.value
wind_dy = spn22.value
wall = Box lengthsegs:1 widthsegs:1 heightsegs:1 length:walllen width:wallwid height:wallhei mapcoords:on
wind = Box lengthsegs:1 widthsegs:1 heightsegs:1 length:windlen width:windwid height:windhei mapcoords:on
wall.pos.y = walllen/2
wind.pos.y = windlen/2+wind_dy
wind.pos.z = wind_dz
select wall
boolObj.createBooleanObject $
boolObj.SetOperandB $ wind 4 2
)
)
createDialog unnamedRollout width:212 height:527
Комментариев нет:
Отправить комментарий