接口 IW2SWidget
- 所有已知实现类:
World2ScreenScreen,World2ScreenWidget
public interface IW2SWidget
IW2SWidget 接口定义了一个用于屏幕空间渲染的组件。
提供了与组件的状态、位置、渲染和交互相关的方法。
-
方法概要
修饰符和类型方法说明voidcalculateRenderScale(float distance) 根据距离计算渲染缩放比例。booleanclick(int button) 处理鼠标点击事件。getId()获取组件的唯一标识符。floatgetScale()获取组件的缩放比例。voidgetWorldPos(org.joml.Vector3f out) 获取组件的世界坐标。floatgetX()获取组件的屏幕 X 坐标。floatgetXO()获取组件的屏幕 X 偏移量。floatgetY()获取组件的屏幕 Y 坐标。floatgetYO()获取组件的屏幕 Y 偏移量。boolean检查组件是否已计算。boolean检查组件是否在屏幕内。boolean检查组件是否可被选中。boolean限制组件在屏幕范围内。voidrender(net.minecraft.client.gui.GuiGraphics guiGraphics, boolean highlight, float value, net.minecraft.client.DeltaTracker deltaTracker) 渲染组件。voidresize()调整组件的大小。booleanscroll(double mouseX, double mouseY, double scrollX, double scrollY) 处理鼠标滚动事件。void标记组件为已计算。voidsetInScreen(boolean inScreen) 设置组件是否在屏幕内。void标记组件为已移除。voidsetScreenPos(float x, float y) 设置组件的屏幕坐标。voidsetX(float x) 设置组件的屏幕 X 坐标。voidsetXO(float xO) 设置组件的屏幕 X 偏移量。voidsetY(float y) 设置组件的屏幕 Y 坐标。voidsetYO(float yO) 设置组件的屏幕 Y 偏移量。boolean检查组件是否应该被移除。boolean检查组件是否标记为移除。boolean检查组件是否应该渲染。boolean检查组件是否应该跳过某些处理。boolean检查组件是否应该平滑位置变化。void更新组件的透明度。
-
方法详细资料
-
getId
UUID getId()获取组件的唯一标识符。- 返回:
- 组件的 UUID
-
isComputed
boolean isComputed()检查组件是否已计算。- 返回:
- 如果已计算则返回 true,否则返回 false
-
isInScreen
boolean isInScreen()检查组件是否在屏幕内。- 返回:
- 如果在屏幕内则返回 true,否则返回 false
-
isSelectable
boolean isSelectable()检查组件是否可被选中。- 返回:
- 如果可选中则返回 true,否则返回 false
-
shouldRender
boolean shouldRender()检查组件是否应该渲染。- 返回:
- 如果应该渲染则返回 true,否则返回 false
-
shouldBeRemoved
boolean shouldBeRemoved()检查组件是否应该被移除。- 返回:
- 如果应该被移除则返回 true,否则返回 false
-
shouldRemove
boolean shouldRemove()检查组件是否标记为移除。- 返回:
- 如果标记为移除则返回 true,否则返回 false
-
shouldSmoothPosition
boolean shouldSmoothPosition()检查组件是否应该平滑位置变化。- 返回:
- 如果应该平滑位置变化则返回 true,否则返回 false
-
shouldSkip
boolean shouldSkip()检查组件是否应该跳过某些处理。- 返回:
- 如果应该跳过则返回 true,否则返回 false
-
click
boolean click(int button) 处理鼠标点击事件。- 参数:
button- 鼠标按键- 返回:
- 如果事件被处理则返回 true,否则返回 false
-
scroll
boolean scroll(double mouseX, double mouseY, double scrollX, double scrollY) 处理鼠标滚动事件。- 参数:
mouseX- 鼠标的 X 坐标mouseY- 鼠标的 Y 坐标scrollX- 滚动的 X 方向增量scrollY- 滚动的 Y 方向增量- 返回:
- 如果事件被处理则返回 true,否则返回 false
-
limitInScreen
boolean limitInScreen()限制组件在屏幕范围内。- 返回:
- 如果限制成功则返回 true,否则返回 false
-
resize
void resize()调整组件的大小。 -
calculateRenderScale
void calculateRenderScale(float distance) 根据距离计算渲染缩放比例。- 参数:
distance- 距离值
-
updateAlpha
void updateAlpha()更新组件的透明度。 -
getWorldPos
void getWorldPos(org.joml.Vector3f out) 获取组件的世界坐标。- 参数:
out- 用于存储世界坐标的 Vector3f 对象
-
setRemoved
void setRemoved()标记组件为已移除。 -
setInScreen
void setInScreen(boolean inScreen) 设置组件是否在屏幕内。- 参数:
inScreen- 是否在屏幕内
-
setComputed
void setComputed()标记组件为已计算。 -
setScreenPos
void setScreenPos(float x, float y) 设置组件的屏幕坐标。- 参数:
x- 屏幕 X 坐标y- 屏幕 Y 坐标
-
getX
float getX()获取组件的屏幕 X 坐标。- 返回:
- 屏幕 X 坐标
-
getY
float getY()获取组件的屏幕 Y 坐标。- 返回:
- 屏幕 Y 坐标
-
getXO
float getXO()获取组件的屏幕 X 偏移量。- 返回:
- 屏幕 X 偏移量
-
getYO
float getYO()获取组件的屏幕 Y 偏移量。- 返回:
- 屏幕 Y 偏移量
-
getScale
float getScale()获取组件的缩放比例。- 返回:
- 缩放比例
-
setX
void setX(float x) 设置组件的屏幕 X 坐标。- 参数:
x- 屏幕 X 坐标
-
setY
void setY(float y) 设置组件的屏幕 Y 坐标。- 参数:
y- 屏幕 Y 坐标
-
setXO
void setXO(float xO) 设置组件的屏幕 X 偏移量。- 参数:
xO- 屏幕 X 偏移量
-
setYO
void setYO(float yO) 设置组件的屏幕 Y 偏移量。- 参数:
yO- 屏幕 Y 偏移量
-
render
void render(net.minecraft.client.gui.GuiGraphics guiGraphics, boolean highlight, float value, net.minecraft.client.DeltaTracker deltaTracker) 渲染组件。- 参数:
guiGraphics- 渲染上下文highlight- 是否高亮显示value- 渲染附加值deltaTracker- 时间增量跟踪器
-