blockRendering.Drawer 类
一个根据给定渲染信息绘制块的对象。
Signature:
export declare class Drawer
构造函数
构造函数 | 修饰符 | 说明 |
---|---|---|
(构造函数)(block, info) | 构造 Drawer 类的新实例 |
属性
属性 | 修饰符 | 类型 | 说明 |
---|---|---|---|
block_ | BlockSvg | ||
constants_ | protected |
ConstantProvider | |
info_ | RenderInfo | ||
inlinePath_ | 字符串 | ||
outlinePath_ | 字符串 | ||
topLeft_ | 坐标 |
方法
方法 | 修饰符 | 说明 |
---|---|---|
draw() | 将砌块绘制到工作区。这里是“绘图”表示设置 SVG 路径元素并在屏幕上移动字段、图标和连接。 路径片段被推送到“steps”数组中,这些“路段”数组随后与空格连接,并直接在块上设置。这可保证这些步骤用空格分隔以提高可读性,但这并不是强制性要求。 |
|
drawBottom_() | protected |
为砌块的底部边缘添加台阶,可能包括用于下一个连接的凹口。 |
drawConnectionHighlightPath(measurable) | 返回路径以突出显示指定连接。 | |
drawInlineInput_(input) | protected |
为内嵌输入添加步骤。 |
drawInternals_() | protected |
绘制块的内部:内嵌输入、字段和图标。这些代码并不依赖于外部的放置路径。 |
drawJaggedEdge_(row) | protected |
为收起的块上行锯齿状的边添加阶梯。 |
drawLeft_() | protected |
为代码块左侧添加步骤,其中可能包括输出连接 |
drawOutline_() | protected |
创建砌块的轮廓。这是一条连续的路径。 |
drawRightSideRow_(row) | protected |
为没有值或语句输入连接的行的右侧添加步骤。 |
drawStatementInput_(row) | protected |
为语句输入添加步骤。 |
drawTop_() | protected |
为砌块的顶角添加台阶,将帽子和圆角等细节考虑在内。 |
drawValueInput_(row) | protected |
为外部值输入添加步骤,呈现为块侧面的一个凹口。 |
layoutField_(fieldInfo) | protected |
将字段或图标的新位置推送到其 SVG 根节点。 |
positionExternalValueConnection_(row) | protected |
将连接放置在外部值输入上,同时考虑 RTL,以及父块和子块之间的小间隙(允许父块的深色路径显示出来)。 |
positionInlineInputConnection_(input) | protected |
将连接放在内嵌值输入上,同时考虑 RTL 以及父块和子块之间的小间隙,以便让父块的暗路径显示出来。 |
positionNextConnection_() | protected |
在块上放置下一个连接。 |
positionOutputConnection_() | protected |
在块上定位输出连接。 |
positionPreviousConnection_() | protected |
将上一个连接放置在一个块上。 |
positionStatementInputConnection_(row) | protected |
在语句输入上定位连接,同时考虑 RTL 以及父块和子块之间的小间隔,以便让父块的暗路径显示出来。 |
recordSizeOnBlock_() | protected |
将大小信息重新保存到块中。大多数渲染信息在渲染结束时可能会被丢弃。任何需要保留的内容都应在此函数中设置。 |
updateConnectionHighlights() | protected |
更新路径对象,以反映块上的哪些连接突出显示。 |