界面 / DrawCanvas
DrawCanvas Class
UI 画布
Hierarchy
↳
DrawCanvas
Table of contents
Properties
click
Properties
onCustomPropertyChange: Readonly <MulticastDelegate <(path : string , value : unknown , oldValue : unknown ) => void >> client |
---|
监听自定义属性同步事件 |
Accessors
click
Accessors
alignPosition(): Readonly <Vector2 > client |
---|
获取控件的对齐位置,在对齐方式为靠右对齐、靠下对齐、中心对齐时,alignPosition的值与positon不同; |
autoSizeHorizontalEnable(): boolean client |
获取是否自动水平设置大小 |
autoSizeVerticalEnable(): boolean client |
获取是否自动垂直设置大小 |
cachedGeometry(): Geometry client |
获取上一次的GetTickSpaceGeometry |
constraints(): Readonly <UIConstraintAnchors > client |
获取控件的布局 |
desiredSize(): Vector2 client |
获取期望大小 |
enable(): boolean client |
是否可用 |
guid(): string client |
获取控件GUID |
isHovered(): boolean client |
是否是hovered |
mouseCursor(): MouseCursor client |
获取控件上光标类型 |
name(): string client |
获取名字 |
paintSpaceGeometry(): Geometry client |
获取最后一次用于渲染Widget的几何信息 |
parent(): Widget client |
获取父节点 |
pivot(): Vector2 client |
获取控件锚点位置,这个属性决定了控件图形与锚点的相对位置;(0,0)时,锚点位于控件左上角;(0.5,0.5)时,锚点位于控件正中心 |
position(): Readonly <Vector2 > client |
获取控件的位置 |
renderOpacity(): number client |
获取渲染透明度 |
renderScale(): Vector2 client |
获取渲染缩放 |
renderShear(): Vector2 client |
获取渲染错切形变 |
renderTransformAngle(): number client |
获取渲染的角度 |
renderTransformPivot(): Vector2 client |
获取渲染锚点 |
size(): Vector2 client |
获取大小 |
tickSpaceGeometry(): Geometry client |
获取最后一次用于驱动Widget Tick的几何信息 |
transform(): Readonly <UITransform > client |
得到控件的大小和位置 |
visibility(): SlateVisibility client |
获取可见性 |
visible(): boolean client |
是否可见 |
zOrder(): number client |
获取zorder |
Methods
clearDraws(): void client |
---|
清除全部绘制 |
drawCubicBezierSpline(p1 : Vector2 , p2 : Vector2 , p3 : Vector2 , p4 : Vector2 , lineData? : DrawDataBase ): number client |
绘制三阶贝塞尔曲线 |
drawCustom(vertex : UIDrawCustomVertex [], index : number [], assetId? : string , drawLayerId? : number ): number client |
自定义绘制图元 |
drawLines(points : Vector2 [], lineData? : DrawDataBase ): number client |
画多段线 |
drawSpline(startPoint : Vector2 , startDirection : Vector2 , endPoint : Vector2 , endDirection : Vector2 , lineData? : DrawDataBase ): number client |
画埃尔米特曲线 |
drawText(text : string , position : Vector2 , fontSize : number , fontColor : any , drawLayerId? : number ): number client |
画文字 |
removeDrawById(Id : number ): void client |
移除指定的绘制图元 |
newObject(parent? : Canvas , inName? : string ): DrawCanvas client |
创建绘画控件 |
click
Methods
addChild(child : Widget ): void client |
---|
添加子节点 |
clone(position : Vector2 , Parent? : Widget ): Widget client |
克隆UI控件及其子节点到指定父控件位置(默认到其父节点) |
destroyObject(): void client |
立刻移除并销毁 不可以在使用 |
equal(that : Widget ): boolean client |
判断是不是同一个对象 |
findChildByPath(inPath : string ): Widget client |
通过相对路径查找节点 |
getChildAt(index : number ): Widget client |
获取第几位子节点 |
getChildByName<T : extends Widget <T >>(name : string ): T : extends Widget <T > client |
通过名字查找节点 |
getChildrenCount(): number client |
获取子节点数量 |
getCustomProperties(): string [] client |
获取所有自定义属性 |
getCustomProperty<T : extends CustomPropertyType >(propertyName : string ): T : extends CustomPropertyType client |
获取自定义属性 |
getCustomPropertyChangeDelegate(property ): Readonly <MulticastDelegate <(path : string , value : unknown , oldValue : unknown ) => void >> client |
给定对象属性修改时触发的事件代理 |
invalidateLayoutAndVolatility(): void client |
立刻触发重新渲染的和排布计算 |
removeAllChildren(): void client |
清除所有子节点,会销毁UI无法再使用 |
removeChild(child : Widget ): void client |
移除节点,会销毁UI无法在使用 |
removeChildAt(index : number ): void client |
移除第几个节点,会销毁UI无法再使用 |
removeObject(): void client |
立刻移除并添加到根节点 可以再使用 |
serialize(): string client |
序列化UI控件 |
setCustomProperty(propertyName : string , value : undefined CustomPropertyType ): void client |
设置自定义属性 |
deserialize(Data : string , Parent? : Widget ): Widget client |
反序列化UI |
Properties
Accessors
Methods
clearDraws
• clearDraws(): void
client
清除全部绘制
drawCubicBezierSpline
• drawCubicBezierSpline(p1
, p2
, p3
, p4
, lineData?
): number
client
绘制三阶贝塞尔曲线
Parameters
p1 Vector2 | 第一个点 |
---|---|
p2 Vector2 | 第二个点 |
p3 Vector2 | 第三个点 |
p4 Vector2 | 第四个点 |
lineData? DrawDataBase | 绘制图元信息 |
Returns
number | 返回drawId |
---|
drawCustom
• drawCustom(vertex
, index
, assetId?
, drawLayerId?
): number
client
自定义绘制图元
Parameters
vertex UIDrawCustomVertex [] | 顶点图元数据信息 |
---|---|
index number [] | 顶点图元索引信息 |
assetId? string | - |
drawLayerId? number | - |
Returns
number |
---|
drawLines
• drawLines(points
, lineData?
): number
client
画多段线
Parameters
points Vector2 [] | 线的各个点坐标 |
---|---|
lineData? DrawDataBase | 绘制图元信息 |
Returns
number | 返回drawId |
---|
drawSpline
• drawSpline(startPoint
, startDirection
, endPoint
, endDirection
, lineData?
): number
client
画埃尔米特曲线
Parameters
startPoint Vector2 | 开始线位置 |
---|---|
startDirection Vector2 | 开始切线方向 |
endPoint Vector2 | 结束点位置 |
endDirection Vector2 | 结束点切线方向 |
lineData? DrawDataBase | 绘制图元信息 |
Returns
number | 返回drawId |
---|
drawText
• drawText(text
, position
, fontSize
, fontColor
, drawLayerId?
): number
client
画文字
Parameters
text string | - |
---|---|
position Vector2 | 位置 |
fontSize number | 字体大小 |
fontColor any | 颜色 |
drawLayerId? number | 绘制层级 |
Returns
number |
---|
removeDrawById
• removeDrawById(Id
): void
client
移除指定的绘制图元
Parameters
Id number | 指定的绘制图元Id |
---|
newObject
• Static
newObject(parent?
, inName?
): DrawCanvas
client
创建绘画控件
Parameters
parent? Canvas | 创建控件的外parent对象 default: null |
---|---|
inName? string | 创建控件的名称 default:null range:设置合理的名称即可 |
Returns
DrawCanvas | 返回创建的对象 |
---|
当parent和inName与已有的对象相同时,旧的对象会被销毁