1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

pivot-point в центр объекта

Тема в разделе "MAXScript", создана пользователем Anton_S, 20 ноя 2008.

Модераторы: Savin Denis
  1. Anton_S

    Anton_S Пользователь сайта

    С нами с:
    24.12.2005
    Сообщения:
    12
    Симпатии:
    0
    Баллы:
    2
    Я не силен в MaxScript. Есть такой код (см. ниже). Хочу, чтобы pivot-point такого объекта всегда был в центре и чтобы юзер не мог его изменить. Как такое можно сделать?

    Код:
    plugin geometry ODEBox
    name:"Box"
    category:"ODE Shape (Mangalore)"
    classID:#(0x5bfe4c36, 0x4f0521a4)
    extends:box
    replaceUI:false
    invisible:false
    --initialRollupState:0x01
    (
        parameters paramODEBox rollout: rODEBox
        (
            materialIndex type:#integer ui:ddlMaterials default:1
    		isStatic type:#boolean ui:cbIsStatic default:false
        )
    
        rollout rODEBox "ODE Box"
        (
            label lbMaterial "Material(Density):" align:#left
            dropdownlist ddlMaterials items:g_materials align:#left
            checkbox cbIsStatic "static" checked:false
        )
    
        on attachedToNode node do
        (
            node.xray = true
            node.wirecolor = red
        )
    )
    
     
  2. Savin Denis vip

    Savin Denis Moderator Команда форума

    С нами с:
    05.05.2005
    Сообщения:
    1.633
    Симпатии:
    0
    Баллы:
    210
    Можно что то вроде этого сделать - Pivot будет ресетиться при селекшене. Хотя в максе изначально нет методов чтобы лочить Pivot. По этому тут нужно возиться с каллбэками. Что некамильфо вобщем и целом.
    Код:
    plugin geometry ODEBox 
    name:"ODEBox" 
    category:"ODE Shape (Mangalore)" 
    classID:#(0x5bfe4c36, 0x4f0521a4) 
    extends:box 
    replaceUI:false 
    invisible:false 
    --initialRollupState:0x01 
    ( 
    parameters paramODEBox rollout: rODEBox 
    ( 
    materialIndex type:#integer ui:ddlMaterials default:1 
    isStatic type:#boolean ui:cbIsStatic default:false 
    ) 
    
    rollout rODEBox "ODE Box" 
    ( 
    label lbMaterial "Material(Density):" align:#left 
    dropdownlist ddlMaterials items:g_materials align:#left 
    checkbox cbIsStatic "static" checked:false 
    ) 
    
    
    on attachedToNode node do 
    ( 
    node.xray = true 
    node.wirecolor = red 
    when select node change obj do try( CenterPivot obj )catch()
    ) 
    ) 
    PS По щючему хотению )
     
  3. Anton_S

    Anton_S Пользователь сайта

    С нами с:
    24.12.2005
    Сообщения:
    12
    Симпатии:
    0
    Баллы:
    2
    Спасибо. Меня такой вариант решения вполне устраивает.
     
Модераторы: Savin Denis

Поделиться этой страницей