# Пользовательские дополнения

На главную

## AddWidget3D( self, widget, size, pos, autoResizeX, autoResizeY, cutDistance, bindPointY, minSizeLimit, maxSizeLimit )

Добавляет указанный 2D-контрол как Widget3D в контрол типа Control3DSafe. Добавляемый 2D-контрол или его дочерние контролы не могут сами быть Control3DSafe. Можно задавать оба 3D-размера вручную, либо один из них может рассчитываться автоматически, исходя из размера исходного 2D-контрола.

    -- класс
    Control3DSafe

    -- семантика
    function AddWidget3D( self, widget, size, pos, autoResizeX, autoResizeY, cutDistance, bindPointY, minSizeLimit, maxSizeLimit )

    -- входные параметры:
    widget: WidgetSafe - 2D-контрол, который добавляется как Widget3D
    size: table с полями:
      sizeX: number - размер контрола-3D по X в метрах
      sizeY: number - размер контрола-3D по Y в метрах
    pos: GamePosition - позиция контрола-3D на карте (новая версия GamePosition)
    autoResizeX: boolean - использовать ли автоматический расчет ширины объекта
    autoResizeY: boolean - использовать ли автоматический расчет высоты объекта
    cutDistance: number (float) - расстояние (в метрах), на котором перестает показывать контрол
    bindPointY: number (enum WIDGET_3D_BIND_POINT_...) - точка привязки контрола-3D по y
    minSizeLimit: number (float) - коэффициент, задающий минимальный абсолютный размер контрола (его реальный размер в пикселах на экране), при достижении этого размера контрол перестает уменьшаться (при отдалении объекта), абсолютный минимальный размер контрола - его виртуальный размер, умноженный на данный коэффициент с учетом отношения реального и виртуального размеров экранов
    maxSizeLimit: number (float) - коэффициент максимального размера контрола, аналогичен минимальному

    enum WIDGET_3D_BIND_POINT_...:
    WIDGET_3D_BIND_POINT_LOW - привязка наименьшей координаты (верхний край)
    WIDGET_3D_BIND_POINT_CENTER - привязка центра
    WIDGET_3D_BIND_POINT_HIGH - привязка наибольшей кооординаты (нижний край)

    -- возвращаемое значение:
    нет

    -- пример
    wtControl3D:AddWidget3D( widget, size, pos, true, false, 100.0, WIDGET_3D_BIND_POINT_HIGH, 0.5, 1.5 )

#### Search: "CategoryLuaApi" "CategoryControl3D"

CategoryControl3D
EnumAttachedObjectPos
EventCannotAttachWidget3D
FunctionChangeRoomRemoveScene
FunctionChangeRoomSetScene
FunctionControl3DAddWidget3D
FunctionControl3DRemoveAllWidget3D
FunctionControl3DRemoveWidget3D
FunctionControl3DSetWidget3DPos
FunctionControl3DSetWidget3DSize
FunctionMissionSetCharacterScene
FunctionMissionSetMountScene
FunctionObjectAttachWidget3D
FunctionObjectDetachAllWidgets3D
FunctionObjectDetachWidget3D
FunctionObjectSetControl3DForProjected
FunctionRemortCreationRemoveScene
FunctionRemortCreationSetScene

CategoryLuaApi CategoryFunction CategoryControl3D

На главную